20221028_TH_M1-Skript_v02-0.pdf

Das folgende Spiel wurde 1883 von Édouard Lucas erfunden. Gegeben sind drei Stäbe ( zum stapeln und eine Anzahl von gelochte Scheiben, die zu Beginn alle auf dem Stab A gelegt sind.

Dabei sind die Scheiben alle unterschiedlich groß und zu Beginn der Größe nach geordnet (die größte unten, die kleinste oben). Aufgabe ist es nun, die Scheiben von Stab A auf den Stab C zu legen.

  • Es darf nur eine Scheibe auf einmal bewegt werden.
  • Eine Scheibe darf nur auf einen leeren Platz, oder auf eine größere Scheibe gelegt werden.

Behauptung: Es gibt einen Algorithmus, der die Aufgabe für jedes löst.

Bei ist nichts zu tun.

Daher Induktionsanfang:
Bewege die eine Scheibe von nach .

Induktionschrintt
Geben sei also ein Algorithmus, der die Aufgabe für Scheiben löst. Wir müssen nun zeigen, dass es einen Algorithmus für Scheiben gibt, der die Aufrgabe löst.

Nach Induktionsvoraussetzung wissen wir, dass es einen Algorithmus für Scheiben gibt. Nutze diesen um die oberen Scheiben von nach zu bewegen.
Bewege dann die -te Scheibe von nach .
Nutze nun wieder den Algorithmus für Scheiben um die Scheiben von nach zu bewegen.

Offensichtlich kann man mittels vollständige Induktion nicht nur beweisen, dass bestimmte Algorithmen korreckt sind, sondern auch rekusive Algorithmen entwerfen.