src/HOL/Tools/arith_data.ML
changeset 35021 c839a4c670c6
parent 34974 18b41bba42b5
child 35267 8dfd816713c6
equal deleted inserted replaced
35020:862a20ffa8e2 35021:c839a4c670c6
   108   else let val eq = HOLogic.mk_Trueprop (HOLogic.mk_eq (t, u))
   108   else let val eq = HOLogic.mk_Trueprop (HOLogic.mk_eq (t, u))
   109   in SOME (Goal.prove ctxt [] [] eq (K (EVERY tacs))) end;
   109   in SOME (Goal.prove ctxt [] [] eq (K (EVERY tacs))) end;
   110 
   110 
   111 fun prove_conv tacs ctxt (_: thm list) = prove_conv_nohyps tacs ctxt;
   111 fun prove_conv tacs ctxt (_: thm list) = prove_conv_nohyps tacs ctxt;
   112 
   112 
   113 fun prove_conv2 expand_tac norm_tac ss tu = (*FIXME avoid standard*)
   113 fun prove_conv2 expand_tac norm_tac ss tu = (* FIXME avoid Drule.export_without_context *)
   114   mk_meta_eq (Drule.standard (Goal.prove (Simplifier.the_context ss) [] []
   114   mk_meta_eq (Drule.export_without_context (Goal.prove (Simplifier.the_context ss) [] []
   115       (HOLogic.mk_Trueprop (HOLogic.mk_eq tu))
   115       (HOLogic.mk_Trueprop (HOLogic.mk_eq tu))
   116     (K (EVERY [expand_tac, norm_tac ss]))));
   116     (K (EVERY [expand_tac, norm_tac ss]))));
   117 
   117 
   118 fun simp_all_tac rules =
   118 fun simp_all_tac rules =
   119   let val ss0 = HOL_ss addsimps rules
   119   let val ss0 = HOL_ss addsimps rules