equal
deleted
inserted
replaced
502 val half_pairss = mk_half_pairss (`I (ms ~~ discD_thms ~~ udiscs)); |
502 val half_pairss = mk_half_pairss (`I (ms ~~ discD_thms ~~ udiscs)); |
503 |
503 |
504 val half_goalss = map mk_goal half_pairss; |
504 val half_goalss = map mk_goal half_pairss; |
505 val half_thmss = |
505 val half_thmss = |
506 map3 (fn [] => K (K []) | [goal] => fn [(((m, discD), _), _)] => |
506 map3 (fn [] => K (K []) | [goal] => fn [(((m, discD), _), _)] => |
507 fn disc_thm => [prove (mk_half_disc_exclude_tac m discD disc_thm) goal]) |
507 fn disc_thm => [prove (mk_half_disc_exclude_tac lthy m discD disc_thm) goal]) |
508 half_goalss half_pairss (flat disc_thmss'); |
508 half_goalss half_pairss (flat disc_thmss'); |
509 |
509 |
510 val other_half_goalss = map (mk_goal o map swap) half_pairss; |
510 val other_half_goalss = map (mk_goal o map swap) half_pairss; |
511 val other_half_thmss = |
511 val other_half_thmss = |
512 map2 (map2 (prove o mk_other_half_disc_exclude_tac)) half_thmss |
512 map2 (map2 (prove o mk_other_half_disc_exclude_tac)) half_thmss |