Principio di composizione delle MT

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Principio di composizione delle MT"

Transcript

1 Principio di composizione delle MT La definizioni date fanno riferimento a situazioni in cui la macchina sia capace di risolvere problemi singoli. E possibile far sì che macchine progettate per problemi elementari possano essere combinate in modo da svolgere compiti più complessi. Intuitivamente, è possibile far subentrare ad una macchina A che si arresta un altra macchina B a seconda del simbolo osservato nello stato finale della macchina A. Ogni macchina può essere vista come un dispositivo capace di risolvere un problema dato avendo al suo interno il programma di macchina cablato. Volendo fare il parallelo con i moderni calcolatori è come se il programma fosse memorizzato in una memoria ROM.

2 Esempio di composizione Vengono messe assieme le macchine relative all esempio 2 e all esempio 3. Esempio2! q 0 q 1 q q D q # 1 q 0 1 D q # 2 q 0 2 D q ## 3 q 0 3 D q ## 4 q 0 4 D q # 5 q 0 5 D qqq q # 6 q 0 6 D qq # 7 q 0 7 D q q # 8 q 0 8 D qq q q # # 9q 0 9 D q # 0 S " S q 1 q # 1 q 0 a D "Sq 2 S Esempio3! q 0 q 1 q 2 " D Dq 0 q 1 "Dq 2 S D * " q # S D Contatore di una sequenza di caratteri Lo stato di stop della prima macchina viene convertito nello stato iniziale della seconda. Eventualmente si procede ad una ridenominazione degli stati. Somma di due numeri, separati dal carattere *, dati come sequenza di caratteri

3 Esempio di composizione! q 0 q 1 q 2 q 3 q 4 q 5 Macchina che accetta due serie di sbarre separate da un carattere *, ne calcola la somma e trasforma la somma come numero decimale. 0 D q # 1 q 3 1 D q # 2 q 3 2 D q # 3 q 3 3 D q # 4 q 3 La macchina inizia la sua computazione sommando sequenze di caratteri separati dal carattere *. Lo stato di stop, individuato dalla coppia con (q 0, *) attiva la scansione della stringa di caratteri per poterli contare 4 D q # 5 q 3 5 D q # 6 q 3 6 D q # 7 q 3 7 D q # 8 q 3 8 D q # 9 q 3 9 D q # 0 S " D Dq 0 q 1 S q 4 q # 1 q 3 "Dq 2 S D D "Sq 5 S * " q 3 S D

4 Tesi di Church-Turing Il principio di Composizione rende possibile la costruzione di macchine che risolvono problemi di notevole complessità. Ipotesi fondamentale della Teoria degli Algoritmi. Tutti gli algoritmi possono essere formulati sotto forma di matrici funzionali e quindi eseguiti dalla corrispondente macchina di Turing. L ipotesi non si riferisce solo agli algoritmi già scoperti, ma anche a tutti quelli che si potranno scoprire nel futuro. Questa ipotesi risulta indimostrabile in quanto alla nozione (vaga) di tutti gli algoritmi corrisponde la nozione (matematica) di Macchina di Turing. Tuttavia 1. Tutti gli algoritmi conosciuti possono essere espressi come matrici funzionali 2. Tutte le definizioni formali di algoritmo (Algoritmi normali di Markov, Funzioni ricorsive di Kleene e Godel etc.) arrivano alle stesse conclusioni.

5 Teorema di Jacopini-Bohm In particolare, il Teorema di Jacopini-Bohm (1966) mostra che ogni funzione calcolabile con una macchina di Turing è anche calcolabile con un programma scritto in un linguaggio che compone sottoprogrammi con tre operatori: - esecuzione sequenziale di due sottoprogrammi ( ; ) - scelta dell esecuzione tra due sottoprogrammi a seconda del valore di una condizione booleana (if then else) - esecuzione ripetuta di un sottorogramma fino a che una variabile booleana è vera (while ) Questo teorema implica che tutti i normali linguaggi di programmazione sono TURING-EQUIVALENT, hanno cioè la stessa potenza espressiva delle Macchine di Turing.

6 Macchina di Turing Universale Per le Macchine di Turing viste fino ad ora si fa l implicita assunzione che siano dispositivi hardware in cui il programma (la matrice funzionale) è cablato al loro interno. E possibile tuttavia costruire una macchina U (Macchina di Turing Universale) capace di accettare in ingresso una macchina di Turing M con il proprio input w e simularne l esecuzione. Cioè: U( M w ) = M(w) M(w) è una stringa che rappresenta il risultato della Macchina M sull ingresso w. In altre parole il comportamento della macchina universale U è tale che essa si ferma se e solo se M si ferma sul input w. La macchina di Turing Universale si comporta analogamente ad un qualunque computer attuale nel senso che accetta in input una stringa M, w che è assimilabile perciò all usuale programma seguito dai propri dati di ingresso. Occorre tuttavia precisare in che modo si possa codificare una Macchina di Turing sul nastro.

7 (Una) codifica di una Macchina di Turing L obiettivo è quello di esprimere in una stringa binaria ogni possibile macchina di Turing. Lo schema di codifica potrebbe essere il seguente: Simbolo Codice s 0 1 s 1 11 s s n 1 n+1! 1 n+2 Codifica dei simboli di nastro (la potenza si riferisce alla concatenazione dei simboli) q 0 1 q q Y 1 n+2 Codifica degli stati S 1 D 1 1 F Codifica degli spostamenti

8 Esempio di Codifica Macchina che accetta stringhe che iniziano con 0 oppure con 11 Si definisce una funzione di codifica EN(x) che codifica il simbolo codice simbolo x.! q q q Una transizione " Dq " q 1!(q, x) = (y, d, q ) 0 i j 0 q q 11 Y 1 con q Dq q q Y Y d #{S,D,F} e x, y #{0,1, "} S 1 D 11 viene codificata nel seguente modo F 111 EN(q i ) 0 EN(x) 0 EN(y) 0 EN(d) 0 EN(q j )

