]> matita.cs.unibo.it Git - helm.git/blobdiff - components/tactics/primitiveTactics.mli
New tactic cases (still to be documented).
[helm.git] / components / tactics / primitiveTactics.mli
index 01d200eb76ece2859d1e460e7f6447bfda339729..3e7a4858128fd2c26cf5625659603bcc14104d19 100644 (file)
  * http://cs.unibo.it/helm/.
  *)
 
+(**** useful only to implement tactics similar to apply ****)
+
+val generalize_exp_named_subst_with_fresh_metas :
+  Cic.context ->
+  int ->
+  UriManager.uri ->
+  (UriManager.uri * Cic.term) list ->
+  int * Cic.metasenv *
+  Cic.term Cic.explicit_named_substitution *
+  Cic.term Cic.explicit_named_substitution
+
+val classify_metas :
+  Cic.term ->
+  (Cic.term -> bool) ->
+  (Cic.context -> Cic.term -> Cic.term) ->
+  (Cic.term * Cic.context * Cic.term) list ->
+  (Cic.term * Cic.context * Cic.term) list *
+  (Cic.term * Cic.context * Cic.term) list
+
 (* ALB, needed by the new paramodulation... *)
-val apply_tac_verbose_with_subst:
-  term:Cic.term -> ProofEngineTypes.proof * int ->
-  Cic.substitution * (ProofEngineTypes.proof * int list)
+val apply_with_subst:
+  term:Cic.term -> ?subst:Cic.substitution -> ?maxmeta:int -> ProofEngineTypes.proof * int ->
+  Cic.substitution * (ProofEngineTypes.proof * int list) * int
 
 (* not a real tactic *)
 val apply_tac_verbose :
@@ -57,3 +76,13 @@ val elim_intros_simpl_tac:
 val elim_intros_tac:
   ?mk_fresh_name_callback:ProofEngineTypes.mk_fresh_name_type ->
   ?depth:int -> ?using:Cic.term -> Cic.term -> ProofEngineTypes.tactic 
+
+val cases_intros_tac:
+  ?mk_fresh_name_callback:ProofEngineTypes.mk_fresh_name_type ->
+  Cic.term -> ProofEngineTypes.tactic 
+
+(* FG *)
+
+(* inserts a hole in the context *)
+val letout_tac:
+  ProofEngineTypes.tactic