X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fcomponents%2Facic_procedural%2FproceduralTypes.mli;h=969492a627bd655b63adea098fcdd020cfccf202;hb=63b86fce8a75490b957e7301517b9006f58321b6;hp=cc5d75caf2918cec3f10beffe680905441b135eb;hpb=1acfe506c30e7fcc9d6e427d2523130c371a1159;p=helm.git diff --git a/helm/software/components/acic_procedural/proceduralTypes.mli b/helm/software/components/acic_procedural/proceduralTypes.mli index cc5d75caf..969492a62 100644 --- a/helm/software/components/acic_procedural/proceduralTypes.mli +++ b/helm/software/components/acic_procedural/proceduralTypes.mli @@ -33,6 +33,7 @@ val mk_arel: int -> string -> Cic.annterm (****************************************************************************) +type flavour = Cic.object_flavour type name = string option type hyp = string type what = Cic.annterm @@ -43,21 +44,31 @@ type note = string type where = (hyp * name) option type inferred = Cic.annterm type pattern = Cic.annterm +type body = Cic.annterm option +type types = Cic.anninductiveType list +type lpsno = int +type fields = (string * bool * int) list type step = Note of note - | Theorem of name * what * note + | Record of types * lpsno * fields * note + | Inductive of types * lpsno * note + | Statement of flavour * name * what * body * note | Qed of note | Id of note + | Exact of what * note | Intros of count option * name list * note | Cut of name * what * note | LetIn of name * what * note + | LApply of name * what * note | Rewrite of how * what * where * pattern * note | Elim of what * using option * pattern * note + | Cases of what * pattern * note | Apply of what * note | Change of inferred * what * where * pattern * note | Clear of hyp list * note | ClearBody of hyp * note | Branch of step list list * note + | Reflexivity of note val render_steps: (what, inferred, [> `Whd] as 'b, what CicNotationPt.obj, hyp) GrafiteAst.statement list -> @@ -66,3 +77,9 @@ val render_steps: val count_steps: int -> step list -> int + +val count_nodes: + int -> step list -> int + +val note_of_step: + step -> note