9 Esempio di codifica cont Pertanto le quattro transizioni indicate nella matrice funzionale sono così codificate!(q 0, ") = (",D,q 1 ) !(q 1,0) = 0, F, q Y !(q 1,1) = (1,D,q 2 ) !(q 2,1) = 1, F, q Y simbolo codice q 0 1 q 1 11 q q Y 1111 S 1 D 11 F 111 Si fa la convenzione che due transizioni siano separate tra di loro dalla coppia 00 e che l inizio e la fine della stringa di codifica della matrice di transizione sia rappresentata da 000, pertanto: Ne deriva che, ad esempio se vogliamo attivare la macchina M con un input 11, la stringa: non è altro che la stringa M w, che può essere interpretata come la macchina con matrice funzionale M applicata alla stringa di input 11.

10 Enumerazione di Macchine di Turing - Il sistema di codifica di una macchina di Turing ci porta a dire che queste possono essere enumerate, cioé è possibile costruire una corrispondenza tra le stringhe binarie che rappresentano le macchine di Turing e i naturali. - E sempre possibile mettere in relazione ciascuna macchina con il proprio input o, detto in altre parole, tutte le stringhe di input accettate dalla MT costituiscono il linguaggio riconosciuto dalla macchina stessa. L(Mj) = { w #! " q 0 w $ * x q y con q# Z } M w wk.... ws Mi.. Mj Una volta enumerate tutte le stringhe wi di! ", per ogni Mj è possibile definire il suo vettore caratteristico cioé un vettore che ha un 1 in corrispondenza delle stringhe wi che sono accettate dalla macchina Mj e che appartengono quindi al linguaggio L(Mj ).

11 Problema della terminazione TEOREMA: E indecidibile dire se una macchina di Turing termina la sua computazione La dimostrazione si fa per assurdo. Sia H una Macchina di Turing che risolve il problema, ciò significa che: 1. L input di H è costituito dalla stringa M w 2. Una stringa è accettata da H se la computazione di M termina altrimenti la stringa è rifiutata "M""w" H M si ferma con input w M non si ferma con input w HALT/accettazione HALT/rigetto A partire da H si costruisce la macchina H che effettua le stesse computazioni di H eccetto che H cicla indefinitivamente se H termine in uno stato di accettazione. L idea per la costruzione di H è quella di creare una macchina che si ferma se la macchina di input non si ferma e non si ferma se la macchina di input si ferma. Ciò si può facilmente ottenere se ad esempio si addizionano ad H transizioni che muovono la testina indefinitivamente a destra se H raggiunge lo stato di accettazione.

12 Problema della terminazione cont. "M""w" H' M si ferma con input w M non si ferma con input w LOOP HALT/rigetto Il passo successivo è quello di combinare la macchina H con una macchina Copia che sia capace di replicare il suo input. M COPIA "M "M" D H' M si ferma con input M M non si ferma con input M LOOP HALT/rigetto La macchina D accetta in input una matrice funzionale ne crea una copia e fornisce la coppia M M in ingresso ad H la cui esecuzione da parte di H produce la stringa M(M) ovvero il risultato della M applicata a se stessa.

13 Problema della terminazione cont. Poiché è possibile codificare ogni macchina di Turing come stringa binaria anche la macchina D può essere codificata e data in input a D stessa. D COPIA "D" "D" D H' D si ferma con input D D non si ferma con input D LOOP HALT/rigetto Si ha contraddizione in quanto la macchina D si ferma se si verifica la condizione che D non si ferma sull input D. Oppure D non si ferma se D si ferma sull input D.

14 La macchina universale Una immediata conseguenza della dimostrazione è la seguente Corollario il linguaggio L H = {M (w) M rappresenta una macchina di Turing che si ferma con input w} sull alfabeto {0,1}* è un linguaggio non ricorsivo [e quindi non decidibilie]. L H in altre parole è costituito dalle stringhe che rappresentano una MT seguita dall input da essa accettato ovvero che corrispondono ai valori 1 del vettore caratteristico della MT. Tuttavia è possibile dimostrare il seguente Teorema: il linguaggio L H è ricorsivamente enumerabile [e quindi semidecidibile]. Sapendo perciò che un linguaggio ricorsivo è anche ricorsivamente numerabile si avrà l importante risultato: Corollario: la classe dei linguaggi ricorsivi è contenuta in modo proprio nella classe dei linguaggi ricorsivamente enumerabili ovvero L R! L RE La dimostrazione del teorema si basa su una macchina universale che lavora secondo il seguente schema "M""w" U M si ferma con input w M non si ferma con input w Accettazione Loop In sintesi si deve dimostrare che la macchina universale U simula perfettamente ogni altra Macchina di Turing

15 Ricorsiva enumerabilità di L H La dimostrazione verrà fatta con una macchina a tre nastri. Nel nastro 1 verrà codificato l input mentre il nastro 3 verrà usato per effettuare la simulazione dell esecuzione della macchina M. Una computazione della macchina U viene ad essere definita nel seguente modo: 1. Se la stringa di input non è della forma M w, U si muove indefinitivamente verso destra. 2. Viene ricopiata la stringa w sul nastro 3, la testina viene quindi riposizionata a sinistra al primo carattere, cosicché sul nastro 3 viene ad essere definita la configurazione iniziale di una computazione di M con input w. 3. viene scritto sul nastro 2 lo stato q 0 (il simbolo 1 nella nostra codifica) 4. Passo di simulazione. La transizione di M viene determinata dal simbolo x scandito sul nastro 3 e lo stato q i codificato sul nastro 2. a) Viene scandito il nastro 1 alla ricerca della coppia EN(q i ) EN (x) se tale transizione non esiste U si ferma e accetta l input (configurazione finale). b) Assunto che il nastro 1 contenga la transizione EN(q i ) 0 EN(x) 0 EN(y)0 EN(d) 0 EN(q j ) i) EN(q i ) è rimpiazzato da EN(q j ) sul nastro 2 ii) il simbolo y è scritto sul nastro 3 iii) la testina del nastro 3 è mossa nella direzione specificata da d 5. si ripete il passo di simulazione (punti 4 e 5) La simulazione della macchina U accetta stringhe in L H mentre per stringhe in {0,1}* - L H cicla indefinitivamente. Poiché L H = L(U) L H è ricorsivamente enumerabile essendo ricorsivamente enumerabile L(U).

