Skip to content

Alans Früstücksvergnügen Mystery Cache

This cache has been archived.

Sissi Voss: Da dieser Cache seit Monaten inaktiv oder nicht zu finden ist, archiviere ich das Listing, damit es nicht mehr auf den Suchlisten auftaucht bzw. neue Caches blockiert. Falls du den Cache innerhalb der nächsten drei Monate reparieren oder ersetzen möchtest, schreibe mir bitte per E-Mail. Sofern der Cache den aktuellen Guidelines entspricht, hole ich ihn gerne wieder aus dem Archiv.

More
Hidden : 3/27/2008
Difficulty:
3.5 out of 5
Terrain:
2 out of 5

Size: Size:   regular (regular)

Join now to view geocache location details. It's free!

Watch

How Geocaching Works

Please note Use of geocaching.com services is subject to the terms and conditions in our disclaimer.

Geocache Description:


Achtung: Koordinaten sind verschoben. siehe unten.

Nachdem in lezter Zeit die Beschwerden immer lauter geworden sind, dass es hier zuviele Informatiker-Caches gibt, die nur von Informatikern gelöst werden können ( ich will hier keinen Namen nennen ), dachte ich: "leg doch mal einen Informatiker-Cache, den auch Nichtinformatiker lösen können!"

Ja da nehmen wir doch ein dem Fachgebiet ureigenes Thema: die Turingmaschine -- ab jetzt abgekürzt mit TM. Wie typisch für Informatiker, sind TMs sowohl ziemlich nutzlos, als auch ziemlich praktisch. Eine TM kann nämlich so gut wie nichts und das macht sie so praktisch. Wenn man nachweisen kann, dass etwas mit einer TM lösbar ist oder nicht, erlaubt dies Aussagen über das Problem auf welche IT-Forscher scharf sind wie Nachbars Lumpi. Soweit wollen wir hier nicht gehen. Wir benutzen eine TM um uns die Koordinaten eines Caches erzeugen zu lassen.

Wie funktioniert jetzt so eine TM? Man kann sich eine TM als langes Band vorstellen, auf welchem etwas gespeichert werden kann, sowie einen Schreib/Lesekopf, der etwas vom Band liest und wieder darauf schreibt und anschliessend den Schreib/Lesekopf bewegen kann. Das Ganze wird vervollständigt durch ein Programm, bzw. eine Zustandstabelle, welche abgearbeitet wird.

Wir brauchen hierzu keinen Computer, sondern können selbst die TM spielen, indem wir einen langen Streifen kariertes Papier nehmen und eine Kombination von Bleistift und Radierer als Schreibkopf benutzen. Bitte fangt hier nicht ganz links an, sondern lasst ca. 6 Felder frei. Insgesamt brauchen wir um die 100 Felder. Ihr müßt also ein bißchen kleben.

Wir verwenden hier die einfachste TM, die es gibt. Die TM kennt genau zwei verschiedene Symbole: ein leeres Feld [] und einen Strich |.
Wie wird jetzt ein TM-Programm abgearbeitet? Hierzu hat die TM einen aktuellen Zustand, ganz am Anfang des Programmes nimmt man hierfür einfach den ersten Zustand in der Tabelle (hier S01). Man hat also einen aktuellen Zustand und der Schreib/Lesekopf steht an einer bestimmten Stelle. Auf dieser Stelle ist jetzt ein Symbol, entweder ist das Feld leer, oder da steht ein Strich. Wir schauen jetzt beim aktuellen Zustand in der Tabelle nach: hier gibt es zwei Einträge für das, was zu tun ist, abhängig vom Symbol an der aktuellen Bandpostion. Steht an der aktuellen Bandposition ein Strich, dann nehmen wir den Eintrag der Spalte "Input  |", andernfalls nehmen wir den Eintrag der Spalte "Input  []". Z.b. bei leerer Bandposition und aktuellem Zustand S01 bedeutet dies: "write |", also mache einen Strich in das leere Feld, "move R", bewege dich eine Bandstelle nach rechts, "=> S44" und mache mit Zustand S44 weiter.

Entsprechend bedeuten die Anweisungen "write []": lösche bzw. radiere das Feld, "move .": bleibe an der Stelle, "move L": bewege dich eine Position nach links.

Dieses wird solange fortgeführt, bis man den Zustand HALT erreicht. Damit ist die Aufgabe eigentlich erklärt. Doch halt: bei nur zwei Symbolen, wovon eines einfach ein leeres Feld ist, wie kann ich da Koordinaten erkennen? Die werden einfach durch die Anzahl an Strichen vermerkt. Da wir kein unterschiedliches Zeichen für 0 und einen Abstand zwischen zwei Zahlen haben, müßt ihr wissen, wie Koordinaten aussehen, um das Ergebnis korrekt zu interpretiern.
Ein []||||[]||||||||[][]|[] kann sowohl 48 1 bedeuten, als auch 4801. Es ist also darauf zu achten, wo die Nullstellen zu erwarten sind.
Jetzt viel Spass beim Abarbeiten eines Turing-Programmes.

