X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Focaml%2Fcic_transformations%2FtacticAst.ml;h=e4f454ed61fd4cd3a0e80486470c01669b114544;hb=08791e80816548121e81e04d3ead8c9a5171d033;hp=3f6e74346ec04e98e1bedb0da085dffd7442fb1e;hpb=ebaf3deffea9ac78a2b8b2a6c128cc24ad8459ef;p=helm.git diff --git a/helm/ocaml/cic_transformations/tacticAst.ml b/helm/ocaml/cic_transformations/tacticAst.ml index 3f6e74346..e4f454ed6 100644 --- a/helm/ocaml/cic_transformations/tacticAst.ml +++ b/helm/ocaml/cic_transformations/tacticAst.ml @@ -45,12 +45,12 @@ type ('term, 'ident) tactic = | DecideEquality of loc | Decompose of loc * 'term | Discriminate of loc * 'term - | Elim of loc * 'term * 'term option (* what to elim, which principle to use *) - | ElimType of loc * 'term + | Elim of loc * 'term * 'term option * int option * 'ident list + | ElimType of loc * 'term * 'term option * int option * 'ident list | Exact of loc * 'term | Exists of loc | Fail of loc - | Fold of loc * reduction_kind * ('term, 'ident) pattern + | Fold of loc * reduction_kind * 'term * ('term, 'ident) pattern | Fourier of loc | FwdSimpl of loc * string * 'ident list | Generalize of loc * ('term, 'ident) pattern * 'ident option @@ -71,13 +71,7 @@ type ('term, 'ident) tactic = | Symmetry of loc | Transitivity of loc * 'term -type thm_flavour = - [ `Definition - | `Fact - | `Lemma - | `Remark - | `Theorem - ] +type thm_flavour = Cic.object_flavour (** * true means inductive, false coinductive *) @@ -126,6 +120,8 @@ type obj = (string * CicAst.term) list type ('term,'obj) command = + | Default of loc * string * UriManager.uri list + | Include of loc * string | Set of loc * string * string | Drop of loc | Qed of loc @@ -143,9 +139,10 @@ type ('term, 'ident) tactical = | Repeat of loc * ('term, 'ident) tactical | Seq of loc * ('term, 'ident) tactical list (* sequential composition *) | Then of loc * ('term, 'ident) tactical * ('term, 'ident) tactical list - | Tries of loc * ('term, 'ident) tactical list + | First of loc * ('term, 'ident) tactical list (* try a sequence of loc * tacticals until one succeeds, fail otherwise *) | Try of loc * ('term, 'ident) tactical (* try a tactical and mask failures *) + | Solve of loc * ('term, 'ident) tactical list type ('term, 'obj, 'ident) code =