Automi e Linguaggi Formali. Cambiamenti di orario. Altre informazioni utili. Motivazione. Anno accademico

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Automi e Linguaggi Formali. Cambiamenti di orario. Altre informazioni utili. Motivazione. Anno accademico"

Transcript

1 Automi e Linguaggi Formali Anno accademico 5-6 Docente: Francesca Rossi frossi@math.unipd.it Orario: Lunedi 5:3 7:3, LUM 5 Venerdi 3:3 6:3, LUM 5 Cambiamenti di orario non si fara lezione Venerdi 7 Gennaio Ricevimento: Giovedi, 6: - 8:, studio Sito del corso: frossi/automi6.html Altre informazioni utili Libro di testo: J. E. Hopcroft, R. Motwani, and J. D. Ullman Automi, linguaggi e calcolabilita, Addison-Wesley, 3. Si trova alla libreria Progetto (Via Marzolo o Via Portello). Prezzo: circa 34,5 euro. Compitini: Due compitini, uno a meta del corso e uno alla fine. Possono sostituire lo scritto. Esame: Scritto e, se richiesto dal docente, collouio orale. Due appelli a fine corso. Due appelli di recupero: uno a Luglio e uno a Settembre. Lucidi in inglese: sul sito slides/. I lucidi che uso per i capitoli -7 sono basati sui lucidi in inglese di Gösta Grahne. Grazie anche David Ford per l assistenza T E X. 3 Motivazione Automa = dispositivo astratto per fare delle computazioni Turing ha studiato e definito le macchine di Turing (= computer astratti) prima che esistessero veri calcolatori Studieremo anche dispositivi piu semplici delle macchine di Turing (automi a stati finiti, automi a pila,... ), e modi di definire linguaggi, come grammatiche e espressioni regolari. Problemi nella classe NP = che non possono essere risolti efficientemente 4

2 Automi a stati finiti Gli automi a stati finiti sono usati come modello per Software per la progettazione di circuiti digitali. Analizzatori lessicali di un compilatore. Ricerca di parole chiave in un file o sul web. Esempio: automa a stati finiti per un interruttore on/off off Push Push Esempio: automa a stati finiti che riconosce la stringa then on Software per verificare sistemi a stati finiti, come protocolli di comunicazione. t h e n t th the then 5 6 Rappresentazioni strutturali Ci sono vari modi di specificare una macchina Grammatiche: Una regola come E E + E specifica un spressione aritmetica Coda P ersona.coda dice che una coda e costituita da una persona seguita da una coda. Espressioni regolari: Denotano la struttura dei dati, per esempio: [A-Z][a-z]*[][A-Z][A-Z] e compatibile con (matches) Ithaca NY non e compatibile con Palo Alto CA Concetti di base Alfabeto: Insieme fnito e non vuoto di simboli Esempio: Σ = {, } alfabeto binario Esempio: Σ = {a, b, c,..., z} insieme di tutte le lettere minuscole Esempio: Insieme di tutti i caratteri ASCII Stringa: Seuenza fnita di simboli da un alfabeto Σ, e.g. Stringa vuota: La stringa con zero occorrenze di simboli da Σ Domanda: Quale espressione e compatibile con Palo Alto CA 7 La stringa vuota e denotata con ǫ 8

3 Lunghezza di una stringa: Numero di posizioni per i simboli nella stringa. w denota la lunghezza della stringa w = 4, ǫ = Potenze di un alpfabeto: Σ k = insieme delle stringhe di lunghezza k con simboli da Σ Example: Σ = {,} Σ = {,} Σ = {,,,} Σ = {ǫ} Domanda: Quante stringhe ci sono in Σ 3 9 L insieme di tutte le stringhe su Σ e denotato da Σ Σ = Σ Σ Σ Anche: Σ + = Σ Σ Σ 3 Σ = Σ + {ǫ} Concatenazione: Se x e y sono stringhe, allora xy e la stringa ottenuta rimpiazzando una copia di y immediatamente dopo una copia di x x = a a... a i, y = b b... b j xy = a a... a i b b... b j Esempio: x =, y =, xy = Nota: Per ogni stringa x xǫ = ǫx = x Linguaggi: Se Σ e un alfabeto, e L Σ allora L e un linguaggio Esempi di linguaggi: L insieme delle parole italiane legali L insieme delle stringhe con un numero uguale di zeri e di uni {ǫ,,,,,,...} L P = insieme dei numeri binari il cui valore e primo L insieme dei programmi C legali L insieme delle stringhe che consistono di n zeri seguiti da n uni {,,,,,...} Il linguaggio vuoto Il linguaggio {ǫ} consiste della stringa vuota {ǫ,,,,...} Nota: = {ǫ} Nota: L alfabeto Σ e sempre finito

4 Problema: La stringa w e un elemento di un linguaggio L? Esempio: Dato un numero binario, e primo = e un elemento di L P? E L P? Che risorse computazionali sono necessarie per rispondere a uesta domanda? Di solito non pensiamo ai problemi come delle decisioni si/no, ma come ualcosa che trasforma un input in un output. Introduzione informale agli automi Protocollo per commercio elettronico usando soldi elettronici Eventi permessi:. Il cliente puo pagare il negozio (= spedire il file dei soldi al negozio). Il cliente puo cancellare i soldi (come fermare un assegno) 3. Il negozio puo spedire la merce al cliente Esempio: Fare il parsing di un programma C = controllare se il programma e corretto, e se lo e, produrre un albero di parsing Il negozio puo prendere i soldi (= incassare un assegno) 5. La banca puo trasferire i soldi al negozio 4 Commercio elettronico Protocolli completati: Il protocollo per ogni partecipante: pay redeem transfer a b d f ship ship (a) Store c e g redeem transfer ship cancel pay,cancel pay,cancel pay,cancel a b d f pay redeem transfer ship ship (a) Store redeem c e transfer ship g pay,cancel pay,cancel pay,cancel pay, ship cancel pay cancel 3 4 redeem transfer ship. redeem, transfer, pay, cancel cancel pay, ship pay,redeem, cancel, ship 3 4 redeem transfer pay,redeem, cancel, ship (b) Customer (c) Bank (b) Customer (c) Bank 5 6

