doc-src/TutorialI/Misc/document/cases.tex
author paulson
Tue, 02 May 2000 18:44:33 +0200
changeset 8777 0c1061ea7559
parent 8771 026f37a86ea7
child 9145 9f7b8de5bfaf
permissions -rw-r--r--
a more modern proof

\begin{isabelle}%
\isanewline
\isacommand{lemma}~{"}(case~xs~of~[]~{\isasymRightarrow}~[]~|~y\#ys~{\isasymRightarrow}~xs)~=~xs{"}\isanewline
\isacommand{apply}(case\_tac~xs)%
\begin{isamarkuptxt}%
\noindent
results in the proof state
\begin{isabellepar}%
~1.~xs~=~[]~{\isasymLongrightarrow}~(case~xs~of~[]~{\isasymRightarrow}~[]~|~y~\#~ys~{\isasymRightarrow}~xs)~=~xs\isanewline
~2.~{\isasymAnd}a~list.~xs=a\#list~{\isasymLongrightarrow}~(case~xs~of~[]~{\isasymRightarrow}~[]~|~y\#ys~{\isasymRightarrow}~xs)~=~xs%
\end{isabellepar}%
which is solved automatically:%
\end{isamarkuptxt}%
\isacommand{apply}(auto)\isacommand{.}\isanewline
\end{isabelle}%