doc-src/Exercises/2002/a6/a6.thy
author berghofe
Mon, 12 May 2003 13:51:50 +0200
changeset 14008 f843528b9f3c
parent 13739 f5d0a66c8124
permissions -rw-r--r--
Program extraction framework.

(*<*)
theory a6 = Main:
(*>*)
subsection {* The towers of Hanoi *}

text{*
In section \ref{psv2000hanoi} we introduced the towers of Hanoi and
defined a function @{term moves} to generate the moves to solve the
puzzle.  Now it is time to show that @{term moves} is correct. This
means that
\begin{itemize}
\item when executing the list of moves, the result is indeed the
intended one, i.e.\ all disks are moved from one peg to another, and
\item all of the moves are legal, i.e.\ never place a larger disk
on top of a smaller one.
\end{itemize}
Hint: this is a nontrivial undertaking. The complexity of your proofs
will depend crucially on your choice of model and you may have to
revise your model as you proceed with the proof.
*}

(*<*)
end
(*>*)