5 Dimostrazioni deduttive L intero sistema come automa: a b c d e f g P P P P P P P S S S R C C C C C C C R P S S S P P P P P P R P,C P,C P,C P S R S S 3 C P,C P,C P,C T P R T S S S 4 R C P,C P,C P,C P,C P,C P,C Seuenza di enunciati la cui verita porta da un enunciato iniziale (l ipotesi) ad un enunciato finale (la conclusione) Forma del teorema: Se H, allora C H= ipotesi, C= conclusione Esempio: se x 4, allora x x x parametro uantificato universalmente (vale per tutti gli x) Modus ponens: regola logica che passare da un enuciato al successivo 7 8 Quantificatori Se H e vera, e sappiamo che se H allora C, allora possiamo concludere che anche C e vera Teoremi della forma C se e solo se C : due direzioni di prova Dimostrazione per assurdo: H e non C implica il falso Per ogni x ( x): vale per tutti i valori della variabile Esiste x ( x): vale per almeno un valore della variabile Esempio: un insieme s e infinito se e solo se, per ogni intero n, esiste almeno un sottoinsieme T di S con n elementi Dobbiamo considerare un n arbitrario e poi trovare un insieme con uel numero n di elementi precede 9

6 Dimostrazioni per induzione Utili uando ci sono cose definite ricorsivamente Esempio: e un intero, e se n e un intero allora n+ e un intero Enunciato simile ma di significato diverso, e scorretto: Esiste un sottoinsieme T dell insieme S tale che, per ogni n, T ha n elementi Induzione sugli interi: dobbiamo dimostrare un enunciato S(n) su un intero n Base: dimostriamo S(i) per un intero particolare ( o di solito) Passo induttivo: per n i, dimostriamo che se vale S(n) allora vale anche S(n+ ) Possiamo concludere che S(n) e vero per ogni n i Esempio Se x 4, allora x x Base: x = 4 x = 4 = 6 e x = 4 = 6 Induzione: Supponiamo che x x per x 4 Se x 4, /x /4 + /x.5 Dobbiamo dimostrare che x+ (x + ) Abbiamo: x+ = x x (dalla base) Dimostriamo adesso che x (x+) Semplificando: x + /x

7 Induzione strutturale Esempio Molte strutture possono essere definite ricorsivamente Esempio (espressioni): caso base: ualunue numero o lettera e un espressione caso induttivo: se E e F sono espressioni, allora lo sono anche E+F, E F, e (E) Esempi: 3+(4x), (x(5+7))x4 Per dimostrare teoremi su un espressione: si dimostra l enunciato sul caso base, e poi si dimostra l enunciato sulla struttura X a partire dalla validita dell enunciato sulle strutture di cui X e composta secondo la definizione ricorsiva Teorema: ogni espressione ha un numero uguale di parentesi aperte e chiuse Caso base: zero parentesi vero Induzione: Tre modi per costruire un espressione induttivamente: E + F, E F, e (E) Per E + F e E F: se vale per E e F, supponiamo che E abbia n parentesi aperte e chiuse e F ne abbia m E + F ne ha n + m Per (E): se vale per E, supponiamo che E abbia n parentesi aperte e chiuse (E) ne ha n + 3 Automi a stati finiti deterministici Un DFA e una uintupla A = (Q,Σ, δ,, F) Q e un insieme finito di stati Σ e un alfabeto finito (= simboli in input) δ e una funzione di transizione (, a) p Esempio: Un automa A che accetta L = {xy : x, y {,} } L automa A = ({,, }, {,}, δ,, { }) come una tabella di transizione: L automa come un diagramma di transizione: Q e lo stato iniziale F Q e un insieme di stati finali, 4 5

8 Un automa a stati finiti (FA) accetta una stringa w = a a a n se esiste un cammino nel diagramma di transizione che. Inizia nello stato iniziale. Finisce in uno stato finale (di accettazione) 3. Ha una seuanza di etichette a a a n Esempio: L automa a stati finiti, La funzione di transizione δ puo essere estesa a ˆδ che opera su stati e stringhe (invece che su stati e simboli) Base: ˆδ(, ǫ) = Induzione: ˆδ(, xa) = δ(ˆδ(, x), a) Formalmente, il linguaggio accettato da A e L(A) = {w : ˆδ(, w) F } I linguaggi accettati da automi a stati finiti sono detti linguaggi regolari accetta ad esempio la stringa 6 7 Esempio: DFA che accetta tutte e sole le stringhe con un numero pari di zeri e un numero pari di uni Esercizi 3 DFA per i seguenti linguaggi sull alfabeto {,}: Insieme di tutte le strighe che finiscono con Insieme di tutte le stringhe con tre zeri consecutivi Rappresentazione tabulare dell automa Insieme delle stringhe con come sottostringa Insieme delle stringhe che cominciano o finiscono (o entrambe le cose) con 8 9

9 Automi a stati finiti non deterministici (NFA) Un NFA puo essere in vari stati nello stesso momento, oppure, visto in un altro modo, puo scommettere su uale sara il prossimo stato Esempio: un automa che accetta tutte e solo le stringhe che finiscono in., Ecco cosa succede uando l automa elabora l input Formalmente, un NFA e una uintupla A = (Q,Σ, δ,, F) Q e un insieme finito di stati Σ e un alfabeto finito δ e una funzione di transizione da Q Σ all insieme dei sottoinsiemi di Q (stuck) (stuck) Q e lo stato iniziale F Q e un insieme di stati finali 3 3 Funzione di transizione estesa ˆδ. Esempio: L NFA di due pagine fa e Base: ˆδ(, ǫ) = {} ({,, }, {,}, δ,, { }) Induzione: ˆδ(, xa) = p ˆδ(,x) δ(p, a) dove δ e la funzione di transizione {, } { } { } Esempio: Calcoliamo ˆδ(,) sulla lavagna Formalmente, il linguaggio accettato da A e L(A) = {w : ˆδ(, w) F } 3 33