State Input  [] Input  |
S01 write |
move R
=> S44
write []
move .
=> S44
S02 write []
move R
=> S16
write |
move R
=> S02
S03 write |
move L
=> S36
write |
move R
=> S24
S04 write []
move R
=> S33
write |
move R
=> S26
S05 write []
move R
=> S14
write |
move R
=> S05
S06 write []
move R
=> S34
write |
move R
=> S19
S07 write |
move L
=> S07
write |
move R
=> S12
S08 write |
move R
=> S45
write |
move R
=> S08
S09 write |
move R
=> S36
write |
move R
=> S09
S10 write |
move R
=> S50
write []
move .
=> S50
S11 write []
move R
=> S37
write |
move R
=> S11
S12 write []
move R
=> S07
write |
move R
=> S14
S13 write []
move R
=> S11
write |
move R
=> S13
S14 write |
move L
=> S12
write |
move R
=> S23
S15 write |
move R
=> S32
write |
move L
=> S15
S16 write |
move R
=> S28
write []
move .
=> S28
S17 write |
move L
=> S27
write |
move R
=> S53
S18 write []
move R
=> S41
write |
move R
=> S08
S19 write []
move R
=> S06
write |
move R
=> S05
S20 write []
move R
=> S56
write []
move R
=> S44
State Input  [] Input  |
S21 write []
move R
=> S51
write |
move R
=> S21
S22 write |
move R
=> S16
write []
move L
=> S22
S23 write []
move R
=> S12
write |
move R
=> S55
S24 write |
move R
=> S03
write |
move .
=> S52
S25 write []
move R
=> S31
write |
move R
=> S25
S26 write []
move R
=> S04
write |
move R
=> S09
S27 write |
move R
=> S17
write []
move .
=> S17
S28 write |
move L
=> S16
write |
move R
=> S30
S29 write |
move R
=> S52
write []
move L
=> S29
S30 write |
move R
=> S13
write []
move R
=> S22
S31 write |
move L
=> S54
write |
move R
=> S31
S32 write |
move L
=> S15
write |
move R
=> S51
S33 write |
move L
=> S33
write |
move R
=> S39
S34 write |
move L
=> S34
write |
move R
=> S47
S35 write []
move R
=> S02
write |
move R
=> S51
S36 write []
move R
=> S40
write []
move L
=> S36
S37 write []
move R
=> S27
write |
move R
=> S37
S38 write |
move L
=> S48
write |
move R
=> S60
S39 write |
move R
=> S33
write |
move R
=> S04
S40 write []
move R
=> S03
write |
move R
=> S03
State Input  [] Input  |
S41 write []
move R
=> S46
write |
move R
=> S18
S42 write []
move R
=> S39
write |
move R
=> S42
S43 write |
move R
=> S27
write []
move L
=> S43
S44 write |
move L
=> S01
write |
move R
=> S20
S45 write []
move R
=> S21
write |
move R
=> S45
S46 write |
move L
=> S46
write |
move R
=> S56
S47 write |
move R
=> S34
write |
move R
=> S06
S48 write |
move R
=> S38
write |
move L
=> S38
S49 write []
move R
=> S25
write []
move R
=> S10
S50 write |
move L
=> S10
write |
move R
=> S47
S51 write |
move R
=> S15
write []
move R
=> S35
S52 write |
move R
=> S59
write []
move .
=> S59
S53 write |
move R
=> S42
write []
move R
=> S43
S54 write []
move L
=> S49
write |
move L
=> S25
S55 write []
move R
=> S58
write |
move R
=> S55
S56 write |
move R
=> S46
write |
move R
=> S41
S57 write |
move R
=> S49
write []
move R
=> S29
S58 write []
move R
=> S38
write |
move R
=> S58
S59 write |
move L
=> S52
write |
move R
=> S57
S60 write []
move R
=> S48
write |
move L
=> HALT

Nach der Turingberechnung gibt es noch eine Verschiebeung, die durch das Neuauslegen des Caches zustande kommt:
Final Nord= Turingresultat - 00 00.026, Final Ost: Turingresultat + 0 00.001.
Der Hint gilt fuer das Turingresultat, nicht fuer die Finalkoordinaten.

Additional Hints (Decrypt)

Dhrefhzzr üore Xbbeqvangramvssrea: 74 Dhrefhzzr üore trenqr Xbbeqvangramvssrea: 32 Onhzjhemry

Decryption Key

A|B|C|D|E|F|G|H|I|J|K|L|M
-------------------------
N|O|P|Q|R|S|T|U|V|W|X|Y|Z

(letter above equals below, and vice versa)