X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;ds=sidebyside;f=helm%2Fsoftware%2Fcomponents%2Ftactics%2Fauto.mli;h=c8a9224cb9fec6266e1388a469e0ebcf23645a39;hb=af805d8cb199ea2c532983e29b064cf9861454f4;hp=5883f0bf2ac72d0ff024157f12bc428729246882;hpb=2eaee49a7ff3ed74598a0db84ce4dbc5bca92380;p=helm.git diff --git a/helm/software/components/tactics/auto.mli b/helm/software/components/tactics/auto.mli index 5883f0bf2..c8a9224cb 100644 --- a/helm/software/components/tactics/auto.mli +++ b/helm/software/components/tactics/auto.mli @@ -23,24 +23,51 @@ * http://cs.unibo.it/helm/. *) -(* stops at the first solution *) -val auto: - HMysql.dbd -> - AutoCache.cache -> - Cic.context -> - Cic.metasenv -> - ProofEngineTypes.goal list -> (* goals in AND *) - AutoTypes.flags -> - (Cic.substitution * Cic.metasenv) option * AutoCache.cache - -val auto_all_solutions: - HMysql.dbd -> - AutoCache.cache -> - Cic.context -> - Cic.metasenv -> - ProofEngineTypes.goal list -> - AutoTypes.flags -> - (Cic.substitution * Cic.metasenv) list * AutoCache.cache - -val applyS_tac: dbd:HMysql.dbd -> term: Cic.term -> ProofEngineTypes.tactic +type auto_params = Cic.term list * (string * string) list +val auto_tac: + dbd:HSql.dbd -> + params:auto_params -> + automation_cache:AutomationCache.cache -> + ProofEngineTypes.tactic + +val applyS_tac: + dbd:HSql.dbd -> + term: Cic.term -> + params:auto_params -> + automation_cache:AutomationCache.cache -> + ProofEngineTypes.tactic + +val demodulate_tac : + dbd:HSql.dbd -> + params:auto_params -> + automation_cache:AutomationCache.cache -> + ProofEngineTypes.tactic + +val demodulate_theorem : + automation_cache:AutomationCache.cache -> + UriManager.uri -> + Cic.term * Cic.term + +type auto_status = + Cic.context * + (* or list: goalno, goaltype, grey, depth, candidates: (goalno, c) *) + (int * Cic.term * bool * int * (int * Cic.term Lazy.t) list) list * + (* and list *) + (int * Cic.term * int) list * + (* last moves *) + Cic.term Lazy.t list + +val get_auto_status : unit -> auto_status +val pause: bool -> unit +val step : unit -> unit +val give_hint : int -> unit +val give_prune_hint : int -> unit + +val lambda_close : + ?prefix_name:string -> Cic.term -> Cic.metasenv -> Cic.context -> Cic.term * + int + +val pp_proofterm: Cic.term -> string +val revision : string (* svn revision *) +val size_and_depth : Cic.context -> Cic.metasenv -> Cic.term -> int * int