10 Proviamo formalmente che l NFA, accetta il linguaggio {x : x Σ }. Faremo una induzione mutua sui tre enunciati seguenti. w Σ ˆδ(, w). ˆδ(, w) w = x Base: Se w = allora w = ǫ. Allora l enunciato () segue dalla defnizione Per () e () entrambi i lati sono falsi per ǫ Induzione: Assumiamo che w = xa, dove a {,}, x = n e gli enunciati () () valgono per x. Si mostra che gli enunciati valgono per xa.. ˆδ(, w) w = x Euivalenza di DFA e NFA Gli NFA sono di solito piu facili da programmare. Sorprendentemente, per ogni NFA N c e un DFA D, tale che L(D) = L(N), e viceversa. Questo comporta una construzione a sottonsiemi, un esempio importante di come un automa B puo essere costruito da un altro automa A. Dato un NFA I dettagli della costruzione a sottoinsiemi: Q D = {S : S Q N }. Nota: Q D = Q N, anche se la maggior parte degli stati in Q D sono garbage, cioe non raggiungibili dallo stato iniziale. F D = {S Q N : S F N } N = (Q N,Σ, δ N,, F N ) costruiremo un DFA D = (Q D,Σ, δ D, { }, F D ) tali che L(D) = L(N). 36 Per ogni S Q N e a Σ, δ D (S, a) = δ N (p, a) p S 37

11 Costruiamo δ D dall NFA gia visto: { } {, } { } { } { } { } {, } {, } {, } {, } {, } { } {, } { } {,, } {, } {, } Nota: Gli stati di D corrispondono a sottoinsiemi di stati di N, ma potevamo denotare gli stati di D in un altro modo, per esempio A F. A A A B E B C A D D A A E E F F E B G A D H E F Possiamo spesso evitare la crescita esponenziale degli stati costruendo la tabella di transizione per D solo per stati accessibili S come segue: Base: S = { } e accessibile in D Induzione: Se lo stato S e accessibile, lo sono anche gli stati in a Σ δ D (S, a). Esempio: Il sottoinsieme DFA con stati accessibili solamente. Teorema.: Sia D il DFA ottenuto da un NFA N con la costruzione a sottoinsiemi. Allora L(D) = L(N). Prova: Prima mostriamo per induzione su w che ˆδ D ({ }, w) = ˆδ N (, w) { } {, } {, } Base: w = ǫ. L enunciato segue dalla definizione. 4 4

12 Induzione: ˆδ D ({ }, xa) def = δ D (ˆδ D ({ }, x), a) i.h. = δ D (ˆδ N (, x), a) cst = δ N (p, a) p ˆδ N (,x) def = ˆδ N (, xa) Ora segue che L(D) = L(N). Teorema.: Un linguaggio L e accettato da un DFA se e solo se L e accettato da un NFA. Prova: La parte se e il Teorema.. Per la parte solo se notiamo che un ualsiasi DFA puo essere convertito in un NFA euivalente modificando la δ D in δ N secondo la regola seguente: Se δ D (, a) = p, allora δ N (, a) = {p}. Per induzione su w si puo mostrare che se ˆδ D (, w) = p, allora ˆδ N (, w) = {p}. L enunciato del teorema segue Crescita esponenziale degli stati Esiste un NFA N con n + stati che non ha nessun DFA euivalente con meno di n stati, Caso : a a n b b n,,,, n Allora deve essere sia uno stato di accettazione che uno stato di non accettazione. L(N) = {xc c 3 c n : x {,}, c i {,}} Supponiamo che esista un DFA euivalente con meno di n stati. D deve ricordare gli ultimi n simboli che ha letto. Ci sono n seuenze di bit a a a n, a a a n, b b b n : ˆδ N (, a a a n ), ˆδ N (, b b b n ), a a a n b b b n 44 Caso : a a i a i+ a n b b i b i+ b n Ora ˆδ N (, a a i a i+ a n i ) = ˆδ N (, b b i b i+ b n i ) e ˆδ N (, a a i a i+ a n i ) F D ˆδ N (, b b i b i+ b n i ) / F D 45

13 FA con transizioni epsilon Un ǫ-nfa che accetta numeri decimali consiste di:. Un segno + o -, opzionale. Una stringa di cifre decimali 3. un punto decimale Esempio: ǫ-nfa che accetta l insieme di parole chiave {ebay, web} 4. un altra stringa di cifre decimali Σ w e b 3 4 Una delle stringhe () e (4) sono opzionali,,...,9,,...,9 e b a y ε,+,- ε 3 5.,,...,9,,..., Un ǫ-nfa e una uintupla (Q,Σ, δ,, F) dove δ e una funzione da Q Σ {ǫ} all insieme dei sottoinsiemi di Q. Esempio: L ǫ-nfa della pagina precedente Epsilon-chiusura Chiudiamo uno stato aggiungendo tutti gli stati raggiungibili da lui tramite una seuenza ǫǫ ǫ E = ({,,..., 5 }, {.,+,,,,...,9} δ,, { 5 }) dove la tabella delle transizioni per δ e ǫ +,-.,...,9 { } { } { } {, 4 } { 3 } 3 { 5 } { 3 } 4 { 3 } 5 Definizione induttiva di ECLOSE() Base: ECLOSE() Induzione: p ECLOSE() and r δ(p, ǫ) r ECLOSE() 48 49

14 Definizione induttiva di ˆδ per automi ǫ-nfa Esempio di ǫ-closure Base: ε ε ε 3 6 b ˆδ(, ǫ) = ECLOSE() ε a ε Induzione: Per esempio, ˆδ(, xa) = ECLOSE(p) p δ(ˆδ(,x),a) ECLOSE() = {,,3,4,6} Calcoliamo ˆδ(,5.6) per l NFA della pagina Dato un ǫ-nfa Esempio: ǫ-nfa E E = (Q E,Σ, δ E,, F E ) costruiremo un DFA D = (Q D,Σ, δ D, D, F D ) tale che L(D) = L(E) Dettagli della costruzione: Q D = {S : S Q E e S = ECLOSE(S)} D = ECLOSE( ),,...,9,,...,9 ε,+,- ε 3 5.,,...,9,,...,9. 4 DFA D corrispondente ad E,,...,9,,...,9 +,- {, } { } {, } { 4,,...,9., 3, 5 } F D = {S : S Q D e S F E }..,,...,9 δ D (S, a) = { } { 3, 5 },,...,9 {ECLOSE(p) : p δ(t, a) per alcuni t S},,...,9 5 53

