X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fcomponents%2Ftactics%2FprimitiveTactics.mli;h=24d5cbc88fd20b6ad1ddda1719473a71ab2353e5;hb=9b09890767aaa93e512324f8e7f13e2cdeebac88;hp=577ed753575a0da5dd6ecfd78b3cbdcb3e08481c;hpb=1acfe506c30e7fcc9d6e427d2523130c371a1159;p=helm.git diff --git a/helm/software/components/tactics/primitiveTactics.mli b/helm/software/components/tactics/primitiveTactics.mli index 577ed7535..24d5cbc88 100644 --- a/helm/software/components/tactics/primitiveTactics.mli +++ b/helm/software/components/tactics/primitiveTactics.mli @@ -42,6 +42,15 @@ val classify_metas : (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 -> @@ -55,6 +64,8 @@ val apply_tac_verbose : 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: @@ -84,10 +95,13 @@ val elim_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 -> + arg:Cic.term -> using:Cic.term -> cpattern:Cic.term -> args_no:int -> + Cic.metasenv * Cic.term * Cic.term * Cic.term list