]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/components/tactics/declarative.mli
changed auto_tac params type and all derivate tactics like applyS and
[helm.git] / helm / software / components / tactics / declarative.mli
index 2e9d506ca8fb5cc83d5b8a463566d2c177a0f725..08852c79cf70334bb4f9509e33ec0e37eca6f0e7 100644 (file)
  *)
 
 val assume : string -> Cic.term -> ProofEngineTypes.tactic
-val suppose : Cic.term -> string -> ProofEngineTypes.tactic
-val by_term_we_proved : Cic.term -> Cic.term -> string -> ProofEngineTypes.tactic
-val bydone : Cic.term -> ProofEngineTypes.tactic
-val we_need_to_prove : Cic.term -> string -> ProofEngineTypes.tactic
+
+val suppose : Cic.term -> string -> Cic.term option -> ProofEngineTypes.tactic
+
+val by_term_we_proved :
+ dbd:HSql.dbd -> universe:Universe.universe -> Cic.term option -> Cic.term ->
+  string option -> Cic.term option -> ProofEngineTypes.tactic
+
+val bydone : dbd:HSql.dbd -> universe:Universe.universe -> Cic.term option ->
+  ProofEngineTypes.tactic
+
+val we_need_to_prove :
+ Cic.term -> string option -> Cic.term option -> ProofEngineTypes.tactic
+
+val we_proceed_by_cases_on : Cic.term -> Cic.term -> ProofEngineTypes.tactic
+
+val we_proceed_by_induction_on : Cic.term -> Cic.term -> ProofEngineTypes.tactic
+
+val byinduction : Cic.term -> string -> ProofEngineTypes.tactic
+
+val thesisbecomes : Cic.term -> ProofEngineTypes.tactic
+
+val case : string -> params:(string * Cic.term) list -> ProofEngineTypes.tactic
+
+val existselim :
+  dbd:HSql.dbd -> universe:Universe.universe ->
+ Cic.term option -> string -> Cic.term -> string -> Cic.lazy_term -> ProofEngineTypes.tactic
+
+val andelim :
+ Cic.term -> string -> Cic.term -> string -> Cic.term -> ProofEngineTypes.tactic
+
+val rewritingstep :
+ dbd:HSql.dbd -> universe:Universe.universe ->
+  (string option * Cic.term) option -> Cic.term ->
+   [ `Term of Cic.term | `Auto of Auto.auto_params
+   | `Proof  | `SolveWith of Cic.term] ->
+    bool (* last step *) -> ProofEngineTypes.tactic