15 Teorema.: Un linguaggio L e accettato da un ǫ-nfa E se e solo se L e accettato da un DFA. Prova: Usiamo D costruito come sopra e mostriamo per induzione che ˆδ D (, w) = ˆδ E ( D, w) Base: ˆδ E (, ǫ) = ECLOSE( ) = D = ˆδ( D, ǫ) Induzione: ˆδ E (, xa) = ECLOSE(p) p δ E (ˆδ E (,x),a) = ECLOSE(p) p δ D (ˆδ D ( D,x),a) = p ˆδ D ( D,xa) ECLOSE(p) = ˆδ D ( D, xa) 54 55

Linguaggi regolari e automi a stati finiti

Linguaggi regolari e automi a stati finiti utomi a stati finiti Gli automi a stati finiti sono usati come modello per Software per la progettazione di circuiti digitali. Analizzatori lessicali di un compilatore. Ricerca di parole chiave in un file

Dettagli

Proprieta dei Linguaggi regolari

Proprieta dei Linguaggi regolari Proprieta dei Linguaggi regolari Pumping Lemma. Ogni linguaggio regolare soddisfa il pumping lemma. Se qualcuno vi presenta un falso linguaggio regolare, l uso del pumping lemma mostrera una contraddizione.

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

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

Automi e Linguaggi Formali Automi a stack (Pushdown automata)

Automi e Linguaggi Formali Automi a stack (Pushdown automata) Automi e Linguaggi Formali Automi a stack (Pushdown automata) A.A. 2014-2015 Enrico Mezzetti emezzett@math.unipd.it Automi a stack Un Pushdown Automata (PDA) o Automa a stack Essenzialmente un ɛ-nfa con

Dettagli

Progamma sintetico. Nozioni preliminari Automi Finiti Macchine di Turing Limiti delle macchine di Turing La tesi di Church-Turing Le classi P e NP

Progamma sintetico. Nozioni preliminari Automi Finiti Macchine di Turing Limiti delle macchine di Turing La tesi di Church-Turing Le classi P e NP Progamma sintetico Nozioni preliminari Automi Finiti Macchine di Turing Limiti delle macchine di Turing La tesi di Church-Turing Le classi P e NP Un problema classico Un uomo viaggia con un lupo, una pecora

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

Esercizi di Fondamenti di Informatica per la sicurezza. Stefano Ferrari

Esercizi di Fondamenti di Informatica per la sicurezza. Stefano Ferrari Esercizi di Fondamenti di Informatica per la sicurezza tefano Ferrari 23 dicembre 2003 2 Argomento 1 Grammatiche e linguaggi Esercizi Es. 1.1 Definiti i linguaggi: L 1 = {aa, ab, bc, c} L 2 = {1, 22, 31}

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

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

Un prefisso, un suffisso o una sottostringa di una stringa, quando non sono la stringa stessa, sono detti propri.

Un prefisso, un suffisso o una sottostringa di una stringa, quando non sono la stringa stessa, sono detti propri. SIMBOLI Un simbolo è un entità primitiva astratta non meglio definita. Per ciò che ci concerne, un simbolo è atomico: se anche avesse una struttura interna, noi non la osserviamo. Le uniche caratteristiche

Dettagli

Automi e Linguaggi Formali

Automi e Linguaggi Formali E-mail: frossi@math.unipd.it rario e ricevimento Orario: Lunedi, Martedi, Mercoledi, Giovedi 13:30-15:30 LUM250 Crediti: 8 crediti formativi, circa 64 ore di lezione Ricevimento: Martedi 11:00-13:00, studio

Dettagli

Orario e ricevimento. Automi e Linguaggi Formali. Altre informazioni utili. Sito del corso. Sommario del corso. Linguaggi di programmazione

Orario e ricevimento. Automi e Linguaggi Formali. Altre informazioni utili. Sito del corso. Sommario del corso. Linguaggi di programmazione Orario e ricevimento Automi e Linguaggi Formali Docente: Francesca Rossi -mail: frossi@math.unipd.it Orario: Lunedi, Martedi, Mercoledi, Giovedi 3:3-5:3 LUM25 Crediti: 8 crediti formativi, circa 64 ore

Dettagli

Automi a Pila e Grammatiche Libere dal Contesto. Automi a Pila e Grammatiche Libere dal Contesto

Automi a Pila e Grammatiche Libere dal Contesto. Automi a Pila e Grammatiche Libere dal Contesto utomi a Pila Un automa a pila (PDA) e una estensione degli automi a stati finiti, che ha una memoria (una pila) Vedremo due modi equivalenti per definire il linguaggio accettato da un PDA Vedremo che la

Dettagli

Aniello Murano Automi e Pushdown

Aniello Murano Automi e Pushdown Aniello Murano Automi e Pushdown 2 Lezione n. Parole chiave: Automi e PDA Corso di Laurea: Informatica Codice: Email Docente: murano@ na.infn.it A.A. 2008-2009 Calcolabilità, complessità e macchine computazionali

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

Espressioni regolari descrivono i linguaggi regolari. Un FA (NFA o DFA) è un metodo per costruire una macchina che riconosce linguaggi regolari.

Espressioni regolari descrivono i linguaggi regolari. Un FA (NFA o DFA) è un metodo per costruire una macchina che riconosce linguaggi regolari. Espressioni regolari descrivono i linguaggi regolari Un FA (NFA o DFA) è un metodo per costruire una macchina che riconosce linguaggi regolari. Una espressione regolare e un modo dichiarativo per descrivere

Dettagli

Automi. Rosario Culmone, Luca Tesei. 20/10/2009 UNICAM - p. 1/55

Automi. Rosario Culmone, Luca Tesei. 20/10/2009 UNICAM - p. 1/55 Automi Rosario Culmone, Luca Tesei 20/10/2009 UNICAM - p. 1/55 Storia Dal latino automatus "che si muove da sé" Macchine o dispositivi reali o ipoteticamente realizzabili, i quali siano in grado di eseguire

Dettagli

Sipser, Capitolo 0. Alfabeti, Stringhe, Linguaggi

Sipser, Capitolo 0. Alfabeti, Stringhe, Linguaggi Sipser, Capitolo 0 Alfabeti, Stringhe, Linguaggi Def. Un insieme è una collezione non ordinata di oggetti o elementi Gli insiemi sono scritti tra { } Gli elementi sono inseriti tra le parentesi Insiemi

