]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/ocaml/tactics/tactics.mli
ocaml 3.09 transition
[helm.git] / helm / ocaml / tactics / tactics.mli
index 9e5a4ce47fa686bdb57de1918bde1c37dfde61db..6d524093569a91663c8f57ec091286a756e31350 100644 (file)
@@ -2,11 +2,16 @@
 val absurd : term:Cic.term -> ProofEngineTypes.tactic
 val apply : term:Cic.term -> ProofEngineTypes.tactic
 val assumption : ProofEngineTypes.tactic
-val auto : ?num:int option -> Mysql.dbd -> ProofEngineTypes.tactic
-val auto_new :
+val auto :
   ?depth:int ->
-  ?width:int -> dbd:Mysql.dbd -> unit -> ProofEngineTypes.tactic
-val change : what:Cic.term -> with_what:Cic.term -> ProofEngineTypes.tactic
+  ?width:int ->
+  ?paramodulation:string ->
+  ?full:string -> dbd:HMysql.dbd -> unit -> ProofEngineTypes.tactic
+val change :
+  pattern:ProofEngineTypes.pattern ->
+  ProofEngineTypes.lazy_term -> ProofEngineTypes.tactic
+val clear : hyp:string -> ProofEngineTypes.tactic
+val clearbody : hyp:string -> ProofEngineTypes.tactic
 val compare : term:Cic.term -> ProofEngineTypes.tactic
 val constructor : n:int -> ProofEngineTypes.tactic
 val contradiction : ProofEngineTypes.tactic
@@ -15,27 +20,34 @@ val cut :
   Cic.term -> ProofEngineTypes.tactic
 val decide_equality : ProofEngineTypes.tactic
 val decompose :
-  ?uris_choice_callback:((UriManager.uri * int *
-                          (UriManager.uri * Cic.term) list)
-                         list ->
-                         (UriManager.uri * int *
-                          (UriManager.uri * Cic.term) list)
-                         list) ->
-  Cic.term -> ProofEngineTypes.tactic
+  ?mk_fresh_name_callback:ProofEngineTypes.mk_fresh_name_type ->
+  ?user_types:(UriManager.uri * int) list ->
+  dbd:HMysql.dbd -> string -> ProofEngineTypes.tactic
 val discriminate : term:Cic.term -> ProofEngineTypes.tactic
-val elim_intros : term:Cic.term -> ProofEngineTypes.tactic
-val elim_intros_simpl : term:Cic.term -> ProofEngineTypes.tactic
-val elim_type : term:Cic.term -> ProofEngineTypes.tactic
+val elim_intros :
+  ?mk_fresh_name_callback:ProofEngineTypes.mk_fresh_name_type ->
+  ?depth:int -> ?using:Cic.term -> Cic.term -> ProofEngineTypes.tactic
+val elim_intros_simpl :
+  ?mk_fresh_name_callback:ProofEngineTypes.mk_fresh_name_type ->
+  ?depth:int -> ?using:Cic.term -> Cic.term -> ProofEngineTypes.tactic
+val elim_type :
+  ?mk_fresh_name_callback:ProofEngineTypes.mk_fresh_name_type ->
+  ?depth:int -> ?using:Cic.term -> Cic.term -> ProofEngineTypes.tactic
 val exact : term:Cic.term -> ProofEngineTypes.tactic
 val exists : ProofEngineTypes.tactic
+val fail : ProofEngineTypes.tactic
 val fold :
-  reduction:(Cic.context -> Cic.term -> Cic.term) ->
-  also_in_hypotheses:bool -> term:Cic.term -> ProofEngineTypes.tactic
+  reduction:ProofEngineTypes.lazy_reduction ->
+  term:ProofEngineTypes.lazy_term ->
+  pattern:ProofEngineTypes.pattern -> ProofEngineTypes.tactic
 val fourier : ProofEngineTypes.tactic
-val fwd_simpl : what:Cic.term -> dbd:Mysql.dbd -> ProofEngineTypes.tactic
+val fwd_simpl :
+  ?mk_fresh_name_callback:ProofEngineTypes.mk_fresh_name_type ->
+  dbd:HMysql.dbd -> string -> ProofEngineTypes.tactic
 val generalize :
   ?mk_fresh_name_callback:ProofEngineTypes.mk_fresh_name_type ->
-  term:Cic.term -> ProofEngineTypes.pattern -> ProofEngineTypes.tactic
+  ProofEngineTypes.pattern -> ProofEngineTypes.tactic
+val id : ProofEngineTypes.tactic
 val injection : term:Cic.term -> ProofEngineTypes.tactic
 val intros :
   ?howmany:int ->
@@ -43,7 +55,8 @@ val intros :
   unit -> ProofEngineTypes.tactic
 val lapply :
   ?mk_fresh_name_callback:ProofEngineTypes.mk_fresh_name_type ->
-  Cic.term -> ProofEngineTypes.tactic
+  ?how_many:int ->
+  ?to_what:Cic.term list -> Cic.term -> ProofEngineTypes.tactic
 val left : ProofEngineTypes.tactic
 val letin :
   ?mk_fresh_name_callback:ProofEngineTypes.mk_fresh_name_type ->
@@ -51,19 +64,15 @@ val letin :
 val normalize : pattern:ProofEngineTypes.pattern -> ProofEngineTypes.tactic
 val reduce : pattern:ProofEngineTypes.pattern -> ProofEngineTypes.tactic
 val reflexivity : ProofEngineTypes.tactic
-val replace : what:Cic.term -> with_what:Cic.term -> ProofEngineTypes.tactic
+val replace :
+  pattern:ProofEngineTypes.pattern ->
+  with_what:ProofEngineTypes.lazy_term -> ProofEngineTypes.tactic
 val rewrite :
-  ?where:ProofEngineTypes.pattern ->
-  term:Cic.term -> unit -> ProofEngineTypes.tactic
-val rewrite_back :
-  ?where:ProofEngineTypes.pattern ->
-  term:Cic.term -> unit -> ProofEngineTypes.tactic
-val rewrite_back_simpl :
-  ?where:ProofEngineTypes.pattern ->
-  term:Cic.term -> unit -> ProofEngineTypes.tactic
+  direction:[ `LeftToRight | `RightToLeft ] ->
+  pattern:ProofEngineTypes.pattern -> Cic.term -> ProofEngineTypes.tactic
 val rewrite_simpl :
-  ?where:ProofEngineTypes.pattern ->
-  term:Cic.term -> unit -> ProofEngineTypes.tactic
+  direction:[ `LeftToRight | `RightToLeft ] ->
+  pattern:ProofEngineTypes.pattern -> Cic.term -> ProofEngineTypes.tactic
 val right : ProofEngineTypes.tactic
 val ring : ProofEngineTypes.tactic
 val set_goal : int -> ProofEngineTypes.tactic
@@ -71,4 +80,7 @@ val simpl : pattern:ProofEngineTypes.pattern -> ProofEngineTypes.tactic
 val split : ProofEngineTypes.tactic
 val symmetry : ProofEngineTypes.tactic
 val transitivity : term:Cic.term -> ProofEngineTypes.tactic
+val unfold :
+  ProofEngineTypes.lazy_term option ->
+  pattern:ProofEngineTypes.pattern -> ProofEngineTypes.tactic
 val whd : pattern:ProofEngineTypes.pattern -> ProofEngineTypes.tactic