vampire/eprover methods can now be applied repeatedly until they fail.
authormengj
Thu, 23 Feb 2006 12:57:39 +0100
changeset 19128 495ecbefc5df
parent 19127 9aff3d859d39
child 19129 b66dff8ab7e9
vampire/eprover methods can now be applied repeatedly until they fail.
src/HOL/Tools/res_atp_methods.ML
--- a/src/HOL/Tools/res_atp_methods.ML	Wed Feb 22 22:18:42 2006 +0100
+++ b/src/HOL/Tools/res_atp_methods.ML	Thu Feb 23 12:57:39 2006 +0100
@@ -26,12 +26,12 @@
 
 (* convert the negated 1st subgoal into CNF, write to files and call an ATP oracle *)
 fun res_atp_tac res_atp_oracle mode timeLimit ctxt user_thms n thm =
-    SELECT_GOAL
-	((EVERY1 [rtac ccontr,ObjectLogic.atomize_tac, skolemize_tac, 
+    (SELECT_GOAL
+	(EVERY1 [rtac ccontr,ObjectLogic.atomize_tac, skolemize_tac, 
 		  METAHYPS(fn negs =>
 			      HEADGOAL(Tactic.rtac 
 					   (res_atp_oracle (ProofContext.theory_of ctxt) 
-							   (ResAtpSetup.prep_atp_input mode ctxt negs user_thms n, timeLimit))))]) handle Fail _ => no_tac) n thm;
+							   (ResAtpSetup.prep_atp_input mode ctxt negs user_thms n, timeLimit))))]) n thm) handle (Fail _) => Seq.empty;
 
 (* vampire and eprover tactics *)