simplified prove_conv;
authorwenzelm
Wed, 12 Jul 2006 21:19:14 +0200
changeset 20113 90a8d14f3610
parent 20112 a25c5d283239
child 20114 a1bb4bc68ff3
simplified prove_conv;
src/HOL/Integ/int_arith1.ML
src/ZF/arith_data.ML
--- a/src/HOL/Integ/int_arith1.ML	Wed Jul 12 19:59:14 2006 +0200
+++ b/src/HOL/Integ/int_arith1.ML	Wed Jul 12 21:19:14 2006 +0200
@@ -92,14 +92,13 @@
 
 structure Bin_Simprocs =
   struct
-  fun prove_conv tacs sg (hyps: thm list) xs (t, u) =
+  fun prove_conv tacs ctxt (_: thm list) (t, u) =
     if t aconv u then NONE
     else
       let val eq = HOLogic.mk_Trueprop (HOLogic.mk_eq (t, u))
-      in SOME (Goal.prove sg xs [] eq (K (EVERY tacs))) end
+      in SOME (Goal.prove ctxt [] [] eq (K (EVERY tacs))) end
 
   fun prove_conv_nohyps tacs sg = prove_conv tacs sg [];
-  fun prove_conv_nohyps_novars tacs sg = prove_conv tacs sg [] [];
 
   fun prep_simproc (name, pats, proc) =
     Simplifier.simproc (Theory.sign_of (the_context())) name pats proc;
--- a/src/ZF/arith_data.ML	Wed Jul 12 19:59:14 2006 +0200
+++ b/src/ZF/arith_data.ML	Wed Jul 12 21:19:14 2006 +0200
@@ -12,8 +12,7 @@
   val nat_cancel: simproc list
   (*tools for use in similar applications*)
   val gen_trans_tac: thm -> thm option -> tactic
-  val prove_conv: string -> tactic list -> Proof.context ->
-                  thm list -> string list -> term * term -> thm option
+  val prove_conv: string -> tactic list -> Proof.context -> thm list -> term * term -> thm option
   val simplify_meta_eq: thm list -> simpset -> thm -> thm
   (*debugging*)
   structure EqCancelNumeralsData   : CANCEL_NUMERALS_DATA
@@ -68,13 +67,13 @@
 
 fun add_chyps chyps ct = Drule.list_implies (map cprop_of chyps, ct);
 
-fun prove_conv name tacs ctxt hyps xs (t,u) =
+fun prove_conv name tacs ctxt prems (t,u) =
   if t aconv u then NONE
   else
-  let val hyps' = List.filter (not o is_eq_thm) hyps
-      val goal = Logic.list_implies (map (#prop o Thm.rep_thm) hyps',
+  let val prems' = List.filter (not o is_eq_thm) prems
+      val goal = Logic.list_implies (map (#prop o Thm.rep_thm) prems',
         FOLogic.mk_Trueprop (mk_eq_iff (t, u)));
-  in SOME (hyps' MRS Goal.prove ctxt xs [] goal (K (EVERY tacs)))
+  in SOME (prems' MRS Goal.prove ctxt [] [] goal (K (EVERY tacs)))
       handle ERROR msg =>
         (warning (msg ^ "\nCancellation failed: no typing information? (" ^ name ^ ")"); NONE)
   end;