Some of my locals have quite a few assumptions, very much resembling inductions over data types (that’s where the assumptions come from). When interpreting such a locale, having named cases would be very handy. How do I achieve that the following works?
locale Foo =
fixes P
assumes 0: "P 0"
assumes Suc: "P n ⟹ P (Suc n)"
interpretation Foo "λ _ . True"
proof(default)
case 0 show ?case..
next
case (Suc n) show ?case ..
qed