16 Indecidibilità del Linguaggio di diagonalizzazione Ld = { wi! "* wi! L(Mi} Teorema il linguaggio Ld è non ricorsivamente enumerabile Ld = tutte le stringhe wi tali che wi non è in L(Mi) M Mi Mj w Supponiamo wj ws Ld = L(M) per una macchina M, allora deve esistere una Macchina di Turing nella enumerazione ovvero un indice i che individua la macchina M i che riconosce w i! L d se wi! Ld allora Mi accetta wi pertanto per definizione di Ld wi non è in Ld poiché Ld contiene solo stringhe wj tale che Mj non accetta wj - se wi! Ld allora Mi non accetta wi pertanto per definizione di Ld wi è in Ld Evidentemente si ha contraddizione poiché wi non può essere o non essere in Ld

Tipologie di macchine di Turing

Tipologie di macchine di Turing Tipologie di macchine di Turing - Macchina di Turing standard - Macchina di Turing con un nastro illimitato in una sola direzione - Macchina di Turing multinastro - Macchina di Turing non deterministica

Dettagli

La macchina universale

La macchina universale La macchina universale Una immediata conseguenza della dimostrazione è la seguente Corollario il linguaggio L H = {M (w) M rappresenta una macchina di Turing che si ferma con input w} sull alfabeto {0,1}*

Dettagli

Linguaggio universale, riduzioni, e teorema di Rice. Linguaggio universale, riduzioni, e teorema di Rice

Linguaggio universale, riduzioni, e teorema di Rice. Linguaggio universale, riduzioni, e teorema di Rice l linguaggio universale Il linguaggio universale L u e l insieme delle stringhe binarie che codificano una coppia (M,w) dove w L(M). Esiste una TM U, detta TM universale, tale che L u = L(U). U ha tre

Dettagli

Ma il programma in Fig. 8.2 del libro? Stampa hello, world, dato un input n se e solo se l equazione

Ma il programma in Fig. 8.2 del libro? Stampa hello, world, dato un input n se e solo se l equazione Problemi che i calcolatori non possono risolvere E importante sapere se un programma e corretto, cioe fa uello che ci aspettiamo. E facile vedere che il programma Ma il programma in Fig. 8.2 del libro?

Dettagli

Capitolo 5: Macchine di Turing e calcolabilitá secondo Turing

Capitolo 5: Macchine di Turing e calcolabilitá secondo Turing Capitolo 5: Macchine di Turing e calcolabilitá secondo Turing 1 Macchina di Turing (MDT ) Un dispositivo che accede a un nastro (potenzialmente) illimitato diviso in celle contenenti ciascuna un simbolo

Dettagli

Teoria della Calcolabilità!

Teoria della Calcolabilità! Teoria della Calcolabilità!! Si occupa delle questioni fondamentali circa la potenza e le limitazioni dei sistemi di calcolo.!! L'origine risale alla prima metà del ventesimo secolo, quando i logici matematici

Dettagli

Informatica teorica Lez. n 7 Macchine di Turing. Macchine di Turing. Prof. Giorgio Ausiello Università di Roma La Sapienza

Informatica teorica Lez. n 7 Macchine di Turing. Macchine di Turing. Prof. Giorgio Ausiello Università di Roma La Sapienza Macchine di Turing Argomenti della lezione Definizione della macchina di Turing Riconoscimento e accettazione di linguaggi Macchine a più nastri La macchina di Turing èun è automa che può leggere e scrivere

Dettagli

Concetti di base sugli automi e sui linguaggi formali

Concetti di base sugli automi e sui linguaggi formali Concetti di base sugli automi e sui linguaggi formali Andrea Burattin 18 marzo 2005 Sommario Piccolo insieme di concetti sul funzionamento degli automi (a stati finiti, a pila,...), delle grammatiche libere

Dettagli

Turing cercò di fornire una risposta matematica al problema CHE COSA SIGNIFICA CALCOLARE?

Turing cercò di fornire una risposta matematica al problema CHE COSA SIGNIFICA CALCOLARE? STORIA DELLE CONOSCENZE SCIENTIFICHE SULL UOMO E SULLA NATURA a.a. 2016 2017 Prof. Roberto Giuntini, PhD. Introduzione alla storia dell intelligenza artificiale e della robotica Modulo II: Le macchine

Dettagli

Fondamenti di Informatica per la Sicurezza a.a. 2008/09. Automi. Stefano Ferrari. Unautomaastatifinitièunmodellomatematico caratterizzato da:

Fondamenti di Informatica per la Sicurezza a.a. 2008/09. Automi. Stefano Ferrari. Unautomaastatifinitièunmodellomatematico caratterizzato da: Fondamenti di Informatica per la Sicurezza a.a. 2008/09 Automi Stefano Ferrari UNIVERSITÀ DEGLI STUDI DI MILANO DIPARTIMENTO DI TECNOLOGIE DELL INFORMAZIONE Stefano Ferrari Università degli Studi di Milano

Dettagli

Macchine di Turing. Francesco Paoli. Istituzioni di logica, Francesco Paoli (Istituzioni di logica, ) Macchine di Turing 1 / 29

Macchine di Turing. Francesco Paoli. Istituzioni di logica, Francesco Paoli (Istituzioni di logica, ) Macchine di Turing 1 / 29 Macchine di Turing Francesco Paoli Istituzioni di logica, 2016-17 Francesco Paoli (Istituzioni di logica, 2016-17) Macchine di Turing 1 / 29 Alan M. Turing (1912-1954) Francesco Paoli (Istituzioni di logica,

Dettagli

La tesi di Church-Turing

La tesi di Church-Turing ITLCC 2006/11/12 21:06 page 79 #3 Capitolo 5 La tesi di Church-Turing SOMMARIO Sebbene il concetto di algoritmo abbia avuto una lunga storia nel campo della matematica, il concetto formale di algoritmo

Dettagli

Sommario Codifica dei dati Macchina Astratta Definizioni Esempi

Sommario Codifica dei dati Macchina Astratta Definizioni Esempi Sommario Codifica dei dati Macchina Astratta Definizioni Esempi 1 2 Codifica dei dati È possibile introdurre la teoria della computabilità facendo riferimento ad algoritmi che elaborano numeri naturali

Dettagli

Teoria della Calcolabilità!

Teoria della Calcolabilità! Teoria della Calcolabilità! Si occupa delle questioni fondamentali circa la potenza e le limitazioni dei sistemi di calcolo.! L'origine risale alla prima metà del ventesimo secolo, quando i logici matematici

Dettagli

La macchina di Turing

La macchina di Turing La macchina di Turing (Esercitazione) I. Frosio AIS Lab. frosio@dsi.unimi.it 1/32 Cosa è la macchina di Turing? Algoritmo: sequenza di istruzioni elementari che termina in un numero finito di passi; Macchina

Dettagli

Corso di Linguaggi di Programmazione

Corso di Linguaggi di Programmazione Corso di Linguaggi di Programmazione Lezione 2 Alberto Ceselli alberto.ceselli@unimi.it Dipartimento di Tecnologie dell Informazione Università degli Studi di Milano 09 Marzo 2010 Controlli automatici

Dettagli

ELEMENTI DI PROGRAMMAZIONE a.a. 2012/13 MACCHINE, ALGORITMI, PROGRAMMI

ELEMENTI DI PROGRAMMAZIONE a.a. 2012/13 MACCHINE, ALGORITMI, PROGRAMMI ELEMENTI DI PROGRAMMAZIONE a.a. 22/3 MACCHINE, ALGORITMI, PROGRAMMI Andrea Prevete, UNINA2 23 UNA GERARCHIA DI MACCHINE macchine combinatorie macchine sequenziali (automi a stati finiti)... macchine di

Dettagli

Aniello Murano Problemi non decidibili e riducibilità

Aniello Murano Problemi non decidibili e riducibilità Aniello Murano Problemi non decidibili e riducibilità 8 Lezione n. Parole chiave: Riduzione Corso di Laurea: Informatica Codice: Email Docente: murano@ na.infn.it A.A. 2008-2009 Overview Nelle lezioni

Dettagli

Informatica Teorica. Appunti della lezione su tesi di Church-Turing e problemi indecidibili

Informatica Teorica. Appunti della lezione su tesi di Church-Turing e problemi indecidibili Informatica Teorica Appunti della lezione su tesi di Church-Turing e problemi indecidibili Tesi di Church- Turing Nel 1936, Church propone di assimilare il conce:o informale di computabilità con il conce:o

Dettagli

Capitolo 1 Linguaggi e Macchine Astratte

Capitolo 1 Linguaggi e Macchine Astratte Università degli Studi di Bologna Scuola di Ingegneria e Architettura Capitolo 1 Linguaggi e Macchine Astratte Corso di Laurea Magistrale in Ingegneria Informatica Anno accademico 2014/2015 Prof. ENRICO

Dettagli

Macchine di TURING. Alan Mathison Turing ( )

Macchine di TURING. Alan Mathison Turing ( ) Macchine di TURING Alan Mathison Turing (1912 1954) Macchine di TURING Alan Mathison Turing (1912 1954) matematico, logico e crittanalista britannico, considerato uno dei padri dell informatica e uno dei

Dettagli

Macchina di Turing ... !!... !!! a b b! b a! Nastro di Input. testina. s t q i. s r. Unità di Controllo q j S / D / F

Macchina di Turing ... !!... !!! a b b! b a! Nastro di Input. testina. s t q i. s r. Unità di Controllo q j S / D / F Macchina di Turing Nastro di Input...!!! a b b! b a! testina!!... s r s t q i Unità di Controllo q j Q S / D / F P Definizione Formale Una macchina di Turing deterministica è una sestupla

Dettagli

Il calcolatore universale, origini e nuovi paradigmi

Il calcolatore universale, origini e nuovi paradigmi Il calcolatore universale, origini e nuovi paradigmi Lucia Pomello Università degli studi di Milano Bicocca Dipartimento di Informatica, Sistemistica e Comunicazione 24 febbraio 2017 L evoluzione dell

Dettagli

Parte I.5 Cenni alla computazione

Parte I.5 Cenni alla computazione Parte I.5 Cenni alla computazione Elisabetta Ronchieri Università di Ferrara Dipartimento di Economia e Management Insegnamento di Informatica Dicembre 14, 2015 Elisabetta Elisabetta Ronchieri I Concetti

Dettagli

Problemi, algoritmi, calcolatore

Problemi, algoritmi, calcolatore Problemi, algoritmi, calcolatore Informatica e Programmazione Ingegneria Meccanica e dei Materiali Università degli Studi di Brescia Prof. Massimiliano Giacomin Problemi, algoritmi, calcolatori Introduzione

Dettagli

Introduzione alla programmazione

Introduzione alla programmazione Introduzione alla programmazione Risolvere un problema Per risolvere un problema si procede innanzitutto all individuazione Delle informazioni, dei dati noti Dei risultati desiderati Il secondo passo consiste

Dettagli

Macchina di Turing Universale

Macchina di Turing Universale Informatica Teorica 2010/2011 M.Di Ianni Macchina di Turing Universale Vogliamo definire una macchina di Turing U che, presi in input la descrizione di una macchina di Turing ad un nastro T ed un input

Dettagli

Costruzione di espressioni regolari 4

Costruzione di espressioni regolari 4 ostruzione di espressioni regolari 4 Indicando con d uno dei possibili digits {,, 2,,9} --possiamo esprimere il sotto linguaggio dei digits come d = ( + + 2 +.. + 9) Quale linguaggio produce l espressione:

Dettagli

Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore

Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori Elementi di Programmazione Algoritmi e programmi Algoritmo Sequenza

Dettagli

Fondamenti dell informatica

Fondamenti dell informatica Fondamenti dell informatica Macchine a registri Rosario Culmone rosario.culmone@unicam.it 9/4/2008 UNICAM - p. 1/24 Modello di calcolo basato sui calcolatori Le macchine a registri (RAM: Random Access

Dettagli

Introduzione alla programmazione Algoritmi e diagrammi di flusso. Sviluppo del software

Introduzione alla programmazione Algoritmi e diagrammi di flusso. Sviluppo del software Introduzione alla programmazione Algoritmi e diagrammi di flusso F. Corno, A. Lioy, M. Rebaudengo Sviluppo del software problema idea (soluzione) algoritmo (soluzione formale) programma (traduzione dell

Dettagli

Alcune Tracce dei Precedenti Esami del Dottorato di Siena in Logica Matematica ed Informatica Teorica

Alcune Tracce dei Precedenti Esami del Dottorato di Siena in Logica Matematica ed Informatica Teorica Alcune Tracce dei Precedenti Esami del Dottorato di Siena in Logica Matematica ed Informatica Teorica Raccolti e curati da Luca Spada Indice 1 Temi 1 1.1 Logica Matematica.......................... 1 1.2

Dettagli

Matlab. Istruzioni condizionali, cicli for e cicli while.

Matlab. Istruzioni condizionali, cicli for e cicli while. Matlab. Istruzioni condizionali, cicli for e cicli while. Alvise Sommariva Università degli Studi di Padova Dipartimento di Matematica 17 marzo 2016 Alvise Sommariva Introduzione 1/ 18 Introduzione Il

Dettagli

Il Concetto Intuitivo di Calcolatore. Esercizio. I Problemi e la loro Soluzione. (esempio)

Il Concetto Intuitivo di Calcolatore. Esercizio. I Problemi e la loro Soluzione. (esempio) Il Concetto Intuitivo di Calcolatore Elementi di Informatica e Programmazione Ingegneria Gestionale Università degli Studi di Brescia Docente: Prof. Alfonso Gerevini Variabile di uscita Classe di domande

Dettagli

ELABORAZIONE DELLE INFORMAZIONI (ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE)

ELABORAZIONE DELLE INFORMAZIONI (ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE) 1 LEZIONE 9 ELABORAZIONE DELLE INFORMAZIONI (ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE) Laboratorio di Informatica per l Educazione A. A. 2014/2015 IN SINTESI (ELABORAZIONE) Con i COMPUTER, le macchine diventano

Dettagli

Note del corso di Calcolabilità e Linguaggi Formali - Lezione 8

Note del corso di Calcolabilità e Linguaggi Formali - Lezione 8 Note del corso di Calcolabilità e Linguaggi Formali - Lezione 8 Alberto Carraro DAIS, Università Ca Foscari Venezia http://www.dsi.unive.it/~acarraro 1 Insiemi e predicati ricorsivi e ricorsivamente enumerabili

Dettagli

Appunti del corso di Informatica 1 (IN110 Fondamenti) 3 Modelli di calcolo

Appunti del corso di Informatica 1 (IN110 Fondamenti) 3 Modelli di calcolo Università Roma Tre Dipartimento di Matematica e Fisica Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 3 Modelli di calcolo Marco Liverani (liverani@mat.uniroma3.it)

Dettagli

Problemi senza soluzione

Problemi senza soluzione Problemi senza soluzione La Tesi di Church-Turing Nelle lezioni precedenti abbiamo visto il modello di calcolo delle macchine di Turing, caratterizzato da: assunzioni molto semplici operazioni di base

Dettagli

Funzioni calcolabili e linguaggi decidibili

Funzioni calcolabili e linguaggi decidibili Informatica Teorica 2012/2013 M.Di Ianni Funzioni calcolabili e linguaggi decidibili Abbiamo definito i concetti di accettabilità e decidibiltà di un linguaggio, che sono correlati al modello di macchina

Dettagli

Il concetto di calcolatore e di algoritmo

Il concetto di calcolatore e di algoritmo Il concetto di calcolatore e di algoritmo Elementi di Informatica e Programmazione Percorso di Preparazione agli Studi di Ingegneria Università degli Studi di Brescia Docente: Massimiliano Giacomin Informatica

Dettagli

Le parole dell informatica: algoritmo e decidibilità

Le parole dell informatica: algoritmo e decidibilità Le parole dell informatica: algoritmo e decidibilità Angelo Montanari Dipartimento di Matematica e Informatica Università degli Studi di Udine Ciclo di seminari su un Vocabolario Filosofico dell Informatica

Dettagli

in termini informali: un algoritmo è una sequenza ordinata di operazioni che risolve un problema specifico

in termini informali: un algoritmo è una sequenza ordinata di operazioni che risolve un problema specifico Click to edit Algoritmo Master title style algoritmo: un insieme ordinato di operazioni non ambigue ed effettivamente computabili che, quando eseguito, produce un risultato e si arresta in un tempo finito

Dettagli

ELEMENTI DI PROGRAMMAZIONE a.a. 2013/14 UNA GERARCHIA DI MACCHINE

ELEMENTI DI PROGRAMMAZIONE a.a. 2013/14 UNA GERARCHIA DI MACCHINE ELEMENTI DI PROGRAMMAZIONE a.a. 23/4 UNA GERARCHIA DI MACCHINE Andrea Prevete, UNINA2 24 UNA GERARCHIA DI MACCHINE macchine combinatorie macchine sequenziali (automi a numero finito di stati)... macchine

Dettagli

Dispensa di Informatica II.1

Dispensa di Informatica II.1 ALGORITMI La dispensa di seguito proposta si pone come tutorial per poter porre le basi per la realizzazione di algoritmi che poi potranno eventualmente essere sviluppati in moduli software con metodologia

Dettagli

Macchine di Turing, problemi ricorsivi e ricorsivamente enumerabili

Macchine di Turing, problemi ricorsivi e ricorsivamente enumerabili Macchine di Turing, problemi ricorsivi e ricorsivamente enumerabili roblemi che i calcolatori non possono risolvere E importante sapere se un programma e corretto, cioe fa quello che ci aspettiamo. E facile

Dettagli

Fondamenti di Informatica 6. Algoritmi e pseudocodifica

Fondamenti di Informatica 6. Algoritmi e pseudocodifica Vettori e matrici #1 Fondamenti di Informatica 6. Algoritmi e pseudocodifica Corso di Laurea in Ingegneria Civile A.A. 2010-2011 1 Semestre Prof. Giovanni Pascoschi Le variabili definite come coppie

Dettagli

e Algoritmi Marco Piastra Intelligenza Artificiale I Soddisfacibilità

e Algoritmi Marco Piastra Intelligenza Artificiale I Soddisfacibilità Intelligenza Artificiale I Soddisfacibilità e Algoritmi Marco Piastra Intelligenza Artificiale I - A.A. 2010- Soddisfacibilità e Semantic Tableau [1] Problemi e decidibilità (automatica) Problema Un problema

Dettagli

Capitolo 8: Teoria della complessitá

Capitolo 8: Teoria della complessitá Capitolo 8: Teoria della complessitá 1 La Teoria della calcolabilitá considera aspetti qualitativi della soluzione di problemi. Distingue il calcolabile dal non calcolabile. La Teoria della complessitá

Dettagli

Esempio stringhe palindrome 1

Esempio stringhe palindrome 1 Esempio stringhe palindrome 1 Automa per il riconoscimento del linguaggio L = {w c w R } A = < {s,f}, {a,b,c}, {a,b},!, s, { f } > con! che contiene le transizioni: 1. (( s, a, " ), (s, a)! [ push a] 2.

Dettagli

Fondamenti di Informatica. Algoritmo. Algoritmo funzionale. Prof.ssa Enrica Gentile Informatica e Comunicazione Digitale a.a.

Fondamenti di Informatica. Algoritmo. Algoritmo funzionale. Prof.ssa Enrica Gentile Informatica e Comunicazione Digitale a.a. Fondamenti di Informatica Prof.ssa Enrica Gentile Informatica e Comunicazione Digitale a.a. 2011-2012 Algoritmo L algoritmo è una sequenza finita di istruzioni, mediante le quali un qualunque operatore

Dettagli

Informatica Teorica. Macchine a registri

Informatica Teorica. Macchine a registri Informatica Teorica Macchine a registri 1 Macchine a registri RAM (Random Access Machine) astrazione ragionevole di un calcolatore nastro di ingresso nastro di uscita unità centrale in grado di eseguire

Dettagli

Linguaggi e Ambienti di Programmazione

Linguaggi e Ambienti di Programmazione Linguaggi e Ambienti di Programmazione Principi e tecniche diffuse che si incontrano spesso nelle applicazioni dell informatica. Compilatori Editor di struttura: riceve in input una sequenza di comandi

Dettagli

Descrizione delle operazioni di calcolo. Espressioni costanti semplici

Descrizione delle operazioni di calcolo. Espressioni costanti semplici Descrizione delle operazioni di calcolo Come abbiamo detto l interprete è in grado di generare nuovi valori a partire da valori precedentemente acquisiti o generati. Il linguaggio di programmazione permette

Dettagli

PROGRAMMAZIONE STRUTTURATA

PROGRAMMAZIONE STRUTTURATA PROGRAMMAZIONE STRUTTURATA Programmazione strutturata 2 La programmazione strutturata nasce come proposta per regolamentare e standardizzare le metodologie di programmazione (Dijkstra, 1965) Obiettivo:

Dettagli

Fondamenti d Informatica: Le Macchine di Turing. Barbara Re, Phd

Fondamenti d Informatica: Le Macchine di Turing. Barbara Re, Phd Fondamenti d Informatica: Le Macchine di Turing Barbara Re, Phd Agenda } Introdurremo } il formalismo delle Macchine di Turing nelle varie versioni } la nozione di calcolabilità e di decidibilità 2 La

Dettagli

Altrimenti, il M.C.D. di a e b è anche divisore di r (e.g. a=15,b=6,r=3 che è il M.C.D.)

Altrimenti, il M.C.D. di a e b è anche divisore di r (e.g. a=15,b=6,r=3 che è il M.C.D.) Elaboratore Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni sui dati digitale l informazione è rappresentata in forma numerica

Dettagli

L AUTOMA ESECUTORE L AUTOMA ESECUTORE

L AUTOMA ESECUTORE L AUTOMA ESECUTORE L AUTOMA ESECUTORE Metodo Risolutivo (algoritmo) Un automa capace di ricevere dall esterno una descrizione dello algoritmo richiesto DATI Esecutore RISULTATI cioè capace di interpretare un linguaggio (linguaggio

Dettagli

Elementi di Complessità Computazionale

Elementi di Complessità Computazionale Elementi di Complessità Computazionale Ultima modifica 23.06.2004 Il problema Esiste una misura oggettiva per valutare l'efficienza di un algoritmo? In che relazione sono gli input di un algoritmo con

Dettagli

ITLCC 2006/10/6 19:09 page 7 #3

ITLCC 2006/10/6 19:09 page 7 #3 ITLCC 2006/10/6 19:09 page 7 #3 Capitolo 2 Macchine di Turing SOMMARIO In questo capitolo introdurremo il modello di calcolo proposto dal logico matematico inglese Alan Turing, in un suo famoso articolo

Dettagli

ALGORITMI: PROPRIETÀ FONDAMENTALI

ALGORITMI: PROPRIETÀ FONDAMENTALI ALGORITMI: PROPRIETÀ FONDAMENTALI Non si può risolvere un problema senza prima fissare un insieme di azioni, i di mosse elementari possibili per l'esecutore. Bisogna conoscerne le caratteristiche, le mosse

Dettagli

Espressioni regolari

Espressioni regolari spressioni Regolari Un FA (NFA o DFA) e una macchina a stati finiti che riconosce linguaggi regolari. Una espressione regolare e un modo dichiarativo (o algebrico) per descrivere un linguaggio regolare.

Dettagli

Algoritmi, Strutture Dati e Programmi. UD 1.d: Dati e Tipi di Dato

Algoritmi, Strutture Dati e Programmi. UD 1.d: Dati e Tipi di Dato Algoritmi, Strutture Dati e Programmi : Dati e Tipi di Dato Prof. Alberto Postiglione AA 2007-2008 Università degli Studi di Salerno Dati: Variabili e Costanti Un algoritmo (e il programma che ne è rappresentazione)

Dettagli

Aniello Murano Space Complexity

Aniello Murano Space Complexity Aniello Murano Space Complexity Lezione n. Parole chiave: Space Corso di Laurea: Informatica Codice: Email Docente: murano@ na.infn.it A.A. 2008-2009 Definizione Space- complexity Definizione: Sia M un

Dettagli

Capitolo 5: Macchine di Turing e calcolabilitá secondo Turing

Capitolo 5: Macchine di Turing e calcolabilitá secondo Turing Capitolo 5: Macchine di Turing e calcolabilitá secondo Turing 1 Macchina di Turing (MDT ) Un dispositivo che accede a un nastro (potenzialmente) illimitato diviso in celle contenenti ciascuna un simbolo

Dettagli

AUTOMA A STATI FINITI

AUTOMA A STATI FINITI Gli Automi Un Automa è un dispositivo, o un suo modello in forma di macchina sequenziale, creato per eseguire un particolare compito, che può trovarsi in diverse configurazioni più o meno complesse caratterizzate

Dettagli

PARTE III MACCHINE A REGISTRI

PARTE III MACCHINE A REGISTRI PARTE III MACCHINE A REGISTRI Macchine a registri (RAM) Modelli di costo RAM e macchine di Turing Macchine a registri elementari 1 3.1 MACCHINE A REGISTRI (RAM: Random Access Machines) Introdotte da Shepherdson

Dettagli

INFORMATICA. Scienza dei calcolatori elettronici (computer science) Scienza dell informazione (information science)

INFORMATICA. Scienza dei calcolatori elettronici (computer science) Scienza dell informazione (information science) INFORMATICA Cosa è l informatica Scienza dei calcolatori elettronici (computer science) Scienza dell informazione (information science) E una scienza E una tecnologia Cosa può essere automatizzato nell

Dettagli

Informatica/ Ing. Meccanica/ Edile/ Prof. Verdicchio/ 17/01/2014/ Foglio delle domande / VERSIONE 1

Informatica/ Ing. Meccanica/ Edile/ Prof. Verdicchio/ 17/01/2014/ Foglio delle domande / VERSIONE 1 Informatica/ Ing. Meccanica/ Edile/ Prof. Verdicchio/ 17/01/2014/ Foglio delle domande/ VERSIONE 1 1) L approccio con cui si studia un sistema focalizzandosi solo sul rapporto tra input e output si chiama

Dettagli

Teoria della computazione

Teoria della computazione Teoria della computazione Dipartimento di Elettronica e Informazione Politecnico di Milano 18 aprile 2017 Cosa possiamo calcolare? Quali problemi siamo in grado di risolvere? Con un certo tipo di formalismo

Dettagli

Macchine di Turing: somma di due numeri

Macchine di Turing: somma di due numeri Informatica Teorica 2/2 M.Di Ianni Macchine di Turing: somma di due numeri Vogliamo definire una macchina di Turing che, presi in input due numeri n e m espressi in notazione binaria, calcola il valore

Dettagli

401 PREDICATI RICORSIVI PRIMITIVI

401 PREDICATI RICORSIVI PRIMITIVI 401 PREDICATI RICORSIVI PRIMITIVI Corso di Informatica Teorica - modulo 2 Prof. Settimo Termini 1 Breve richiamo Un predicato su un insieme S è una funzione totale P su S tale che a S si ha: P(a) = VERO

Dettagli

Forme Normali. Forma normale di Chomsky. E caratterizzata da regole di due tipi. A! BC dove A, B, C $ V N A! a con a $ V T. Forma normale di Greibach

Forme Normali. Forma normale di Chomsky. E caratterizzata da regole di due tipi. A! BC dove A, B, C $ V N A! a con a $ V T. Forma normale di Greibach Forme Normali A partire da una grammatica Context-free G è sempre possibile costruire una grammatica equivalente G ovvero L(G) = L(G ) che abbiano le produzioni in forme particolari, dette forme normali.

Dettagli

MODULO 1. Prof. Onofrio Greco. Prof. Greco Onofrio

MODULO 1. Prof. Onofrio Greco. Prof. Greco Onofrio ECDL MODULO 1 Prof. Onofrio Greco Modulo 1 Concetti di base dell ICT Modulo 2 Uso del Computer e Gestione dei File Modulo 3 - Elaborazione testi Modulo 4 Foglio Elettronico Modulo 5 Uso delle Basi di Dati

Dettagli

PARTE III MACCHINE A REGISTRI

PARTE III MACCHINE A REGISTRI PARTE III MACCHINE A REGISTRI Macchine a registri (RAM) Modelli di costo RAM e macchine di Turing Macchine a registri elementari 3.1 MACCHINE A REGISTRI 1 (RAM: Random Access Machines) Introdotte da Shepherdson

Dettagli

Sui Linguaggi Regolari: Teorema di Kleene - Pumping Lemm

Sui Linguaggi Regolari: Teorema di Kleene - Pumping Lemm Sui Linguaggi Regolari: Teorema di Kleene - Pumping Lemma N.Fanizzi - V.Carofiglio 6 aprile 2016 1 Teorema di Kleene 2 3 o 1 o 3 o 8 Teorema di Kleene Vale la seguente equivalenza: L 3 L FSL L REG Dimostrazione.

Dettagli

Algoritmo per A. !(x) Istanza di B

Algoritmo per A. !(x) Istanza di B Riduzioni polinomiali Una funzione f: T*!T* è detta computabile in tempo polinomiale se esiste una macchina di Turing limitata polinomialmente che la computi. Siano L 1 e L 2 " T* due linguaggi. Una funzione

Dettagli

Linguaggi Regolari e Linguaggi Liberi

Linguaggi Regolari e Linguaggi Liberi Linguaggi Regolari e Linguaggi Liberi Linguaggi regolari Potere espressivo degli automi Costruzione di una grammatica equivalente a un automa Grammatiche regolari Potere espressivo delle grammatiche 1

Dettagli

Università degli Studi di Brescia INFORMATICA. Dipartimento di Ingegneria Meccanica e Industriale

Università degli Studi di Brescia INFORMATICA. Dipartimento di Ingegneria Meccanica e Industriale Università degli Studi di Brescia INFORMATICA Concetto di Algoritmo Docente: Marco Sechi E mail: marco.sechi@unibs.it Vers. 21/08/2016.A050917* Dipartimento di Ingegneria Meccanica e Industriale DIPARTIMENTO

Dettagli

PARTE III MACCHINE A REGISTRI

PARTE III MACCHINE A REGISTRI PARTE III MACCHINE A REGISTRI Macchine a registri (RAM) Modelli di costo RAM e macchine di Turing Macchine a registri elementari 1 3.1 MACCHINE A REGISTRI (RAM: Random Access Machines) Introdotte da Shepherdson

Dettagli

Informatica Teorica. Sezione Cremona + Como. Appello del 20 Luglio 2004

Informatica Teorica. Sezione Cremona + Como. Appello del 20 Luglio 2004 Informatica Teorica Sezione Cremona + Como Appello del 20 Luglio 2004 Coloro che recuperano la I prova risolvano gli esercizi e 2 tra quelli indicati qui sotto entro un ora. Coloro che recuperano la II

Dettagli

Le Macchine di Turing

Le Macchine di Turing Le Macchine di Turing 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

Dettagli

Informatica Generale Andrea Corradini Gli algoritmi e la risoluzione di problemi

Informatica Generale Andrea Corradini Gli algoritmi e la risoluzione di problemi Informatica Generale Andrea Corradini 12 - Gli algoritmi e la risoluzione di problemi Sommario Che significa risolvere un problema? Algoritmi e programmi Rappresentazione di algoritmi Lo pseudocodice Primitive

Dettagli

Dall algoritmo al programma

Dall algoritmo al programma Dall algoritmo al programma Il concetto di algoritmo Un algoritmo è una sequenza di passi necessari per risolvere un problema o eseguire una computazione In alcuni casi, lo stesso problema/computazione

Dettagli

Lezione 1: problemi, modelli di calcolo, algoritmi

Lezione 1: problemi, modelli di calcolo, algoritmi Lezione : problemi, modelli di calcolo, algoritmi Miriam Di Ianni 3 gennaio 0 Problemi e algoritmi Cosa è un problema come lo conosciamo: un insieme di dati ed una domanda. Esempio. La somma delle lunghezze

Dettagli

Aniello Murano Problemi decidibili e non decidibili

Aniello Murano Problemi decidibili e non decidibili Aniello Murano Problemi decidibili e non decidibili 7 Lezione n. Parole chiave: Decidibilità Corso di Laurea: Informatica Codice: Email Docente: murano@ na.infn.it A.A. 2008-2009 Overview In questa lezione

Dettagli

Progetto e analisi di algoritmi

Progetto e analisi di algoritmi Progetto e analisi di algoritmi Roberto Cordone DTI - Università degli Studi di Milano Polo Didattico e di Ricerca di Crema Tel. 0373 / 898089 E-mail: cordone@dti.unimi.it Ricevimento: su appuntamento

Dettagli

Forma Normale di Chomsky

Forma Normale di Chomsky 2. Eliminazione delle produzioni unitarie Forma Normale di Chomsky Una produzione si dice unitaria se è della forma A! B. Le produzioni unitarie in pratica consistono in una ridenominazione di variabili,

Dettagli

Linguaggi di programmazione - Principi e paradigmi 2/ed Maurizio Gabbrielli, Simone Martini Copyright The McGraw-Hill Companies srl

Linguaggi di programmazione - Principi e paradigmi 2/ed Maurizio Gabbrielli, Simone Martini Copyright The McGraw-Hill Companies srl Approfondimento 2.1 Non è questo il testo dove trattare esaurientemente queste tecniche semantiche. Ci accontenteremo di dare un semplice esempio delle tecniche basate sui sistemi di transizione per dare

Dettagli

Fondamenti di Informatica. Computabilità e Macchine di Turing. Prof. Franco Zambonelli Gennaio 2011

Fondamenti di Informatica. Computabilità e Macchine di Turing. Prof. Franco Zambonelli Gennaio 2011 Fondamenti di Informatica Computabilità e Macchine di Turing Prof. Franco Zambonelli Gennaio 2011 Letture Consigliate: Roger Penrose, La Mente Nuova dell Imperatore, Sansoni Editrice. Martin Davis, Il

Dettagli

Cos è un algoritmo. Si dice algoritmo la descrizione di un metodo di soluzione di un problema che sia

Cos è un algoritmo. Si dice algoritmo la descrizione di un metodo di soluzione di un problema che sia Programmazione Un programma descrive al computer, in estremo dettaglio, la sequenza di passi necessari a svolgere un particolare compito L attività di progettare e realizzare un programma è detta programmazione

Dettagli

Dati e Algoritmi I (Pietracaprina) Esercizi sulle Nozioni di Base

Dati e Algoritmi I (Pietracaprina) Esercizi sulle Nozioni di Base Dati e Algoritmi I (Pietracaprina) Esercizi sulle Nozioni di Base Dati e Algoritmi I (Pietracaprina): Esercizi 1 Problema 1. Sia T una stringa arbitraria di lunghezza n 1 su un alfabeto Σ. È sempre possibile

Dettagli

Costruzione dell insieme dei Follow

Costruzione dell insieme dei Follow Costruzione dell insieme dei Follow E! T E - T E E! + T E - T E " T! F T T! *F T " F! (E) i Per evitare che alcuni insiemi siano vuoti si aggiunge per default il simbolo speciale $ che demarca la fine

Dettagli

Capitolo 7: Teoria generale della calcolabilitá

Capitolo 7: Teoria generale della calcolabilitá Capitolo 7: Teoria generale della calcolabilitá 1 Differenti nozioni di calcolabilitá (che seguono da differenti modelli di calcolo) portano a definire la stessa classe di funzioni. Le tecniche di simulazione

Dettagli

Reti combinatorie. Reti combinatorie (segue)

Reti combinatorie. Reti combinatorie (segue) Reti combinatorie Sommatore Sottrattore Reti sequenziali Generatore di sequenze Riconoscitore di sequenze Reti combinatorie PROGRAMMAZIONE Il programmatore riporta le istruzioni che il calcolatore dovrà

Dettagli

Algoritmi e soluzione di problemi

Algoritmi e soluzione di problemi Algoritmi e soluzione di problemi Dato un problema devo trovare una soluzione. Esempi: effettuare una telefonata calcolare l area di un trapezio L algoritmo è la sequenza di operazioni (istruzioni, azioni)

Dettagli

Linguaggi Regolari e Linguaggi Liberi

Linguaggi Regolari e Linguaggi Liberi Linguaggi Regolari e Linguaggi Liberi Potenza espressiva degli automi Potenza espressiva delle grammatiche 9/11/2004 Programmazione - Luca Tesei 1 Linguaggi Regolari Tutti i linguaggi che possono essere

Dettagli

Appunti di informatica. Lezione 3 anno accademico Mario Verdicchio

Appunti di informatica. Lezione 3 anno accademico Mario Verdicchio Appunti di informatica Lezione 3 anno accademico 2015-2016 Mario Verdicchio Numeri binari in memoria In un calcolatore, i numeri binari sono tipicamente memorizzati in sequenze di caselle (note anche come

Dettagli

La codifica digitale

La codifica digitale La codifica digitale Codifica digitale Il computer e il sistema binario Il computer elabora esclusivamente numeri. Ogni immagine, ogni suono, ogni informazione per essere compresa e rielaborata dal calcolatore

Dettagli

Corso di Informatica di Base

Corso di Informatica di Base Corso di Informatica di Base A.A. 2011/2012 Algoritmi e diagrammi di flusso Luca Tornatore Cos è l informatica? Calcolatore: esecutore di ordini o automa Programma: insieme di istruzioni che possono essere

Dettagli

Esercizio su MT. Svolgimento

Esercizio su MT. Svolgimento Esercizio su MT Definire una macchina di Turing deterministica M a nastro singolo e i concetti di configurazione e di transizione. Sintetizzare una macchina di Turing trasduttore che trasformi un numero

Dettagli