How to make the assumption of the second case of an Isabelle/Isar proof by cases explicit right in place? -
i have isabelle proof structured follows:
proof (cases "n = 0") case true (* lots of stuff here *) show ?thesis sorry next case false (* lots of stuff here *) show ?thesis sorry qed
the first case several pages long, when reading second case it's no longer clear casual reader, not myself, false
refers to. (well, is, not reading, in interactive environment: if, e.g., in isabelle/jedit, place cursor after case false
, you'll see n ≠ 0
under "this" in output panel.)
so there syntax allows making assumption of "false" case explicit, reader neither has interact ide, nor scroll proof
keyword, can see assumption right in place?
in case proof becomes more readable stating assumption of each case explicitly:
proof cases assume "n = 0" show ?thesis sorry next assume "n ≠ 0" show ?thesis sorry qed
Comments
Post a Comment