equal
deleted
inserted
replaced
81 val wit_goals = map Logic.mk_conjunction_balanced wit_goalss; |
81 val wit_goals = map Logic.mk_conjunction_balanced wit_goalss; |
82 val all_goalss = map single goals @ (if nwits > 0 then wit_goalss else []); |
82 val all_goalss = map single goals @ (if nwits > 0 then wit_goalss else []); |
83 |
83 |
84 val (((_, [raw_thms])), (lthy_old, lthy)) = Local_Theory.background_theory_result |
84 val (((_, [raw_thms])), (lthy_old, lthy)) = Local_Theory.background_theory_result |
85 (Specification.axiomatization [] [((mk_b "axioms" Binding.empty, []), flat all_goalss)]) lthy |
85 (Specification.axiomatization [] [((mk_b "axioms" Binding.empty, []), flat all_goalss)]) lthy |
86 ||> `Local_Theory.restore; |
86 ||> `Local_Theory.reset; |
87 |
87 |
88 fun mk_wit_thms set_maps = |
88 fun mk_wit_thms set_maps = |
89 Goal.prove_sorry lthy [] [] (Logic.mk_conjunction_balanced wit_goals) |
89 Goal.prove_sorry lthy [] [] (Logic.mk_conjunction_balanced wit_goals) |
90 (fn {context = ctxt, prems = _} => mk_wits_tac ctxt set_maps) |
90 (fn {context = ctxt, prems = _} => mk_wits_tac ctxt set_maps) |
91 |> Thm.close_derivation |
91 |> Thm.close_derivation |