src/HOL/Tools/Qelim/cooper.ML
changeset 57955 f28337c2c0a8
parent 57952 1a9a6dfc255f
child 58820 3ad2759acc52
equal deleted inserted replaced
57954:c52223cd1003 57955:f28337c2c0a8
   861 fun tac elim add_ths del_ths = Subgoal.FOCUS_PARAMS (fn {context = ctxt, ...} =>
   861 fun tac elim add_ths del_ths = Subgoal.FOCUS_PARAMS (fn {context = ctxt, ...} =>
   862   let
   862   let
   863     val simpset_ctxt =
   863     val simpset_ctxt =
   864       put_simpset (fst (get ctxt)) ctxt delsimps del_ths addsimps add_ths
   864       put_simpset (fst (get ctxt)) ctxt delsimps del_ths addsimps add_ths
   865   in
   865   in
   866     Method.insert_tac (Named_Theorems.get ctxt @{named_theorems arith})
   866     Method.insert_tac (rev (Named_Theorems.get ctxt @{named_theorems arith}))
   867     THEN_ALL_NEW Object_Logic.full_atomize_tac ctxt
   867     THEN_ALL_NEW Object_Logic.full_atomize_tac ctxt
   868     THEN_ALL_NEW CONVERSION Thm.eta_long_conversion
   868     THEN_ALL_NEW CONVERSION Thm.eta_long_conversion
   869     THEN_ALL_NEW simp_tac simpset_ctxt
   869     THEN_ALL_NEW simp_tac simpset_ctxt
   870     THEN_ALL_NEW (TRY o generalize_tac (int_nat_terms ctxt))
   870     THEN_ALL_NEW (TRY o generalize_tac (int_nat_terms ctxt))
   871     THEN_ALL_NEW Object_Logic.full_atomize_tac ctxt
   871     THEN_ALL_NEW Object_Logic.full_atomize_tac ctxt