Dettagli

Lezione 4. Problemi trattabili e soluzioni sempre più efficienti. Gianluca Rossi

Lezione 4. Problemi trattabili e soluzioni sempre più efficienti. Gianluca Rossi Lezione 4 Problemi trattabili e soluzioni sempre più efficienti Gianluca Rossi Trattabile o intrattabile? Consideriamo ora il problema, ben noto a tutti gli studenti a partire dalla scuola media, di calcolare

Dettagli

Grammatiche Parse trees Lezione del 17/10/2012

Grammatiche Parse trees Lezione del 17/10/2012 Fondamenti di Programmazione A.A. 2012-2013 Grammatiche Parse trees Lezione del 17/10/2012 AUTILI MARCO http://www.di.univaq.it/marco.autili/ Riassunto lezione precedente Sintassi vs Semantica Stringhe,

Dettagli

Automi a pila. Automi a pila

Automi a pila. Automi a pila utomi a pila Un automa a pila (PDA) e in pratica un ǫ-nfa con una pila. In una transizione un PDA: 1 Consuma un simbolo di input. 2 Va in un nuovo stato (o rimane dove e ). 3 Rimpiazza il top della pila

Dettagli

Nozioni Preliminari e Terminologia. Alfabeti Stringhe Linguaggi

Nozioni Preliminari e Terminologia. Alfabeti Stringhe Linguaggi Nozioni Preliminari e Terminologia Alfabeti Stringhe Linguaggi Insiemi Def. Un insieme è una collezione non ordinata di oggetti o elementi Gli insiemi sono scritti tra { } Gli elementi sono inseriti tra

Dettagli

LOGICA MATEMATICA PER INFORMATICA (A.A. 12/13)

LOGICA MATEMATICA PER INFORMATICA (A.A. 12/13) LOGICA MATEMATICA PER INFORMATICA (A.A. 12/13) DISPENSA N. 4 Sommario. Dimostriamo il Teorema di Completezza per il Calcolo dei Predicati del I ordine. 1. Teorema di Completezza Dimostriamo il Teorema

Dettagli

Fondamenti d Informatica: linguaggi formali. Barbara Re, Phd

Fondamenti d Informatica: linguaggi formali. Barbara Re, Phd Fondamenti d Informatica: linguaggi formali Barbara Re, Phd Agenda } Introdurremo } La nozione di linguaggio } Strumenti per definire un linguaggio } Espressioni Regolari 2 Linguaggio } Da un punto di

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

Elezione di un leader in una rete ad anello

Elezione di un leader in una rete ad anello Elezione di un leader in una rete ad anello Corso di Algoritmi Distribuiti Prof. Roberto De Prisco Lezione n a cura di Rosanna Cassino e Sergio Di Martino Introduzione In questa lezione viene presentato

Dettagli

ALGEBRA I: ASSIOMI DI PEANO E PROPRIETÀ DEI NUMERI NATURALI

ALGEBRA I: ASSIOMI DI PEANO E PROPRIETÀ DEI NUMERI NATURALI ALGEBRA I: ASSIOMI DI PEANO E PROPRIETÀ DEI NUMERI NATURALI 1. GLI ASSIOMI DI PEANO Come puro esercizio di stile voglio offrire una derivazione delle proprietà elementari dei numeri naturali e delle operazioni

Dettagli

DAI NUMERI NATURALI AI NUMERI RAZIONALI

DAI NUMERI NATURALI AI NUMERI RAZIONALI DAI NUMERI NATURALI AI NUMERI RAZIONALI 1. L insieme dei numeri naturali Nel sistema assiomatico ZF, l Assioma dell infinito stabilisce che: Esiste un insieme A, i cui elementi sono insiemi e tale che

Dettagli

Università degli Studi di Udine. 1 Automi e Linguaggi. Prova Scritta di Fondamenti dell Informatica II Alcune Soluzioni

Università degli Studi di Udine. 1 Automi e Linguaggi. Prova Scritta di Fondamenti dell Informatica II Alcune Soluzioni Università degli Studi di Udine Prova Scritta di Fondamenti dell Informatica II Alcune Soluzioni 1 Automi e Linguaggi 1. Sia dato p N, p > 0 dimostri che il linguaggio è regolare. L p = { a 0 a 1... a

Dettagli

Massimo limite e minimo limite di una funzione

Massimo limite e minimo limite di una funzione Massimo limite e minimo limite di una funzione Sia f : A R una funzione, e sia p DA). Per ogni r > 0, l insieme ) E f p r) = { fx) x A I r p) \ {p} } è non vuoto; inoltre E f p r ) E f p r ) se 0 < r r.

Dettagli

Alberi: definizioni e dimostrazioni induttive.

Alberi: definizioni e dimostrazioni induttive. Alberi: definizioni e dimostrazioni induttive. Gennaio 2005 Iniziamo con l introdurre la nozione di albero. Con N indichiamo l insieme dei numeri naturali (zero escluso) e con N l insieme delle liste finite

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

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

Corso di Linguaggi di Programmazione + Laboratorio Docente: Marco de Gemmis

Corso di Linguaggi di Programmazione + Laboratorio Docente: Marco de Gemmis Corso di Linguaggi di Programmazione + Laboratorio Docente: Marco de Gemmis Capitolo 2 Grammatiche e Linguaggi Si ringraziano il Prof. Giovanni Semeraro e il Dott. Pasquale Lops per la concessione del

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

Dalla precedente lezione: LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 3 LA RAPPRESENTAZIONE DEI DATI (1) 28/02/2016

Dalla precedente lezione: LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 3 LA RAPPRESENTAZIONE DEI DATI (1) 28/02/2016 LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 3 LA RAPPRESENTAZIONE DEI DATI (1) Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli Studi di Napoli Federico II wpage.unina.it/lapegna

Dettagli

Logica proposizionale

Logica proposizionale Definire un linguaggio formale Logica proposizionale Sandro Zucchi 2013-14 Definiamo un linguaggio formale LP (che appartiene a una classe di linguaggi detti linguaggi della logica proposizionale) Per

Dettagli

