equal
deleted
inserted
replaced
714 val (thy7, case_congs) = DatatypeAbsProofs.prove_case_congs new_type_names |
714 val (thy7, case_congs) = DatatypeAbsProofs.prove_case_congs new_type_names |
715 [descr] sorts nchotomys case_thms thy6; |
715 [descr] sorts nchotomys case_thms thy6; |
716 val (thy8, weak_case_congs) = DatatypeAbsProofs.prove_weak_case_congs new_type_names |
716 val (thy8, weak_case_congs) = DatatypeAbsProofs.prove_weak_case_congs new_type_names |
717 [descr] sorts thy7; |
717 [descr] sorts thy7; |
718 val (thy9, size_thms) = |
718 val (thy9, size_thms) = |
719 if exists (equal "NatArith") (Sign.stamp_names_of (Theory.sign_of thy8)) then |
719 if Sign.exists_stamp "NatArith" (Theory.sign_of thy8) then |
720 DatatypeAbsProofs.prove_size_thms false new_type_names |
720 DatatypeAbsProofs.prove_size_thms false new_type_names |
721 [descr] sorts reccomb_names rec_thms thy8 |
721 [descr] sorts reccomb_names rec_thms thy8 |
722 else (thy8, []); |
722 else (thy8, []); |
723 |
723 |
724 val (thy10, [induction']) = thy9 |> |
724 val (thy10, [induction']) = thy9 |> |