Hi all, I am not sure how to add a case in match?
the following code is almost a copy from eisbach doc:
method foo =
(match conclusion in ‹P ∧ Q› for P Q ⇒ ‹fail› | ‹R› for R ⇒ ‹prop_solver›)
if I remove everything after | then it parses. I am using the latest release of Isabelle.
For reasons that are beyond me, it is not a pipe |, but a ¦ (\<bar>)
and bar is printed as a pipe to maximize confusion (I got hit by this too)
oh boi
this might be necessary to distinguish between the | from match and the | (or) from tactics
In general: remember that the source code of the tutorials is present in the Isabelle distribution (here: ~~src/Doc/Eisbach), so you can check directly the sources
Last updated: Nov 13 2025 at 08:29 UTC