Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Macchina di turing
1. Turing e la Turing Machine
Pizzano Giulio IAcat
2.
3. Che cosa è una Macchina di Turing?
o Nel 1936 il matematico inglese Alan Turing
propose l'idea di una macchina immaginaria
che fosse capace di eseguire ogni tipo di
calcolo su numeri e simboli.
o Una macchina di Turing (MdT) è definita da un
insieme di regole che definiscono il
comportamento della macchina su un nastro di
input-output (lettura e scrittura).
Macchina di Turing
4. o Il nastro può essere immaginato come un nastro di carta di lunghezza
infinita, diviso in quadratini dette celle.
o Ogni cella contiene un simbolo oppure è vuota.
o Una MdT ha una testina che si sposta lungo il nastro leggendo,
scrivendo oppure cancellando simboli nelle celle del nastro. La
macchina analizza il nastro, una cella alla volta, iniziando dalla cella
che contiene il simbolo più a sinistra nel nastro.
5. Ad ogni passo, la macchina legge un simbolo sul nastro e in accordo al suo
stato interno corrente:
1) Decide il suo prossimo stato interno, e
2) Scrive un simbolo sul nastro e decide se spostare o meno la testina
a sinistra o a destra di una posizione.
Come per uno stato della mente di un essere umano, lo stato interno di una
MdT definisce l'ambiente in cui una decisione viene presa.
Una MdT può avere solo un numero finito di stati.
6. o Il comportamento di una MdT può essere
programmato definendo un insieme di regole, o
quintuple, del tipo:
(stato-interno-corrente, simbolo-letto, prossimo-stato-interno, simbolo-scritto, direzione)
o Per esempio la quintupla (0, A, 1, B, -) indica che se la
macchina si trova nello stato interno 0 e legge sul
nastro il simbolo A, allora passa nello stato interno 1,
scrive B sul nastro e non sposta la testina di lettura.
7. o La quintupla (1, B, 0, A, >) indica invece che se la
macchina si trova nello stato interno 1 e legge sul
nastro il simbolo B, allora passa nello stato interno 0,
scrive A sul nastro e si sposta di una posizione a
destra.
o Se ci si vuole spostare senza modificare il contenuto
del nastro si può scrivere il simbolo appena letto
utilizzando una quintupla analoga alla seguente: (1,
B, 0, B, >).
8. o Si noti che la scrittura del simbolo speciale "-" corrisponde a cancellare il
contenuto di una cella.
o Ad esempio la quintupla (1, A, 2, -, -) indica che se la macchina si trova nello
stato 1 e legge il simbolo A, allora passa nello stato 2 e cancella il simbolo A
dal nastro, non spostando la testina di lettura.
o Il simbolo "-" viene quindi utilizzato sia per rappresentare la cella vuota
che per denotare il mancato movimento della testina.
o Si noti che una MdT può compiere un'azione anche quando incontra la
cella vuota.
o Ad esempio la quintupla (2, -, 2, -, <) indica che se la macchina si trova nello
stato 2 e legge una cella vuota allora lascia invariato il contenuto della cella e
si sposta di una posizione a sinistra rimanendo nello stesso stato.
o Si noti infine che un insieme di quintuple associa ad ogni coppia: stato-
interno-corrente, simbolo-letto al più una tripla: prossimo-stato-interno,
simbolo-scritto, direzione.
9. Vediamo adesso come una MdT effettua i suoi calcoli.
o Inizialmente, il nastro contiene una sequenza finita di
simboli, detta sequenza di ingresso.
o La MdT è nel suo stato interno iniziale 0 con la testina
posizionata sul simbolo più a sinistra nel nastro.
o A partire da questa configurazione iniziale, la MdT
effettua una serie di azioni seguendo rigorosamente il
suo insieme di regole.
o Se la macchina raggiunge uno stato interno per cui non
esiste nessuna quintupla per la coppia: stato-interno-
corrente, simbolo-letto, allora la MdT si ferma e
termina la sua computazione.