(Cic.term * Cic.context * Cic.term) list *
(Cic.term * Cic.context * Cic.term) list
+(* Not primitive, but useful for elim *)
+
+exception AllSelectedTermsMustBeConvertible;;
+
+val generalize_tac:
+ ?mk_fresh_name_callback:ProofEngineTypes.mk_fresh_name_type ->
+ ProofEngineTypes.lazy_pattern ->
+ ProofEngineTypes.tactic
+
(* ALB, needed by the new paramodulation... *)
val apply_with_subst:
term:Cic.term -> ?subst:Cic.substitution -> ?maxmeta:int -> ProofEngineTypes.proof * int ->
val apply_tac:
term: Cic.term -> ProofEngineTypes.tactic
+val applyP_tac: (* apply for procedural reconstruction *)
+ term: Cic.term -> ProofEngineTypes.tactic
val exact_tac:
term: Cic.term -> ProofEngineTypes.tactic
val intros_tac:
val cases_intros_tac:
?howmany:int ->
?mk_fresh_name_callback:ProofEngineTypes.mk_fresh_name_type ->
- Cic.term -> ProofEngineTypes.tactic
+ ?pattern:ProofEngineTypes.lazy_pattern -> Cic.term ->
+ ProofEngineTypes.tactic
(* FG *)
-(* inserts a hole in the context *)
-val letout_tac:
- ProofEngineTypes.tactic
-
val mk_predicate_for_elim:
context:Cic.context -> metasenv:Cic.metasenv ->
ugraph:CicUniv.universe_graph -> goal:Cic.term ->