Antonio Cisternino La Macchina di Turing.

Slides:



Advertisements
Presentazioni simili
…da von Neumann al computer quantistico
Advertisements

Macchine di Turing e ricorsività generale
La lettura si effettua sempre da sinistra verso destra.
Gestione della memoria centrale
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità E1 Dallanalisi del problema alla definizione dellalgoritmo.
Inizio… Linguaggi Linguaggi di programmazione Linguaggi di programmazione Linguaggi di programmazione Linguaggi di programmazione Linguaggi Formali Linguaggi.
Algoritmi e Programmazione
Precorsi di Informatica Dott. Antonio Cisternino Settembre 2003
Deduzione naturale + Logica & Calcolabilità
Modulo 4 – terza ed ultima parte Foglio Elettronico Definire la funzionalità di un software per gestire un foglio elettronico Utilizzare le operazioni.
Cenni sulle Macchine di Turing corrado bonfanti
La macchina di Turing Lettore IIIIIII Se nella casella cè un simbolo allora leggi la casella successiva.
LE INTUIZIONI MATEMATICHE
MACCHINE DI TURING Le macchine di Turing sono dispositivi astratti per la manipolazione di simboli, ideati nel 1936 dal matematico e logico britannico.
Algoritmi e Strutture Dati Capitolo 2 Modelli di calcolo e metodologie di analisi.
File.
Algoritmi e Strutture Dati Introduzione. Gli argomenti di oggi Analisi della bontà degli algoritmi Modello Computazionale Tempo di esecuzione degli algoritmi.
Funzioni, Rappresentazioni e Coscienza
Access: Query semplici
Array Struttura numerate di dati. Memorizzare molti dati In informatica cè spesso bisogno di memorizzare ed elaborare un insieme costituito da molti dati.
Corso di Informatica A.A Corso di Informatica Laurea Triennale - Comunicazione&Dams Dott.ssa Adriana Pietramala Laurea.
Modelli simulativi per le Scienze Cognitive Paolo Bouquet (Università di Trento) Marco Casarotti (Università di Padova)
Modelli simulativi per le Scienze Cognitive
Il Linguaggio Macchina
Esercizi su pile Scrivere una funzione che restituisca una nuova pila che contiene i valori di una pila in ingresso in ordine inverso. La pila originale.
ancora alcune macchine di Turing per risolvere semplici problemi :
MACCHINE DI TURING e ALGORITMI
Gli algoritmi.
INSIEMI NUMERABILI L’analisi matematica introduce il concetto di insieme numerabile come insieme i cui elementi possono essere “contati” ossia che possiede.
PROBLEMI RISOLUBILI E COMPUTABILITÀ
L’AUTOMA ESECUTORE Un automa capace di ricevere dall’esterno una descrizione dello algoritmo richiesto cioè capace di interpretare un linguaggio (linguaggio.
Elementi di Informatica
…da von Neumann al computer quantistico
RAPPRESENTAZIONE DELL'INFORMAZIONE
INTERVALLI E INTORNI INTERVALLI INTORNI PUNTI PER UN INSIEME.
Elementi di Informatica di base
Algoritmi e Programmazione strutturata
INFORMATICA Universita' degli Studi di Brescia
L’inventore del calcolatore odierno
CHI ERA ALAN TURING? Turing fece parte del team di matematici che, a partire dalla base di Bletchley Park, decodificarono i messaggi scritti dalle macchine.
LA MACCHINA DI TURING Nel 1936 il matematico inglese A. M. Turing propose una definizione del concetto di algoritmo tramite un modello matematico di macchina.
A B C INFORMATICA… *.OFFICE - Maria Grazia Ottaviani.
BIOINFO3 - Lezione 211 INPUT La lettura di un input dallo standard input (tastiera) si effettua utilizzando lespressione. Quando il programma incontra.
Linguaggi per COMUNICARE
Unità centrale di processo
Programma di Informatica Classi Prime
Università degli studi di Lecce
Interrogare il database
La rappresentazione delle informazioni in un computer Seconda parte.
Modelli computazionali e macchine astratte
Informatica Lezione 5 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
Camil Demetrescu, Irene Finocchi, Giuseppe F. ItalianoAlgoritmi e strutture dati Algoritmi e Strutture Dati Capitolo 2 Modelli di calcolo e metodologie.
Corso di Informatica Corso di Laurea in Conservazione e Restauro dei Beni Culturali Gianluca Torta Dipartimento di Informatica Tel: Mail:
Ingegneria del software Modulo 1 - Introduzione al processo software Unità didattica 3 - Modelli di fase d’analisi Ernesto Damiani Università degli Studi.
Ingegneria del software Modulo 1 -Introduzione al processo software Unità didattica 3 - Modelli di fase d’analisi Ernesto Damiani Università degli Studi.
Macchine di Turing (1) Il modello di base ha un controllo finito, un nastro di input diviso in celle e una testa di lettura che esamina una cella alla.
Vincenza Ferrara - Dicembre 2007 Fondamenti di Matematica e Informatica Laboratorio Informatica I anno a.a
Espressioni regolari (1)
Informatica e Informatica di Base
I LIMITI.
Io ho voluto dimostrarlo attraverso una delle mie passioni:
Problemi, algoritmi e programmazione
Modello di Automa (Q, I, U, t, w)
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – Ver. aggiornata al 24 Agosto 2015.
Indecidibilità Limiti della calcolabilità Pigreco-day 14 marzo 2014 Matematica e Incertezza Prof. Antonio Iarlori Mathesis Lanciano-Ortona.
Informatica Problemi e algoritmi. una situazione che pone delle domande cui si devono dare risposte. Col termine problema o situazione problematica s’indica.
Elementi di Topologia in R
Logica Lezione 11, Annuncio Non si terrà la lezione di Lunedì 16 Marzo.
Le Macchine di Turing.
Transcript della presentazione:

Antonio Cisternino La Macchina di Turing

Introduzione La gara delle Macchine di Turing nasce con la Settimana della Cultura Obiettivo: orientamento in Informatica La Macchina di Turing: un modello di calcolo importante in Informatica Un sistema accessibile a tutti

Come è fatta una MdT? Una MdT è definita da: un nastro una testina uno stato interno un programma uno stato iniziale

Il nastro Il nastro è infinito suddiviso in celle In una cella può essere contenuto un simbolo preso da un alfabeto opportuno Un alfabeto è semplicemente un insieme di simboli Una cella deve contenere un simbolo che può appartenere all’alfabeto oppure essere un simbolo speciale

Lo stato interno e la testina La macchina è dotata di una testina di lettura/scrittura La testina è in grado di leggere e scrivere il contenuto della cella del nastro su cui si trova La macchina ha uno stato interno Uno stato è un elemento appartenente all’insieme degli stati

Il programma di una MdT Il comportamento della macchina è determinato da un insieme di regole Una regola ha la forma seguente: (A, a, B, b, dir) Una regola viene applicata se lo stato corrente della macchina è A e il simbolo letto dalla testina è a L’applicazione della regola cambia lo stato in B, scrive sul nastro b ed eventualmente sposta la testina di una cella a sinistra o a destra (dir)

Il funzionamento di una MdT La macchina opera come segue: Determina la regola da applicare in base allo stato interno e al simbolo corrente (quello letto dalla testina) Se esiste una tale regola cambia lo stato, scrive il simbolo sulla cella corrente si sposta come indicato dalla regola Se non esiste la regola l’esecuzione termina In questo modello non può esistere più di una regola per uno stato ed un simbolo corrente

Esempio: cambiamo A in B Vogliamo programmare una Macchina di Turing che, dato sul nastro di input una stringa di A e B, rimpiazza ogni occorrenza di A in B e viceversa Assumendo che la testina sia posizionata sul primo simbolo della stringa dobbiamo cambiare una A in B (o viceversa) spostare la testina sul prossimo carattere

Cambiamo A in B (continua) Le regole corrispondenti sono: (0, A, 0, B, >) (0, B, 0, A, >) In questo caso è sufficiente lo stato 0 Al termine della stringa l’esecuzione sarà arrestata

Esempio: le palindrome Si vuole una macchina di Turing che scriva sul nastro S se una stringa di A e B è palindroma Una stringa è palindroma se può essere letta indifferentemente da destra a sinistra e viceversa Idea: si cancella un carattere ad un estremo e si cancella il corrispondente all’altro estremo. Quando il nastro è vuoto scriviamo S

Le palindrome (continua) Le regole sono: (0 , A, cA, -, >) (cB, -, vB, -, <) (0 , B, cB, -, >) (vA, A, vI, -, <) (cA, A, cA, A, >) (vB, B, vI, -, <) (cA, B, cA, B, >) (vI, A, vI, A, <) (cA, -, vA, -, <) (vI, B, vI, B, <) (cB, A, cB, A, >) (vI, -, 0 , -, >) (cB, B, cB, B, >) (0, -, End, S, -)

Un risultato profondo Con la Macchina di Turing è possibile dimostrare che è possibile immaginare funzioni che non si possono calcolare Tesi (Church-Turing): la macchina di Turing calcola tutte le funzioni calcolabili Un risultato profondo sulle capacità dell’uomo Un esempio? Dato un programma e un suo input dire se l’esecuzione terminerà

Formare! Concentrarsi sul risolvere un problema come una scomposizione di passi elementari eseguiti dalla macchina Offrire uno spunto che sia anche fondazionale alle scuole superiori per uscire dalla sindrome del Pascal Mettere tutti sullo stesso piano

Per l’attenzione e per il supporto! Grazie! Per l’attenzione e per il supporto!