X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fcomponents%2Ftactics%2FprimitiveTactics.mli;h=577ed753575a0da5dd6ecfd78b3cbdcb3e08481c;hb=1acfe506c30e7fcc9d6e427d2523130c371a1159;hp=01d200eb76ece2859d1e460e7f6447bfda339729;hpb=55b82bd235d82ff7f0a40d980effe1efde1f5073;p=helm.git diff --git a/helm/software/components/tactics/primitiveTactics.mli b/helm/software/components/tactics/primitiveTactics.mli index 01d200eb7..577ed7535 100644 --- a/helm/software/components/tactics/primitiveTactics.mli +++ b/helm/software/components/tactics/primitiveTactics.mli @@ -23,10 +23,29 @@ * 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 : @@ -53,7 +72,22 @@ val letin_tac: val elim_intros_simpl_tac: ?mk_fresh_name_callback:ProofEngineTypes.mk_fresh_name_type -> - ?depth:int -> ?using:Cic.term -> Cic.term -> ProofEngineTypes.tactic + ?depth:int -> ?using:Cic.term -> + ?pattern:ProofEngineTypes.lazy_pattern -> Cic.term -> + ProofEngineTypes.tactic val elim_intros_tac: ?mk_fresh_name_callback:ProofEngineTypes.mk_fresh_name_type -> - ?depth:int -> ?using:Cic.term -> Cic.term -> ProofEngineTypes.tactic + ?depth:int -> ?using:Cic.term -> + ?pattern:ProofEngineTypes.lazy_pattern -> Cic.term -> + ProofEngineTypes.tactic + +val cases_intros_tac: + ?howmany:int -> + ?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