]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/components/acic_procedural/proceduralTypes.mli
- library/list/list.ma: unused code commented
[helm.git] / helm / software / components / acic_procedural / proceduralTypes.mli
index cc5d75caf2918cec3f10beffe680905441b135eb..34c7ba670216e332a02711e7b0c112d67a7991e2 100644 (file)
@@ -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,28 @@ 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 step = Note of note 
-          | Theorem of name * what * 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
          | 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 +74,9 @@ val render_steps:
 
 val count_steps:
    int -> step list -> int
+
+val count_nodes:
+   int -> step list -> int
+
+val note_of_step:
+   step -> note