X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fcomponents%2Facic_procedural%2FproceduralTypes.mli;h=969492a627bd655b63adea098fcdd020cfccf202;hb=57c7d6ef239b4c2b070721715887684adf41159c;hp=9659a94ecca3ab9ae514d50244bfdf3708cdd495;hpb=a9cf292e7e406a8a2cd88b8f5f84ff2d59bea5e4;p=helm.git diff --git a/helm/software/components/acic_procedural/proceduralTypes.mli b/helm/software/components/acic_procedural/proceduralTypes.mli index 9659a94ec..969492a62 100644 --- a/helm/software/components/acic_procedural/proceduralTypes.mli +++ b/helm/software/components/acic_procedural/proceduralTypes.mli @@ -33,34 +33,53 @@ val mk_arel: int -> string -> Cic.annterm (****************************************************************************) -type name = string +type flavour = Cic.object_flavour +type name = string option +type hyp = string type what = Cic.annterm type how = bool type using = Cic.annterm type count = int type note = string -type where = (name * name) option +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 + | 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 - | ClearBody of name * 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, name) GrafiteAst.statement list -> + (what, inferred, [> `Whd] as 'b, what CicNotationPt.obj, hyp) GrafiteAst.statement list -> step list -> - (what, inferred, 'b, what CicNotationPt.obj, name) GrafiteAst.statement list + (what, inferred, 'b, what CicNotationPt.obj, hyp) GrafiteAst.statement list val count_steps: int -> step list -> int + +val count_nodes: + int -> step list -> int + +val note_of_step: + step -> note