]> matita.cs.unibo.it Git - helm.git/blobdiff - components/tactics/declarative.mli
"by j let x : T such that P(x)" generalized to allow arbitrary justifications.
[helm.git] / components / tactics / declarative.mli
index 64147b778d55a4c90f9bda0ffef6243d1ea4515e..a42faac4b599b2cdd361159417146fc20eb5573e 100644 (file)
@@ -37,6 +37,8 @@ val bydone : dbd:HMysql.dbd -> universe:Universe.universe -> Cic.term option ->
 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
@@ -46,11 +48,14 @@ val thesisbecomes : Cic.term -> ProofEngineTypes.tactic
 val case : string -> params:(string * Cic.term) list -> ProofEngineTypes.tactic
 
 val existselim :
- Cic.term -> string -> Cic.term -> string -> Cic.term -> ProofEngineTypes.tactic
+  dbd:HMysql.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:HMysql.dbd -> universe:Universe.universe -> Cic.term option -> Cic.term ->
-  [ `Term of Cic.term | `Auto of (string * string) list ] -> Cic.name option -> ProofEngineTypes.tactic
+ dbd:HMysql.dbd -> universe:Universe.universe ->
+  (string option * Cic.term) option -> Cic.term ->
+   [ `Term of Cic.term | `Auto of (string * string) list ] ->
+    bool (* last step *) -> ProofEngineTypes.tactic