src/Doc/ProgProve/Bool_nat_list.thy
changeset 55318 908fd015cf2e
parent 55317 834a84553e02
child 55320 8a6ee5c1f2e0
equal deleted inserted replaced
55317:834a84553e02 55318:908fd015cf2e
   224 you need to prove
   224 you need to prove
   225 \begin{enumerate}
   225 \begin{enumerate}
   226 \item the base case @{prop"P(Nil)"} and
   226 \item the base case @{prop"P(Nil)"} and
   227 \item the inductive case @{prop"P(Cons x xs)"} under the assumption @{prop"P(xs)"}, for some arbitrary but fixed @{text x} and @{text xs}.
   227 \item the inductive case @{prop"P(Cons x xs)"} under the assumption @{prop"P(xs)"}, for some arbitrary but fixed @{text x} and @{text xs}.
   228 \end{enumerate}
   228 \end{enumerate}
   229 This is often called \concept{structural induction}.
   229 This is often called \concept{structural induction} for lists.
   230 
   230 
   231 \subsection{The Proof Process}
   231 \subsection{The Proof Process}
   232 
   232 
   233 We will now demonstrate the typical proof process, which involves
   233 We will now demonstrate the typical proof process, which involves
   234 the formulation and proof of auxiliary lemmas.
   234 the formulation and proof of auxiliary lemmas.