]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/components/tactics/auto.mli
The signature in "retrieve equations" must be extended with the equality if
[helm.git] / helm / software / components / tactics / auto.mli
index 7150a124687af4e7e72da23a5c4a3cdd0eb7a61f..a45083f390da6b1521606bfb424149f286b3f428 100644 (file)
  * http://cs.unibo.it/helm/.
  *)
 
-(* stops at the first solution *)
-val auto: 
-  AutoTypes.universe ->
-  AutoTypes.cache ->
-  Cic.context ->
-  Cic.metasenv ->
-  ProofEngineTypes.goal list -> (* goals in AND *)
-  AutoTypes.flags ->
-    (Cic.substitution * Cic.metasenv) option * AutoTypes.cache
-
-val auto_all_solutions: 
-  AutoTypes.universe ->
-  AutoTypes.cache ->
-  Cic.context ->
-  Cic.metasenv ->
-  ProofEngineTypes.goal list ->
-  AutoTypes.flags ->
-    (Cic.substitution * Cic.metasenv) list * AutoTypes.cache
+type auto_params = Cic.term list * (string * string) list 
+
+val auto_tac:
+  dbd:HSql.dbd -> 
+  params:auto_params ->
+  universe:Universe.universe ->
+  ProofEngineTypes.tactic
+
+val applyS_tac:
+  dbd:HSql.dbd -> 
+  term: Cic.term -> 
+  params:auto_params ->
+  universe:Universe.universe ->
+  ProofEngineTypes.tactic
+
+val demodulate_tac : 
+  dbd:HSql.dbd -> 
+  params:auto_params ->
+  universe:Universe.universe ->
+  ProofEngineTypes.tactic
+
+val demodulate_theorem : 
+  universe:Universe.universe -> 
+  UriManager.uri -> 
+  Cic.term * Cic.term
+
+val solve_rewrite_tac:
+  params:auto_params ->
+  universe:Universe.universe ->
+  unit -> ProofEngineTypes.tactic
+
+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