Fondamenti di Informatica Programma dettagliato del corso e appunti integrativi del libro di testo consigliato Anno Accademico

Fondamenti di Informatica Programma dettagliato del corso e appunti integrativi del libro di testo consigliato Anno Accademico acoltà di ngegneria Università di irenze Corso di Laurea in ngegneria Meccanica ondamenti di nformatica Programma dettagliato del corso e appunti integrativi del libro di testo consigliato Anno Accademico

Dettagli

Logica per la Programmazione

Logica per la Programmazione Logica del Primo Ordine: Motivazioni, Sintassi e Interpretazioni Logica per la Programmazione Lezione 7 Formule Valide, Conseguenza Logica Proof System per la Logica del Primo Ordine Leggi per i Quantificatori

Dettagli

Fondamenti di informatica per la sicurezza anno accademico docente: Stefano Ferrari

Fondamenti di informatica per la sicurezza anno accademico docente: Stefano Ferrari Corso di Laurea in icurezza dei sistemi e delle reti informatiche Fondamenti di informatica per la sicurezza anno accademico 2004 2005 docente: tefano Ferrari 14.01.2005 del secondo compitino vers. D valutazioni

Dettagli

02 - Logica delle dimostrazioni

02 - Logica delle dimostrazioni Università degli Studi di Palermo Facoltà di Economia Dipartimento di Scienze Economiche, Aziendali e Statistiche Appunti del corso di Matematica 0 - Logica delle dimostrazioni Anno Accademico 015/016

Dettagli

Tipi di dato primitivi

