equal
deleted
inserted
replaced
612 let |
612 let |
613 val _ = clean_message " Proving the induction rule ..."; |
613 val _ = clean_message " Proving the induction rule ..."; |
614 |
614 |
615 val sum_case_rewrites = |
615 val sum_case_rewrites = |
616 (if Context.theory_name thy = "Datatype" then |
616 (if Context.theory_name thy = "Datatype" then |
617 PureThy.get_thms thy ("sum.cases", NONE) |
617 PureThy.get_thms thy (Name "sum.cases") |
618 else |
618 else |
619 (case ThyInfo.lookup_theory "Datatype" of |
619 (case ThyInfo.lookup_theory "Datatype" of |
620 NONE => [] |
620 NONE => [] |
621 | SOME thy' => PureThy.get_thms thy' ("sum.cases", NONE))) |
621 | SOME thy' => PureThy.get_thms thy' (Name "sum.cases"))) |
622 |> map mk_meta_eq; |
622 |> map mk_meta_eq; |
623 |
623 |
624 val (preds, ind_prems, mutual_ind_concl, factors) = |
624 val (preds, ind_prems, mutual_ind_concl, factors) = |
625 mk_indrule cs cTs params intr_ts; |
625 mk_indrule cs cTs params intr_ts; |
626 |
626 |