X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Focaml%2Fcic_notation%2FgrafiteAst.ml;h=fb654529b8c354432493c422e4632fc5be7a271d;hb=95977594b05ba0320784a445d480b3fe11ef4e55;hp=7d09e2d6a5933c53c59035d6be3764a219205987;hpb=cd602bc57c4ceba6188b4cac0dbf5dad8f5df7b6;p=helm.git diff --git a/helm/ocaml/cic_notation/grafiteAst.ml b/helm/ocaml/cic_notation/grafiteAst.ml index 7d09e2d6a..fb654529b 100644 --- a/helm/ocaml/cic_notation/grafiteAst.ml +++ b/helm/ocaml/cic_notation/grafiteAst.ml @@ -24,17 +24,22 @@ *) type direction = [ `LeftToRight | `RightToLeft ] -type reduction_kind = [ `Reduce | `Simpl | `Whd | `Normalize ] +type 'term reduction_kind = + [ `Normalize | `Reduce | `Simpl | `Unfold of 'term option | `Whd ] type loc = CicNotationPt.location type ('term, 'ident) pattern = 'term option * ('ident * 'term) list * 'term +type ('term, 'ident) type_spec = + | Ident of 'ident + | Type of UriManager.uri * int + type ('term, 'ident) tactic = | Absurd of loc * 'term | Apply of loc * 'term | Assumption of loc - | Auto of loc * int option * int option (* depth, width *) + | Auto of loc * int option * int option * string option (* depth, width, paramodulation ALB *) | Change of loc * ('term,'ident) pattern * 'term | Clear of loc * 'ident | ClearBody of loc * 'ident @@ -43,14 +48,14 @@ type ('term, 'ident) tactic = | Contradiction of loc | Cut of loc * 'ident option * 'term | DecideEquality of loc - | Decompose of loc * 'term + | Decompose of loc * ('term, 'ident) type_spec list * 'ident * 'ident list | Discriminate 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 * ('term, 'ident) pattern + | Fold of loc * 'term reduction_kind * 'term * ('term, 'ident) pattern | Fourier of loc | FwdSimpl of loc * string * 'ident list | Generalize of loc * ('term, 'ident) pattern * 'ident option @@ -61,7 +66,7 @@ type ('term, 'ident) tactic = | LApply of loc * int option * 'term list * 'term * 'ident option | Left of loc | LetIn of loc * 'term * 'ident - | Reduce of loc * reduction_kind * ('term, 'ident) pattern + | Reduce of loc * 'term reduction_kind * ('term, 'ident) pattern | Reflexivity of loc | Replace of loc * ('term, 'ident) pattern * 'term | Rewrite of loc * direction * 'term * ('term, 'ident) pattern @@ -133,9 +138,9 @@ type ('term,'obj) command = | Alias of loc * alias_spec (** parameters, name, type, fields *) | Obj of loc * 'obj - | Notation of loc * CicNotationPt.term * Gramext.g_assoc option * int option * - CicNotationPt.term - (* level 1 pattern, associativity, precedence, level 2 pattern *) + | Notation of loc * direction option * CicNotationPt.term * Gramext.g_assoc * + int * CicNotationPt.term + (* direction, l1 pattern, associativity, precedence, l2 pattern *) | Interpretation of loc * string * (string * CicNotationPt.argument_pattern list) * CicNotationPt.cic_appl_pattern