X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fcomponents%2Ftactics%2FautoTactic.ml;h=b4a3118199d517266147b7712a976a54ce841e08;hb=d356a5023cc06477b6d66a7b22a031ad7dffe947;hp=d4dc5592c78379caa95f6d32fffd8af8d9f7b889;hpb=a507a21ca97552dec5077667cf8433f24d7a45ae;p=helm.git diff --git a/helm/software/components/tactics/autoTactic.ml b/helm/software/components/tactics/autoTactic.ml index d4dc5592c..b4a311819 100644 --- a/helm/software/components/tactics/autoTactic.ml +++ b/helm/software/components/tactics/autoTactic.ml @@ -325,6 +325,7 @@ let auto_tac ~params ~(dbd:HMysql.dbd) = (* argument parsing *) let depth = int "depth" params in let width = int "width" params in + let timeout = string "timeout" params in let paramodulation = bool "paramodulation" params in let full = bool "full" params in let superposition = bool "superposition" params in @@ -333,6 +334,9 @@ let auto_tac ~params ~(dbd:HMysql.dbd) = let subterms_only = bool "subterms_only" params in let caso_strano = bool "caso_strano" params in let demod_table = string "demod_table" params in + let timeout = + try Some (float_of_string timeout) with Failure _ -> None + in (* the real tactic *) let auto_tac dbd (proof, goal) = let normal_auto () = @@ -364,7 +368,8 @@ let auto_tac ~params ~(dbd:HMysql.dbd) = debug_print (lazy "USO PARAMODULATION..."); (* try *) try - let rc = Saturation.saturate caso_strano dbd ~depth ~width ~full (proof, goal) in + let rc = Saturation.saturate caso_strano dbd ~depth ~width ~full + ?timeout (proof, goal) in prerr_endline (Saturation.get_stats ()); rc with exn -> @@ -494,3 +499,5 @@ let applyS_tac ~dbd ~term = | CicUnification.UnificationFailure msg | CicTypeChecker.TypeCheckerFailure msg -> raise (ProofEngineTypes.Fail msg)) + +let pp_proofterm = Equality.pp_proofterm;;