equal
deleted
inserted
replaced
1144 |> map (unfold_thms lthy [@{thm conj_assoc}]) |
1144 |> map (unfold_thms lthy [@{thm conj_assoc}]) |
1145 |> map predify_rel_inject |
1145 |> map predify_rel_inject |
1146 |> Proof_Context.export names_lthy lthy |
1146 |> Proof_Context.export names_lthy lthy |
1147 end; |
1147 end; |
1148 |
1148 |
1149 val code_attrs = if plugins code_plugin then [Code.add_default_eqn_attrib] else []; |
1149 val code_attrs = if plugins code_plugin then [Code.add_default_eqn_attrib Code.Equation] else []; |
1150 |
1150 |
1151 val anonymous_notes = |
1151 val anonymous_notes = |
1152 [(rel_code_thms, code_attrs @ nitpicksimp_attrs)] |
1152 [(rel_code_thms, code_attrs @ nitpicksimp_attrs)] |
1153 |> map (fn (thms, attrs) => ((Binding.empty, attrs), [(thms, [])])); |
1153 |> map (fn (thms, attrs) => ((Binding.empty, attrs), [(thms, [])])); |
1154 |
1154 |
1575 map2 (map2 prove) goalss tacss |
1575 map2 (map2 prove) goalss tacss |
1576 end; |
1576 end; |
1577 |
1577 |
1578 val rec_thmss = mk_rec_thmss (the rec_args_typess) recs rec_defs ctor_rec_thms; |
1578 val rec_thmss = mk_rec_thmss (the rec_args_typess) recs rec_defs ctor_rec_thms; |
1579 |
1579 |
1580 val code_attrs = if plugins code_plugin then [Code.add_default_eqn_attrib] else []; |
1580 val code_attrs = if plugins code_plugin then [Code.add_default_eqn_attrib Code.Equation] else []; |
1581 in |
1581 in |
1582 ((induct_thms, induct_thm, mk_induct_attrs ctrss), |
1582 ((induct_thms, induct_thm, mk_induct_attrs ctrss), |
1583 (rec_thmss, code_attrs @ nitpicksimp_attrs @ simp_attrs)) |
1583 (rec_thmss, code_attrs @ nitpicksimp_attrs @ simp_attrs)) |
1584 end; |
1584 end; |
1585 |
1585 |
2232 val dtors = map (mk_dtor As) dtors0; |
2232 val dtors = map (mk_dtor As) dtors0; |
2233 |
2233 |
2234 val fpTs = map (domain_type o fastype_of) dtors; |
2234 val fpTs = map (domain_type o fastype_of) dtors; |
2235 val fpBTs = map B_ify_T fpTs; |
2235 val fpBTs = map B_ify_T fpTs; |
2236 |
2236 |
2237 val code_attrs = if plugins code_plugin then [Code.add_default_eqn_attrib] else []; |
2237 val code_attrs = if plugins code_plugin then [Code.add_default_eqn_attrib Code.Equation] else []; |
2238 |
2238 |
2239 val ctr_Tsss = map (map (map (Term.typ_subst_atomic (Xs ~~ fpTs)))) ctrXs_Tsss; |
2239 val ctr_Tsss = map (map (map (Term.typ_subst_atomic (Xs ~~ fpTs)))) ctrXs_Tsss; |
2240 val ns = map length ctr_Tsss; |
2240 val ns = map length ctr_Tsss; |
2241 val kss = map (fn n => 1 upto n) ns; |
2241 val kss = map (fn n => 1 upto n) ns; |
2242 val mss = map (map length) ctr_Tsss; |
2242 val mss = map (map length) ctr_Tsss; |