Tipi di dato primitivi Tipi di dato primitivi (oltre int) Tipi di dato primitivi int (già trattati) Valori logici (ricordati) Valori reali Valori carattere Informatica - A.A. 2009/2010 - Tipi di dato 2 1 Valori logici (il caso

Dettagli

Pumping lemma per i linguaggi Context-free

Pumping lemma per i linguaggi Context-free Pumping lemma per i linguaggi Context-free Sia L un linguaggio context-free. E possibile determinare una costante k, dipendente da L, tale che qualunque stringa z! L con z > k si può esprimere come z=

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

Le grammatiche formali

Le grammatiche formali Le grammatiche formali Il carattere generativo dei sistemi linguisticii i Consideriamo i la seguente frase: Un gatto rincorre il topo Non facciamo difficoltà a riconoscere che si tratta di una frase sintatticamente

Dettagli

1 Giochi di Ehrenfeucht-Fraissé e Logica del Prim ordine

1 Giochi di Ehrenfeucht-Fraissé e Logica del Prim ordine 1 Giochi di Ehrenfeucht-Fraissé e Logica del Prim ordine In questo tipo di giochi l arena è costituita da due grafi orientati G = (V, E), G = (V, E ). Lo scopo del I giocatore è di mostrare, in un numero

Dettagli

La matematica non è un opinione, lo è oppure...?

La matematica non è un opinione, lo è oppure...? La matematica non è un opinione, lo è oppure...? Giulio Giusteri Dipartimento di Matematica e Fisica Università Cattolica del Sacro Cuore Brescia 26 Febbraio 2010 Vecchie conoscenze Dedurre... dedurre...

Dettagli

Linguaggi Liberi dal Contesto. Linguaggi Liberi dal Contesto

Linguaggi Liberi dal Contesto. Linguaggi Liberi dal Contesto rammatiche e Linguaggi Liberi da Contesto Abbiamo visto che molti linguaggi non sono regolari. Consideriamo allora una classe piu ampia di linguaggi, i Linguaggi Liberi da Contesto (CFL) i CFL sono stati

Dettagli

Logica per la Programmazione

Logica per la Programmazione Logica per la Programmazione Lezione 3 Dimostrazione di Tautologie e Sintassi del Calcolo osizionale Antonio, Corrado e Bruno... formalmente Tautologie: dimostrazioni e controesempi Sintassi del Calcolo

Dettagli

Insegnamento Informatica CdS Scienze Giuridiche

Insegnamento Informatica CdS Scienze Giuridiche Insegnamento Informatica CdS Scienze Giuridiche A.A. 29/ Prof. Valle D.ssa Folgieri Informazioni preliminari Prof. Valle email valle@dsi.unimi.it SITO DEL CORSO: http://webcen.dsi.unimi.it/wcinfo Syllabus:

Dettagli

La "macchina" da calcolo

La macchina da calcolo La "macchina" da calcolo Abbiamo detto che gli algoritmi devono essere scritti in un linguaggio "comprensibile all'esecutore" Se il nostro esecutore è il "calcolatore", questo che linguaggio capisce? che

Dettagli

RISOLUZIONE IN LOGICA PROPOSIZIONALE. Giovanna D Agostino Dipartimento di Matemaica e Informatica, Università di Udine

RISOLUZIONE IN LOGICA PROPOSIZIONALE. Giovanna D Agostino Dipartimento di Matemaica e Informatica, Università di Udine RISOLUZIONE IN LOGICA PROPOSIZIONALE Giovanna D Agostino Dipartimento di Matemaica e Informatica, Università di Udine 1. Risoluzione Definitione 1.1. Un letterale l è una variabile proposizionale (letterale

Dettagli

Verifica di programmi

Verifica di programmi Verifica di programmi Informalmente, un programma è corretto se l output prodotto è quello atteso rispetto all input. La correttezza dei programmi può essere espressa mediante formule per la correttezza

Dettagli

Proprieta dei linguaggi liberi da contesto. Proprieta dei linguaggi liberi da contesto

Proprieta dei linguaggi liberi da contesto. Proprieta dei linguaggi liberi da contesto roprieta di CFL Semplificazione di una CFG: se un linguaggio e un CFL, ha una grammatica di una forma speciale. Pumping Lemma per CFL: simile ai linguaggi regolari. Proprieta di chiusura: alcune delle

Dettagli

Logica per la Programmazione

Logica per la Programmazione Logica del Primo Ordine: Motivazioni, Sintassi e Interpretazioni Logica per la Programmazione Lezione 1 Calcolo Proposizionale: sintassi e semantica Tautologie Esempi di Formalizzazione di Enunciati pag.

Dettagli

controllo stringa a a b a b b c c b a b x y z pila di memoria

controllo stringa a a b a b b c c b a b x y z pila di memoria Gli automi a pila Dagli automi finiti iti agli automi a pila Possiamo ottenere un automa a pila a partire da un automa finito (così come l abbiamo definito in precedenza), attraverso l introduzione di

Dettagli

Logica proposizionale

Logica proposizionale Logica proposizionale Proposizione: frase compiuta che è sempre o vera o falsa. Connettivi Posti in ordine di precedenza: not, and, or, implica, doppia implicazione Sintassi Le proposizioni sono costituite

Dettagli

Parole note, nuovi significati: linguaggio, determinismo e infinito

Parole note, nuovi significati: linguaggio, determinismo e infinito Parole note, nuovi significati: linguaggio, determinismo e infinito Angelo Montanari Dipartimento di Matematica e Informatica Università degli Studi di Udine Ciclo di seminari su un Vocabolario Filosofico

Dettagli

CLASSE LIMITE DI UNA SUCCESSIONE DI NUMERI REALI C. MADERNA, G. MOLTENI, M. VIGNATI

CLASSE LIMITE DI UNA SUCCESSIONE DI NUMERI REALI C. MADERNA, G. MOLTENI, M. VIGNATI CLASSE LIMITE DI UNA SUCCESSIONE DI NUMERI REALI C. MADERNA, G. MOLTENI, M. VIGNATI Consideriamo l insieme R = R {, + } ottenuto aggiungendo all insieme dei numeri reali i simboli e +. Introduciamo in

Dettagli

Aniello Murano Decidibilità delle teorie logiche

Aniello Murano Decidibilità delle teorie logiche Aniello Murano Decidibilità delle teorie logiche 11 Lezione n. Parole chiave: Teorie logiche Corso di Laurea: Informatica Codice: Email Docente: murano@ na.infn.it A.A. 2008-2009 Prefazione Nelle lezioni

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Algoritmi Ricorsivi e Maria Rita Di Berardini, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino A.A. 2006/07 I conigli di Fibonacci Ricerca Binaria L isola dei conigli

Dettagli

Unità aritmetica e logica

Unità aritmetica e logica Aritmetica del calcolatore Capitolo 9 Unità aritmetica e logica n Esegue le operazioni aritmetiche e logiche n Ogni altra componente nel calcolatore serve questa unità n Gestisce gli interi n Può gestire

Dettagli

Sviluppi e derivate delle funzioni elementari

Sviluppi e derivate delle funzioni elementari Sviluppi e derivate delle funzioni elementari In queste pagine dimostriamo gli sviluppi del prim ordine e le formule di derivazioni delle principali funzioni elementari. Utilizzeremo le uguaglianze lim

Dettagli

Corso di Laurea in Matematica Geometria 2. Foglio di esercizi n. 1 a.a Soluzioni

Corso di Laurea in Matematica Geometria 2. Foglio di esercizi n. 1 a.a Soluzioni Corso di Laurea in Matematica Geometria 2 Foglio di esercizi n. 1 a.a. 2015-16 Soluzioni Gli esercizi sono presi dal libro di Manetti. Per svolgere questi esercizi, studiare con cura i paragrafi 3.1, 3.2,

Dettagli

Codice Gray. (versione Marzo 2007)

Codice Gray. (versione Marzo 2007) Codice Gray (versione Marzo 27) Data una formula booleana con n variabili, per costruire una tavola di verità per questa formula è necessario generare tutte le combinazioni di valori per le n variabili.

Dettagli

Linguaggi formali e compilazione

Linguaggi formali e compilazione Linguaggi formali e compilazione Corso di Laurea in Informatica A.A. 2014/2015 Linguaggi formali e compilazione sul corso Sito web: http://algogroup.unimore.it/people/mauro/dida/2014-2015 / Ricevimento:

Dettagli

Fondamenti dell Informatica: Linguaggi Formali e Calcolabilità

Fondamenti dell Informatica: Linguaggi Formali e Calcolabilità Eserciziario per il corso di Verona, Settembre 24 Fondamenti dell Informatica: Linguaggi Formali e Calcolabilità Dott.ssa Isabella Mastroeni Dipartimento di Informatica Università degli Studi di Verona

Dettagli

Logica proposizionale

Logica proposizionale Fondamenti di Informatica per la Sicurezza a.a. 2008/09 Logica proposizionale Stefano Ferrari UNIVERSITÀ DEGLI STUDI DI MILANO DIPARTIMENTO DI TECNOLOGIE DELL INFORMAZIONE Stefano Ferrari Università degli

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

11. Misure con segno.

11. Misure con segno. 11. Misure con segno. 11.1. Misure con segno. Sia Ω un insieme non vuoto e sia A una σ-algebra in Ω. Definizione 11.1.1. (Misura con segno). Si chiama misura con segno su A ogni funzione ϕ : A R verificante

Dettagli

8. Completamento di uno spazio di misura.

8. Completamento di uno spazio di misura. 8. Completamento di uno spazio di misura. 8.1. Spazi di misura. Spazi di misura completi. Definizione 8.1.1. (Spazio misurabile). Si chiama spazio misurabile ogni coppia ordinata (Ω, A), dove Ω è un insieme

Dettagli

Espressioni regolari. Espressioni regolari

Espressioni regolari. Espressioni regolari spressioni regolari Un FA (NFA o DFA) e un metodo per costruire una macchina che riconosce linguaggi regolari. Una espressione regolare e un modo dichiarativo per descrivere un linguaggio regolare. Esempio:

Dettagli

Programmazione Greedy I codici di Huffman

Programmazione Greedy I codici di Huffman Programmazione Greedy I codici di Huffman Codifica dell informazione La rappresentazione ordinaria dell informazione prevede l impiego di un numero costante di bit; per esempio ad ogni carattere del codice

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Introduzione al Corso Maria Rita Di Berardini (Camerino), Emanuela Merelli (Ascoli) 1 1 Scuola di Scienze e Tecnologie - Sezione di Informatica Università di Camerino Parte I Il concetto di Algoritmo Il

Dettagli

La codifica dei caratteri di un testo

La codifica dei caratteri di un testo La codifica dei caratteri di un testo L obiettivo è quello di comunicare con il calcolatore usando il nostro linguaggio. Dobbiamo rappresentare le lettere dell alfabeto L insieme di simboli comunemente

Dettagli

Logica per la Programmazione

Logica per la Programmazione Logica per la Programmazione Lezione 3 Dimostrazione di Tautologie e Sintassi del Calcolo osizionale Antonio, Corrado e Bruno... formalmente Tautologie: dimostrazioni e controesempi Sintassi del Calcolo

Dettagli

04 - Logica delle dimostrazioni

04 - Logica delle dimostrazioni Università degli Studi di Palermo Facoltà di Economia CdS Sviluppo Economico e Cooperazione Internazionale Appunti del corso di Matematica 04 - Logica delle dimostrazioni Anno Accademico 013/014 D. Provenzano,

Dettagli

NOZIONI DI LOGICA PROPOSIZIONI.

NOZIONI DI LOGICA PROPOSIZIONI. NOZIONI DI LOGICA PROPOSIZIONI. Una proposizione è un affermazione che è vera o falsa, ma non può essere contemporaneamente vera e falsa. ESEMPI Sono proposizioni : 7 è maggiore di 2 Londra è la capitale

Dettagli

1 Richiami di logica matematica

1 Richiami di logica matematica Geometria e Topologia I 7 marzo 2005 1 1 Richiami di logica matematica Definire cos è un enunciato, una proposizione (elemento primitivo della logica delle proposizioni). La definizione è data in termini

Dettagli

Università degli Studi di Roma Tor Vergata. Principio di induzione matematica

Università degli Studi di Roma Tor Vergata. Principio di induzione matematica Università degli Studi di Roma Tor Vergata. Principio di induzione matematica Il Principio di induzione matematica è una tecnica di dimostrazione che permette la dimostrazione simultanea di infinite affermazioni.

Dettagli

Modelli e complessità di calcolo

Modelli e complessità di calcolo Modelli e complessità di calcolo Prof. Giorgio Ausiello Orario delle lezioni: Martedi, Mercoledi, Giovedi ore 8.30 10.00 Orario di ricevimento: Lunedi ore 17.00 19.00 Via Ariosto 25 II piano - Ufficio

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

1 Principio di Induzione

1 Principio di Induzione 1 Principio di Induzione Per numeri naturali, nel linguaggio comune, si intendono i numeri interi non negativi 0, 1,, 3, Da un punto di vista insiemistico costruttivo, a partire dall esistenza dell insieme

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

Esercitazione. Ricorsione. May 31, Esercizi presi dal libro di Rosen

Esercitazione. Ricorsione. May 31, Esercizi presi dal libro di Rosen Esercitazione Ricorsione May 31, 2016 Esercizi presi dal libro di Rosen Problema 2 a) sezione 5.3 Data la seguente funzione definita ricorsivamente come: f(n+1) = 2f(n) f(0) = 3 Determinare il valore di

Dettagli

La rappresentazione delle Informazioni

La rappresentazione delle Informazioni La rappresentazione delle Informazioni Nella vita di tutti i giorni siamo abituati ad avere a che fare con vari tipi di informazioni, di natura e forma diversa, così come siamo abituati a diverse rappresentazioni

Dettagli

Luca Costabile Esercizi di Logica Matematica Dispensa Calcolo Proposizionale 1

Luca Costabile Esercizi di Logica Matematica Dispensa Calcolo Proposizionale 1 Luca Costabile Esercizi di Logica Matematica Dispensa Calcolo Proposizionale 1 Esercizio 1.12 Per dimostrare che per ogni funzione esiste una formula in cui compaiono le variabili tale che la corrispondente

Dettagli

Linguaggi formali e compilazione

Linguaggi formali e compilazione Linguaggi formali e compilazione Corso di Laurea in Informatica A.A. 2015/2016 Linguaggi formali e compilazione sul corso Sito web: http://algogroup.unimore.it/people/mauro/dida/2015-2016 / Ricevimento:

Dettagli

Suffix Trees. Docente: Nicolò Cesa-Bianchi versione 21 settembre 2017

Suffix Trees. Docente: Nicolò Cesa-Bianchi versione 21 settembre 2017 Complementi di Algoritmi e Strutture Dati Suffix Trees Docente: Nicolò Cesa-Bianchi versione 21 settembre 2017 In generale, possiamo trovare tutte le occorrenze di un pattern y in un testo x in tempo O(

Dettagli

Esercizi riguardanti limiti di successioni e di funzioni

Esercizi riguardanti limiti di successioni e di funzioni Esercizi riguardanti iti di successioni e di funzioni Davide Boscaini Queste sono le note da cui ho tratto le esercitazioni del giorno 0 Novembre 20. Come tali sono ben lungi dall essere esenti da errori,

Dettagli

Fondamenti di Informatica

Fondamenti di Informatica Fondamenti di Informatica Algebra di Boole e Circuiti Logici Prof. Christian Esposito Corso di Laurea in Ingegneria Meccanica e Gestionale (Classe I) A.A. 2016/17 Algebra di Boole e Circuiti Logici L Algebra

Dettagli

Precorsi di matematica

Precorsi di matematica Precorsi di matematica Francesco Dinuzzo 12 settembre 2005 1 Insiemi Il concetto di base nella matematica moderna è l insieme. Un insieme è una collezione di elementi. Gli elementi di un insieme vengono

Dettagli

Architettura degli Elaboratori

Architettura degli Elaboratori Architettura degli Elaboratori Università degli Studi di Padova Scuola di Scienze Corso di Laurea in Informatica docente: Alessandro Sperduti Informazioni Generali Lucidi ed esercizi disponibili in formato

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

13 LIMITI DI FUNZIONI

13 LIMITI DI FUNZIONI 3 LIMITI DI FUNZIONI Estendiamo la nozione di ite a funzioni reali di variabile reale. Definizione caratterizzazione per successioni) Si ha fx) = L x 0, L R) se e solo se per ogni successione a n x 0 con

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

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 rappresentazione delle informazioni in un computer. La numerazione binaria

La rappresentazione delle informazioni in un computer. La numerazione binaria La rappresentazione delle informazioni in un computer La numerazione binaria Per comprendere la numerazione binaria dobbiamo prima discutere di alcune caratteristiche della numerazione decimale La numerazione

Dettagli