]> matita.cs.unibo.it Git - helm.git/blobdiff - components/tactics/autoTactic.ml
matitaprover
[helm.git] / components / tactics / autoTactic.ml
index 63dc8631dbc8b4b564fded81c72ea44fcffe204c..f063eeafb69ff99d7d49bf6b6810d6768f302e41 100644 (file)
@@ -331,6 +331,7 @@ let auto_tac ~params ~(dbd:HMysql.dbd) =
   let target = string "target" params in
   let table = string "table" params in
   let subterms_only = bool "subterms_only" params in
+  let caso_strano = bool "caso_strano" params in
   let demod_table = string "demod_table" params in
   (* the real tactic *)
   let auto_tac dbd (proof, goal) =
@@ -363,7 +364,7 @@ let auto_tac ~params ~(dbd:HMysql.dbd) =
       debug_print (lazy "USO PARAMODULATION...");
 (*       try *)
       try
-        let rc = Saturation.saturate dbd ~depth ~width ~full (proof, goal) in
+        let rc = Saturation.saturate caso_strano dbd ~depth ~width ~full (proof, goal) in
         prerr_endline (Saturation.get_stats ());
         rc
       with exn ->
@@ -412,7 +413,7 @@ let new_metasenv_and_unify_and_t dbd proof goal newmeta' metasenv' context term'
         [g1;g2] ->
           let proof'',goals =
            ProofEngineTypes.apply_tactic
-           (auto_tac ~params:["paramodulation","on"] ~dbd) (proof'',g2)
+           (auto_tac ~params:["caso_strano","on";"paramodulation","on"] ~dbd) (proof'',g2)
           in
            let proof'',goals =
             ProofEngineTypes.apply_tactic
@@ -493,3 +494,5 @@ let applyS_tac ~dbd ~term =
     | CicUnification.UnificationFailure msg
     | CicTypeChecker.TypeCheckerFailure msg ->
         raise (ProofEngineTypes.Fail msg))
+
+let pp_proofterm = Equality.pp_proofterm;;