som beregner reverseringsfunksjonen for strenger over {a, b}. Turingmaskin som beregner reverseringsfunksjonen for strenger over {a, b}.
Husker b. Leter mot venstre etter blank Sjekker om noe gjenstår av input Leter mot høyre etter skilletegn Fant blank, skriver b Leste b Setter inn skilletegn foran input Ja Nei Leter mot høyre etter blank Leser siste tegn i input Fant den
Turingmaskin M og funksjon F fra strenger til strenger: M beregner F For alle strenger w: M stopper til slutt med F(w) på tapen hvis den startes med w på tapen og lesehodet på første tegn i w. Hva med andre funksjoner, for eksempel fra tall til tall?
Maskin som beregner etterfølgerfunksjonen for naturlige tall, med unær tallrepresentasjon:
Maskin som beregner etterfølgerfunksjonen for naturlige tall, med binær tallrepresentasjon: Går deretter tilbake mot venstre, og.. o endrer siste 0 til 1, og alle 1 bak denne til 0 Fortsetter så mot venstre, og stopper Leter mot høyre etter første blanke
Hvilken rolle spiller representasjonsmåten? Er de samme funksjonene beregnbare når man bruker unær og binær representasjon? JA Hva med andre representasjonsmåter?
Fra unær til binær representasjon Skriv 0 rett til venstre for første a Let mot høyre etter første a … og erstatt den med b Gjør om b til blanke, gå helt til venstre i output, og stopp Avslutt dette når alle a’er er overskrevet endrer siste 0 til 1, og alle 1 bak denne til 0
Fra binær til unær representasjon Trekker fra 1 binært: Endrer siste 1 til 0, og alle 0 bak denne til 1 Går til høyre i input Legger til 1 unært: Skriver ny a til høyre for den siste