equal
deleted
inserted
replaced
2316 derive_induct_recs_thms_for_types plugins pre_bnfs recs_args_types xtor_co_induct |
2316 derive_induct_recs_thms_for_types plugins pre_bnfs recs_args_types xtor_co_induct |
2317 xtor_co_rec_thms live_nesting_bnfs fp_nesting_bnfs fpTs Cs Xs ctrXs_Tsss abs_inverses |
2317 xtor_co_rec_thms live_nesting_bnfs fp_nesting_bnfs fpTs Cs Xs ctrXs_Tsss abs_inverses |
2318 type_definitions abs_inverses ctrss ctr_defss recs rec_defs lthy; |
2318 type_definitions abs_inverses ctrss ctr_defss recs rec_defs lthy; |
2319 |
2319 |
2320 val rec_transfer_thmss = |
2320 val rec_transfer_thmss = |
2321 if live = 0 then replicate nn [] |
2321 map single (derive_rec_transfer_thms lthy recs rec_defs recs_args_types); |
2322 else map single (derive_rec_transfer_thms lthy recs rec_defs recs_args_types); |
|
2323 |
2322 |
2324 val induct_type_attr = Attrib.internal o K o Induct.induct_type; |
2323 val induct_type_attr = Attrib.internal o K o Induct.induct_type; |
2325 val induct_pred_attr = Attrib.internal o K o Induct.induct_pred; |
2324 val induct_pred_attr = Attrib.internal o K o Induct.induct_pred; |
2326 |
2325 |
2327 val ((rel_induct_thmss, common_rel_induct_thms), |
2326 val ((rel_induct_thmss, common_rel_induct_thms), |
2485 val coinduct_type_attr = Attrib.internal o K o Induct.coinduct_type; |
2484 val coinduct_type_attr = Attrib.internal o K o Induct.coinduct_type; |
2486 val coinduct_pred_attr = Attrib.internal o K o Induct.coinduct_pred; |
2485 val coinduct_pred_attr = Attrib.internal o K o Induct.coinduct_pred; |
2487 |
2486 |
2488 val flat_corec_thms = append oo append; |
2487 val flat_corec_thms = append oo append; |
2489 |
2488 |
2490 val corec_transfer_thmss = |
2489 val corec_transfer_thmss = map single (derive_corec_transfer_thms lthy corecs corec_defs); |
2491 if live = 0 then replicate nn [] |
|
2492 else map single (derive_corec_transfer_thms lthy corecs corec_defs); |
|
2493 |
2490 |
2494 val ((rel_coinduct_thmss, common_rel_coinduct_thms), |
2491 val ((rel_coinduct_thmss, common_rel_coinduct_thms), |
2495 (rel_coinduct_attrs, common_rel_coinduct_attrs)) = |
2492 (rel_coinduct_attrs, common_rel_coinduct_attrs)) = |
2496 if live = 0 then |
2493 if live = 0 then |
2497 ((replicate nn [], []), ([], [])) |
2494 ((replicate nn [], []), ([], [])) |