equal
deleted
inserted
replaced
1727 else |
1727 else |
1728 Goal.prove_sorry lthy [] [] (Logic.mk_conjunction_balanced goals) |
1728 Goal.prove_sorry lthy [] [] (Logic.mk_conjunction_balanced goals) |
1729 (fn {context = ctxt, prems = _} => |
1729 (fn {context = ctxt, prems = _} => |
1730 mk_rel_sel_tac ctxt (certify ctxt ta) (certify ctxt tb) exhaust |
1730 mk_rel_sel_tac ctxt (certify ctxt ta) (certify ctxt tb) exhaust |
1731 (flat disc_thmss) (flat sel_thmss) rel_inject_thms distincts |
1731 (flat disc_thmss) (flat sel_thmss) rel_inject_thms distincts |
1732 rel_distinct_thms) |
1732 rel_distinct_thms (map rel_eq_of_bnf live_nesting_bnfs)) |
1733 |> Conjunction.elim_balanced (length goals) |
1733 |> Conjunction.elim_balanced (length goals) |
1734 |> Proof_Context.export names_lthy lthy |
1734 |> Proof_Context.export names_lthy lthy |
1735 |> map Thm.close_derivation |
1735 |> map Thm.close_derivation |
1736 end; |
1736 end; |
1737 |
1737 |
1856 [] |
1856 [] |
1857 else |
1857 else |
1858 Goal.prove_sorry lthy [] [] (Logic.mk_conjunction_balanced goals) |
1858 Goal.prove_sorry lthy [] [] (Logic.mk_conjunction_balanced goals) |
1859 (fn {context = ctxt, prems = _} => |
1859 (fn {context = ctxt, prems = _} => |
1860 mk_map_sel_tac ctxt (certify ctxt ta) exhaust (flat disc_thmss) map_thms |
1860 mk_map_sel_tac ctxt (certify ctxt ta) exhaust (flat disc_thmss) map_thms |
1861 (flat sel_thmss)) |
1861 (flat sel_thmss) (map map_id0_of_bnf live_nesting_bnfs)) |
1862 |> Conjunction.elim_balanced (length goals) |
1862 |> Conjunction.elim_balanced (length goals) |
1863 |> Proof_Context.export names_lthy lthy |
1863 |> Proof_Context.export names_lthy lthy |
1864 |> map Thm.close_derivation |
1864 |> map Thm.close_derivation |
1865 end; |
1865 end; |
1866 |
1866 |