equal
deleted
inserted
replaced
91 Object_Logic.atomize_prems_tac i |
91 Object_Logic.atomize_prems_tac i |
92 THEN simp_tac (HOL_basic_ss addsimps [@{thm "abs_ge_zero"}] addsimps simp_thms) i |
92 THEN simp_tac (HOL_basic_ss addsimps [@{thm "abs_ge_zero"}] addsimps simp_thms) i |
93 THEN REPEAT_DETERM (split_tac [@{thm "split_min"}, @{thm "split_max"}, @{thm "abs_split"}] i) |
93 THEN REPEAT_DETERM (split_tac [@{thm "split_min"}, @{thm "split_max"}, @{thm "abs_split"}] i) |
94 THEN (fn st => |
94 THEN (fn st => |
95 let |
95 let |
96 val g = List.nth (prems_of st, i - 1) |
96 val g = nth (prems_of st) (i - 1) |
97 val thy = Proof_Context.theory_of ctxt |
97 val thy = Proof_Context.theory_of ctxt |
98 (* Transform the term*) |
98 (* Transform the term*) |
99 val (t,np,nh) = prepare_for_mir thy q g |
99 val (t,np,nh) = prepare_for_mir thy q g |
100 (* Some simpsets for dealing with mod div abs and nat*) |
100 (* Some simpsets for dealing with mod div abs and nat*) |
101 val mod_div_simpset = HOL_basic_ss |
101 val mod_div_simpset = HOL_basic_ss |