Automi, Linguaggi e Computazione
|
|
- Ernesto Donato
- 4 anni fa
- Visualizzazioni
Transcript
1 Automi, Linguaggi e Computazione Capitolo 1 : Teoria degli Automi e Tecniche di Dimostrazione Laurea Magistrale in Ingegneria Informatica Università di Padova Docente : Giorgio Satta Presentazione basata su materiale originariamente sviluppato da : Gösta Grahne, Concordia University Francesca Rossi, Università di Padova
2 Informatica teorica
3 Introduzione Uno degli obiettivi principali dell informatica teorica è lo studio matematico della computazione computabilità : cosa posso computare?? trattabilità : cosa posso computare in modo efficiente?? Per studiare la computazione è necessario sviluppare modelli astratti di calcolo : teoria degli automi sviluppare una rappresentazione dei problemi e studiare le loro proprietà : teoria dei linguaggi formali
4 Introduzione Modelli di calcolo più noti : macchine di Turing, introdotte per lo studio della calcolabilità automi a stati finiti, introdotti come modelli del calcolo neuronale grammatiche formali, introdotte da Noam Chomsky come modelli linguistici
5 1 Introduzione agli automi a stati finiti : modello di calcolo pervasivo che utilizza una quantità prefissata di memoria 2 Tecniche per le dimostrazioni formali : ipotesi, tesi, deduzione, induzione 3 della teoria degli automi : alfabeti, stringhe e linguaggi
6 Automa a stati finiti : Insieme finito di stati con regole di transizione che portano da uno stato all altro come modello per : software per la progettazione di circuiti digitali analizzatori lessicali di un compilatore ricerca di parole in un file o sul web software per verificare sistemi a stati finiti, come protocolli di comunicazione
7 Rappresentazione La più semplice rappresentazione per un automa a stati finiti è il grafo : i nodi rappresentano gli stati gli archi rappresentano transizioni le etichette sugli archi ci dicono cosa causa la transizione
8 Esempio Automa a stati finiti per un interruttore on/off Push Start off on Push Automa a stati finiti che riconosce la parola chiave then del linguaggio di programmazione Java Start t h e n t th the then
9 Rappresentazioni strutturali Gli automi a stati finiti sono modelli riconoscitori : prendono in ingresso una sequenza (stringa) e accettano oppure rifiutano Alternativamente posso rappresentare una macchina calcolatrice utilizzando modelli generativi : vengono generate tutte le sequenze compatibili (non c è input)
10 Rappresentazioni strutturali Grammatiche : Una regola di riscrittura E Ñ E ` E specifica che un espressione aritmetica può essere formata da due espressioni aritmetiche connesse dall operatore addizione Espressioni regolari : L espressione [A-Z][a-z]*[ ][A-Z][A-Z] genera la stringa Ithaca NY, ma non genera la stringa Palo Alto CA
11 Dimostrazioni deduttive Forma tipica del teorema da dimostrare (H, C proprietà) : Se H, allora C dove H = ipotesi, C = conclusione Ciò significa che H è condizione sufficiente per C C è condizione necessaria per H
12 Dimostrazioni deduttive In una interpretazione insiemistica, H e C sono associati all insieme degli elementi dell universo U che hanno tale proprietà H ñ C equivale a H Ď C : se H vero, C non può essere falso C H U
13 Dimostrazioni deduttive Deduzione : Sequenza di enunciati che parte dalle ipotesi e porta alla conclusione Ogni passaggio della deduzione utilizza un principio logico accettato, e lo applica alle ipotesi oppure ad uno degli enunciati precedentemente ottenuti Modus ponens : regola logica per passare da un enuciato al successivo. Se sappiamo che se H allora C è vera, e se sappiamo che H è vera, allora possiamo concludere che C è vera
14 Esempio Teorema Se x è somma dei quadrati di quattro interi positivi, allora 2 x ě x 2 x è un parametro dell enunciato, ed è quantificato universalmente, il teorema vale per tutti gli x che soddisfano le ipotesi Vedi libro di testo per esempio di deduzione che dimostra il teorema
15 Dimostrazioni deduttive Teoremi della forma C1 se e solo se C2 richiedono la dimostrazione in due direzioni : se C2 allora C1 se C1 allora C2 che è equivalente a C1 solo se C2
16 Altre tecniche Ridurre ipotesi a definizioni : Convertire tutti i termini delle ipotesi nelle corrispondenti definizioni Dimostrazione per assurdo : Per dimostrare se H allora C, dimostro H e non C implica il falso
17 Esempio Teorema Sia S sottoinsieme finito di un insieme infinito U. Sia T il complemento di S rispetto a U. Allora T è infinito Dimostrazione S è finito equivale, per definizione, a : esiste un intero n tale che S n U è infinito equivale, per definizione, a : per nessun intero n vale U n T è il complemento di S equivale, per definizione, a : S Y T U e S X T H
18 Esempio Considero la negazione della conclusione T è finito (dimostrazione per assurdo) T è finito equivale, per definizione, a : esiste un intero m tale che T m Usando S n ed usando S Y T U e S X T H, segue che U S ` T n ` m, cioè U è finito. Ciò contraddice l ipotesi l
19 Altre tecniche Controesempio : per dimostrare che un teorema non vale basta dimostrare che in un caso il teorema è falso Esempio : È vero che se x è un numero primo allora x è dispari?? No, infatti 2 è un numero primo ma non è dispari
20 Quantificatori Per ogni x (@x) : vale per tutti i valori della variabile Esiste x (Dx) : vale per almeno un valore della variabile L ordine in cui compaiono i quantificatori influisce sul significato dell enunciato
21 Esempio Teorema Se un insieme S è infinito, allora per ogni intero n esiste almeno un sottoinsieme T di S con n precede D; per la dimostrazione dobbiamo dunque (nell ordine) considerare un n arbitrario dimostrare l esistenza di un sottoinsieme T di S con n elementi
22 Uguaglianza tra insiemi Se E ed F sono insiemi, per dimostrare E F dobbiamo dimostrare E Ď F e F Ď E Ciò si riduce a dimostrare due enunciati se e solo se : se x è in E allora x è in F se x è in F allora x è in E
23 Contronominale L enunciato se H allora C è equivalente all enunciato se C è falso allora H è falso detto contronominale, o anche modus tollens La dimostrazione di equivalenza utilizza la tabella di verità In alcuni casi può essere più agevole dimostrare il contronominale
24 Dimostrazione per induzione Tecnica essenziale quando si lavora su oggetti definiti ricorsivamente (espressioni, alberi, ecc.) Induzione sugli interi : dobbiamo dimostrare un enunciato Spnq con n intero nel caso base dimostriamo Spiq per un intero particolare (di solito i 0 o i 1) nel passo induttivo per n ě i, dimostriamo l enunciato se Spnq allora vale Spn ` 1q Possiamo concludere che Spnq è vero per ogni n ě i, dove i è il caso base
25 Esempio Teorema Se x ě 4, allora 2 x ě x 2 Dimostrazione Base x 4 ñ 2 x e x Induzione Supponiamo che 2 x ě x 2 per x ě 4 Dobbiamo dimostrare che 2 x`1 ě px ` 1q 2 : 2 x`1 2 2 x ě 2 x 2 (per ipotesi induttiva) dimostriamo adesso che 2x 2 ě px ` 1q 2 x 2 ` 2x ` 1 semplificando (divido per x 0): x ě 2 ` 1{x se x ě 4, 1{x ď 1{4 ñ 2 ` 1{x ď 2.25 l
26 Dimostrazione per induzione Possiamo dimostrare un numero finito di casi base Possiamo estendere il passo induttivo e dimostrare per un certo k ą 0 : se Spn kq, Spn k ` 1q,..., Spn 1q, Spnq allora vale Spn ` 1q
27 Induzione strutturale Molte strutture possono essere definite ricorsivamente Definizione di espressione aritmetica Base Qualunque variabile o numero è un espressione aritmetica Induzione Se E e F sono espressioni aritmetiche, allora lo sono anche E ` F, E ˆ F, e peq Esempio : Sono espressioni aritmetiche 3 ` px ˆ 2q e p2 ˆ p5 ` 7qq ˆ y
28 Induzione strutturale Definizione di albero Base Un singolo nodo N è un albero di radice N Induzione Se T 1, T 2,..., T k, k ě 1, sono alberi, la struttura seguente è un albero di radice N N T 1 T 2 T k
29 Induzione strutturale Per dimostrare teoremi su una struttura X definita ricorsivamente: si dimostra l enunciato sul caso base della definizione di X si dimostra l enunciato sulla struttura X a partire dalla validità dell enunciato sulle strutture di cui X è composta secondo la definizione ricorsiva
30 Esempio Teorema Ogni espressione aritmetica ha un numero uguale di parentesi aperte e chiuse Dimostrazione Procediamo per induzione sul numero di parentesi Base Una variabile e un numero hanno zero parentesi aperte e zero parentesi chiuse Induzione Assumiamo che E abbia n parentesi aperte e chiuse e F ne abbia m Ho tre modi per costruire induttivamente una espressione aritmetica : E ` F ha n ` m parentesi aperte e n ` m parentesi chiuse E ˆ F ha n ` m parentesi aperte e n ` m parentesi chiuse peq ha n ` 1 parentesi aperte e n ` 1 parentesi chiuse l
31 Esempio Teorema Ogni albero T ha un numero di nodi n ed un numero di archi e tale che n e ` 1 Dimostrazione Procediamo per induzione sulla struttura di T Base T ha n 1 ed e 0 Induzione Assumiamo che T i abbia n i nodi ed e i archi, con n i e i ` 1 Abbiamo : n 1 ` kÿ i 1 n i, e k ` kÿ i 1 e i
32 Esempio Segue : n 1 ` řk i 1 n i 1 ` řk i 1 p1 ` e iq ipotesi induttiva 1 ` k ` řk i 1 e i 1 ` e l
33 Induzione mutua Talvolta non è possibile dimostrare un singolo enunciato per induzione, perchè un enunciato dipende da altri enunciati Si deve dimostrare congiuntamente un gruppo di enunciati S 1 pnq, S 2 pnq,..., S k pnq per induzione su n
34 Esempio Push Start off on Push Teorema Dato l automa in figura S 1 pnq : Dopo n azioni di push, l automa si trova nello stato off se e solo se n è pari S 2 pnq : Dopo n azioni di push, l automa si trova nello stato on se e solo se n è dispari
35 Esempio Dimostrazione Procediamo per induzione su n Base (S 1 p0q, se) Dopo 0 push, l automa è nello stato off (S 1 p0q, solo se) 0 pari è sempre vero (S 2 p0q, se) 0 dispari (premessa) è falso, quindi implicazione vera (S 2 p0q, solo se) L automa è nello stato on dopo 0 push (premessa) è falso, quindi implicazione vera
36 Esempio Induzione Assumiamo S 1 pnq e S 2 pnq veri, e dimostriamo S 1 pn ` 1q e S 2 pn ` 1q (S 1 pn ` 1q, se) Da n ` 1 pari abbiamo n dispari. Applico l ipotesi induttiva S 2 pnq, parte se, ed ottengo che dopo n push, l automa è nello stato on. Dallo stato on abbiamo una transizione push allo stato off. Quindi dopo n ` 1 push, l automa è nello stato off (S 1 pn ` 1q, solo se) L automa è in stato off dopo n ` 1 push. Poiché vi è una sola transizione push entrante in off, l automa era in stato on dopo n push. Applico l ipotesi induttiva S 2 pnq, parte solo se, ed ottengo che n è dispari. Dunque n ` 1 è pari
37 Esempio (S 2 pn ` 1q, se) Da n ` 1 dispari abbiamo n pari. Applico l ipotesi induttiva S 1 pnq, parte se, ed ottengo che dopo n push, l automa è nello stato off. Dallo stato off abbiamo una transizione push allo stato on. Quindi dopo n ` 1 push, l automa è nello stato on (S 2 pn ` 1q, solo se) L automa è in stato on dopo n ` 1 push. Poiché vi è una sola transizione push entrante in on, l automa era in stato off dopo n push. Applico l ipotesi induttiva S 1 pnq, parte solo se, ed ottengo che n è pari. Dunque n ` 1 è dispari l
38 Alfabeto & stringhe Alfabeto : insieme finito e non vuoto di simboli atomici Esempio : Σ t0, 1u alfabeto binario Σ ta, b, c,..., zu insieme di tutte le lettere minuscole insieme di tutti i caratteri ASCII stampabili Stringa : Sequenza finita di simboli presi da un alfabeto stringa su Σ t0, 1u Stringa vuota : La stringa con zero simboli (presi da un qualsiasi alfabeto) è denotata ɛ
39 Alfabeto & stringhe Lunghezza di una stringa : Numero di occorrenze (posizioni) per i simboli nella stringa w denota la lunghezza della stringa w , ɛ 0 Potenze di un alfabeto : Σ k è l insieme delle stringhe di lunghezza k con simboli da Σ Σ t0, 1u Σ 1 t0, 1u; ambiguità tra Σ e Σ 1 Σ 2 t00, 01, 10, 11u Σ 0 tɛu Domanda : Quante stringhe ci sono in Σ 3??
40 Alfabeto & stringhe L insieme di tutte le stringhe su Σ è denotato Σ Abbiamo Σ Σ 0 Y Σ 1 Y Σ 2 Y Σ` Σ 1 Y Σ 2 Y Σ 3 Y Σ Σ` Y tɛu
41 Alfabeto & stringhe Concatenazione : Se x e y sono stringhe, allora xy è la stringa ottenuta mettendo una copia di y immediatamente dopo una copia di x Esempio : Per ogni stringa x : x y 110 xy xɛ ɛx x ɛ è l elemento neutro della concatenazione
42 Alfabeto & stringhe Convenzioni : a, b, c,..., a 1, a 2,..., a i,... simboli di un alfabeto u, w, x, y, z stringhe per n ě 0, a n aa a (a ripetuto n volte) a 0 ɛ, a 1 a
43 Linguaggi Un linguaggio è un insieme di stringhe scelte da Σ, dove Σ è un alfabeto. L Ď Σ è un linguaggio Esempio : insieme delle parole della lingua italiana insieme dei programmi C senza errori sintattici insieme delle stringhe che consistono di n zeri seguiti da n uni, con n ě 0 tɛ, 01, 0011, ,...u insieme delle stringhe con un numero uguale di zeri e di uni tɛ, 01, 10, 0011, 0101, 1001,...u
44 Linguaggi Esempio : insieme dei numeri binari il cui valore è primo L p t10, 11, 101, 111, 1011,...u linguaggio vuoto H, non contiene alcuna stringa linguaggio tɛu, contiene la sola stringa vuota Non confondere questi due linguaggi : H tɛu
45 Linguaggi Rappresentazione estensiva di un linguaggio : L tɛ, 01, 0011, ,...u Posso definire un linguaggio in forma intensiva, usando un descrittore di insiemi : L tw enunciato su wu Esempio : tw w consiste di un numero uguale di 0 e 1u tw w è un intero binario che è primou tw w è un programma Java sintatticamente correttou
46 Linguaggi Spesso uso descrittori di insiemi espressi in forma matematica : L tw w 0 n 1 n, n ě 0u oppure, in forma semplificata, anche : L t0 n 1 n n ě 0u che risulta equivalente a : L tɛ, 01, 0011, ,...u Nota : non confondere i due linguaggi t0 n 1 n n ě 0u t0 n 1 n u, n ě 0
47 Linguaggi Esempio : t0 i 1 j i, j ě 1, i ě ju t0 i 1 j i, j ě 1, i ą j oppure i ă ju Non esiste una sintassi precisa per l uso dei descrittori di insiemi
48 Problemi di decisione Sia P un predicato che esprime una proprietà matematica Problema di decisione associato a P : assegnato in input un elemento x, decidere se P è vero per x Riformulazione mediante un linguaggio formale : L P tx x ha la proprietà Pu Assegnato in input un elemento x (visto come una stringa), x P L P??
49 Esempio Assegnato in input un numero binario x, decidere se x è primo Definiamo il linguaggio dei numeri primi L p t10, 11, 101, 111, 1011,...u Assegnata in input la stringa binaria x, x P L p??
50 Problemi di decisione Molti problemi matematici non sono problemi di decisione, ma richiedono una elaborazione che costruisca un risultato in output Esempio : assegnate le matrici A, B, costruire la matrice C A ˆ B problema decisionale associato : data una tripla xa, B, Cy di matrici, decidere se C A ˆ B
51 Problemi di decisione La risoluzione computazionale di un problema di elaborazione non può essere più semplice della risoluzione del problema di decisione associato Esempio : algoritmo di decisione che utilizza l algoritmo di elaborazione come subroutine (tecnica di riduzione) input xa, B, Cy uso subroutine su A, B per costruire C 1 A ˆ B se C 1 C rispondo si al problema di decisione, altrimenti rispondo no
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
DettagliFondamenti di Programmazione: AUTOMI E LINGUAGGI FORMALI Corso di Laurea in MATEMATICA a.a. 2018/2019
Fondamenti di Programmazione: AUTOMI E LINGUAGGI FORMALI Corso di Laurea in MATEMATICA a.a. 2018/2019 Chiara Bodei Dipartimento di Informatica chiara.bodei@unipi.it Testi di riferimento Libro di testo
DettagliAutomi a stati finiti
ommario Introduzione agli automi a stati finiti Concetti di base della teoria degli automi Tecniche di dimostrazione deterministici (DFA) non deterministici (NFA) non deterministici con ɛ-transizione (ɛ-nfa)
DettagliFondamenti 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
DettagliEsercizi di Logica Matematica (parte 2)
Luca Costabile Esercizio 317 Esercizi di Logica Matematica (parte 2) Dimostro per induzione sulla costruzione del termine : - Supponiamo che sia una variabile :, - Supponiamo che sia una variabile diversa
DettagliAutomi e Linguaggi Formali. Cambiamenti di orario. Altre informazioni utili. Motivazione. Anno accademico
Automi e Linguaggi Formali Anno accademico 5-6 Docente: Francesca Rossi E-mail: 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
DettagliAutomi e Linguaggi Formali
Automi e Linguaggi Formali Linguaggi regolari e automi a stati finiti 6 Ottobre 214 A.A. 214-215 Enrico Mezzetti emezzett@math.unipd.it Recap Definizione informale di automi a stati finiti Diagramma delle
DettagliSintassi. Linguaggi. 4: Sintassi. Claudio Sacerdoti Coen. Universitá di Bologna 24/02/2011. Claudio Sacerdoti Coen
Linguaggi 4: Universitá di Bologna 24/02/2011 Outline 1 Wikipedia: La sintassi è la branca della linguistica che studia i diversi modi in cui le parole si uniscono tra loro per formare
DettagliAutomi a stati finiti
Automi a stati finiti Definizioni preliminari Il modello: la definizione formale, esempi. Le definizioni utili per descrivere e provare proprietà degli automi: diagramma degli stati, configurazioni, relazione
DettagliLOGICA 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
DettagliEsercizi di Informatica Teorica - DFA
Esercizi di Informatica Teorica - DFA Esercizio Definire, se esso esiste, l automa deterministico a stati finiti A che riconosce il linguaggio L = {w w {,},w[i] =, i dispari,i > }. Dimostrare rigorosamente
DettagliFormali. Corso di Automi e Linguaggi. Gennaio- Marzo Docente: Francesca Rossi,
Corso di Automi e Linguaggi Formali Gennaio- Marzo 2004 Docente: Francesca Rossi, frossi@math.unipd.it Corso di Automi e Linguaggi Formali Gennaio-Marzo 2004 p.1/30 Dati del corso Orario: Lunedi 15:50-17:30,
DettagliLogica 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
DettagliSui 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.
DettagliRagionamenti e metodi di dimostrazione. Liceo Scientifico Statale S. Cannizzaro Prof.re E. Modica
Ragionamenti e metodi di dimostrazione Liceo Scientifico Statale S. Cannizzaro Prof.re E. Modica Proposizioni Si definisce proposizione una frase alla quale è possibile attribuire uno e un solo valore
Dettagli02 - 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
DettagliRagionamento formalei. Ragionamento formale
Ragionamento formale La necessità e l importanza di comprendere le basi del ragionamento formale, utilizzato in matematica per dimostrare teoremi all interno di teorie, è in generale un argomento piuttosto
DettagliRISOLUZIONE 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
DettagliConcetti 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
Dettagli04 - 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,
Dettagli1 Cenni di logica matematica
1 Cenni di logica matematica 1 1 Cenni di logica matematica Una delle discipline chiave della matematica (e non solo, visto che è fondamentale anche per comprendere la lingua parlata) è la logica matematica,
DettagliFondamenti dell Informatica
Fondamenti dell Informatica Compito scritto 28 settembre 2005 Cognome: Nome: Matricola: Note 1. Per i quiz a risposta multipla, fare una croce sulla/e lettera/e che identifica/no la/e risposta/e desiderata/e.
DettagliCapitolo 1: Concetti matematici di base
Capitolo 1: Concetti matematici di base 1 Insiemi x A x é elemento dell insieme A. B A B é un sottoinsieme di A. B A B é un sottoinsieme proprio di A. A costituito da n elementi A = n é la sua cardinalitá.
DettagliLinguaggi di Programmazione Corso C. Parte n.6 Linguaggi Regolari ed Espressioni Regolari. Nicola Fanizzi
Linguaggi di Programmazione Corso C Parte n.6 Linguaggi Regolari ed Espressioni Regolari Nicola Fanizzi (fanizzi@di.uniba.it) Dipartimento di Informatica Università degli Studi di Bari Linguaggi Regolari
DettagliPrefazione all edizione italiana
Questo è l'indice del libro, in cui sono evidenziati i paragrafi corrispondenti agli argomenti trattati nel corso e che costituiscono il programma d'esame. Si noti che la presentazione di alcuni argomenti
DettagliIntroduzione al corso
Introduzione al corso Argomenti della lezione Obiettivi e programma del corso Alfabeti, stringhe, linguaggi Operazioni su linguaggi Espressioni regolari Per studiare le proprietà fondamentali di algoritmi,
DettagliAutomi e Linguaggi Formali
E-mail: frossi@math.unipd.it rario e ricevimento Orario: Mercoledi 13:30 15:30, LUM 250 Giovedi 13:30 15:30, LUM 250 Venerdi 12:30 13:30, LUM 250 Ricevimento: Martedi 16:00-18:00, studio 428, IV piano,
DettagliINDUZIONE E NUMERI NATURALI
INDUZIONE E NUMERI NATURALI 1. Il principio di induzione Il principio di induzione è una tecnica di dimostrazione molto usata in matematica. Lo scopo di questa sezione è di enunciare tale principio e di
DettagliIl 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
DettagliFondamenti teorici e programmazione
Fondamenti teorici e programmazione FTP(A) - modb Lezione 8 F.Bonchi Dip.to Informatica Fondamenti teorici e programmazione (A) - modb a.a. 2018/19 pag. 1 Ragionamento formale Comprendere le basi del ragionamento
DettagliLuca 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
DettagliProblemi, 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
DettagliInformatica
Informatica 2019-06-24 Nota: Scrivete su tutti i fogli nome e matricola. Esercizio 1. Si forniscano le regole della semantica delle espressioni di IMP, e si enunci il risultato di determinismo per tale
DettagliESERCIZI DI LOGICA MATEMATICA A.A Alessandro Combi
ESERCIZI DI LOGICA MATEMATICA A.A. 2015-16 Alessandro Combi Esercizio 1.7 Per ogni formula A, dimostrare che ρ(a) = min{n A F n } Soluzione: Chiamo rank(a) = min{n A F n }. Bisogna provare che rank segue
DettagliLinguaggi formali e compilazione
Linguaggi formali e compilazione Corso di Laurea in Informatica A.A. 2014/2015 Linguaggi formali e compilazione Generalità delle ǫ-transizioni Gli automi non deterministici, come abbiamo visto, possono
DettagliLinguaggi 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
DettagliGrammatiche libere da contesto. Grammatiche libere da contesto
rammatiche e Linguaggi Liberi da Contesto Abbiamo visto che molti linguaggi non sono regolari. Consideriamo allora classi piu grandi di linguaggi Linguaggi Liberi da Contesto (CFL) sono stati usati nello
DettagliErrata corrige del libro Introduzione alla logica e al linguaggio matematico
Errata corrige del libro Introduzione alla logica e al linguaggio matematico 28 gennaio 2009 Capitolo 1 Pag. 7, Definizione 6. Il complemento di un sottoinsieme A di I è il sottoinsieme A = {x I : x /
DettagliPROGRAMMA CONSUNTIVO
PAGINA: 1 PROGRAMMA CONSUNTIVO A.S.2014-2015 SCUOLA Liceo Linguistico Manzoni DOCENTE: Marina Barbàra MATERIA: Matematica e Informatica Classe 1 Sezione A OBIETTIVI: le parti sottolineate sono da considerarsi
DettagliLo studioso di logica si chiede se la conclusione segue correttamente dalla premesse fornite e se premesse sono buone per accettare la conclusione.
Logica binaria La logica è la scienza del corretto ragionamento e consiste nello studio dei principi e dei metodi che consentono di individuare il corretto ragionamento. Lo studioso di logica si chiede
DettagliLogica 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
DettagliFondamenti di Informatica 2
Fondamenti di Informatica 2 Linguaggi e Complessità : Lezione 1 Corso Fondamenti di Informatica 2 Marco Schaerf, 2009-2010 Linguaggi e Complessità : Lezione 1 1 Logica proposizionale Linguaggio matematico
DettagliIntroduzione alla Matematica per le Scienze Sociali - parte I
Introduzione alla Matematica per le Scienze Sociali - parte I Lucrezia Fanti Istituto Nazionale per l Analisi delle Politiche Pubbliche (INAPP) lucrezia.fanti@uniroma1.it Lucrezia Fanti Intro Matematica
DettagliGrammatiche e Linguaggi Liberi da Contesto
Grammatiche e Linguaggi Liberi da Contesto Abbiamo visto che molti linguaggi non sono regolari. Consideriamo allora classi più grandi di linguaggi. I Linguaggi Liberi da Contesto (CFL) sono stati usati
DettagliEsercitazioni per il corso di Logica Matematica
Esercitazioni per il corso di Logica Matematica Luca Motto Ros 27 febbraio 2005 Nota importante. Queste pagine contengono appunti personali dell esercitatore e sono messe a disposizione nel caso possano
Dettagli1 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
DettagliGrammatiche 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,
DettagliAUTOMA 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
DettagliLinguaggi di Programmazione Corso C. Parte n.2 Introduzione ai Linguaggi Formali. Nicola Fanizzi
Linguaggi di Programmazione Corso C Parte n.2 Introduzione ai Linguaggi Formali Nicola Fanizzi (fanizzi@di.uniba.it) Dipartimento di Informatica Università degli Studi di Bari Definizioni Preliminari Un
DettagliFondamenti teorici e programmazione
Fondamenti teorici e programmazione FTP(A) - modb Lezione 16 Grammatiche Libere da Contesto Alberi di derivazione sintattica Linguaggio generato F.Bonchi Dip.to Informatica Fondamenti teorici e programmazione
Dettagli1 Richiami di logica matematica
Geometria e Topologia I 2006-mar-05 1 1 Richiami di logica matematica Definire cos è un enunciato, una proposizione (elemento primitivo della logica delle proposizioni). La definizione è data in termini
DettagliLogica per la Programmazione
Logica per la Programmazione Lezione 4 Dimostrazione di Implicazioni Tautologiche Principio di sostituzione per l implicazione Occorrenze positive e negative Altre tecniche di dimostrazione Forme Normali
Dettagli1 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
DettagliFondamenti dell informatica
Fondamenti dell informatica Funzioni ricorsive e linguaggi funzionali Rosario Culmone rosario.culmone@unicam.it 16/4/2008 UNICAM - p. 1/21 Funzioni ricorsive Metodo di definizione di algoritmi introdotto
DettagliAUTOMI A STATI FINITI
AUTOMI A STATI FINITI I linguaggi regolari godono di interessanti proprietà algebriche: Sono defnibili con le espressioni regolari Sono generati da grammatiche di Chomsky di tipo 3. Sono riconoscibili
DettagliLinguaggi 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
DettagliLinguaggi Regolari e Linguaggi Liberi. Linguaggi Regolari. Determinismo vs Non determinismo. Potere espressivo
e Linguaggi Liberi Linguaggi regolari Potere espressivo degli automi Costruzione di una grammatica equivalente a un automa Grammatiche regolari Potere espressivo delle Tutti i linguaggi che possono essere
DettagliLinguaggi 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
DettagliINSIEMI. DEF. Un INSIEME è una qualsiasi collezione di oggetti.
INSIEMI DEF. Un INSIEME è una qualsiasi collezione di oggetti. Esso è ben definito quando è chiaro se un oggetto appartiene o non appartiene all insieme stesso. Esempio. E possibile definire l insieme
DettagliProgamma 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
DettagliAutomi e Linguaggi Formali
Automi e Linguaggi Formali Espressioni regolari A.A. 2014-2015 Enrico Mezzetti emezzett@math.unipd.it Espressioni regolari Un FA (NFA o DFA) e un metodo per costruire una macchina che riconosce linguaggi
DettagliSommario. Espressioni regolari. Equivalenza tra espressioni regolari e DFA. Esercizi problemi di decisione
Sommario Espressioni regolari Equivalenza tra espressioni regolari e DFA Esercizi problemi di decisione ESPRESSIONI REGOLARI Le espressioni regolari sono una notazione per rappresentare insiemi di stringhe
DettagliMETODI MATEMATICI PER L INFORMATICA
METODI MATEMATICI PER L INFORMATICA ANNO ACCADEMICO 2011/2012 Sommario. Sintassi e semantica della Logica dei predicati. Proprietà fondamentali dei quantificatori. Strutture, soddisfacibilità e verità
Dettagli4 La Logica come base di ogni scienza. 5 Alla ricerca della forma logica. logica
4 La Logica come base di ogni scienza La Logica è alla base di ogni scienza (o teoria) in quanto è fondamento di ogni scienza non tanto per i contenuti specifici ma per la loro articolazione deduttiva.
DettagliFondamenti dell Informatica. Esercizi di preparazione al secondo compitino
Fondamenti dell Informatica (III anno Laurea Triennale) Esercizi di preparazione al secondo compitino a.a. 2016/17 Funzioni primitive ricorsive Si definiscano come primitive ricorsive le seguenti funzioni:
DettagliInsiemi Numerici: I Numeri Naturali. 1 I Numeri Naturali: definizione assiomatica
Insiemi Numerici: I Numeri Naturali Docente: Francesca Benanti Ottobre 018 1 I Numeri Naturali: definizione assiomatica Sin dall antichità è stata data una sistemazione rigorosa alla geometria. Euclide
DettagliElementi di logica. SCOPO: introdurre nozioni di logica & vocabolario per una corretta interpretazione delle dimostrazioni.
Elementi di logica SCOPO: introdurre nozioni di logica & vocabolario per una corretta interpretazione delle dimostrazioni. Quantificatori: elementi fondamentali del linguaggio matematico. quantificatore
DettagliT1: Logica, discorso e conoscenza. Logica classica
T1: Logica, discorso e conoscenza Primo modulo: Logica classica ovvero Deduzione formale vs verità: un introduzione ai teoremi limitativi Simone Martini Dipartimento di Scienze dell Informazione Alma mater
DettagliIstituzioni di Logica Matematica
Istituzioni di Logica Matematica Sezione 8 del Capitolo 2 Alessandro Andretta Dipartimento di Matematica Università di Torino A. Andretta (Torino) Istituzioni di Logica Matematica AA 2012 2013 1 / 31 Strutture
DettagliGrammatiche. Grammatiche libere da contesto Grammatiche regolari Potenza delle grammatiche libere e regolari Struttura di frase: Alberi di derivazione
Grammatiche Grammatiche libere da contesto Grammatiche regolari Potenza delle grammatiche libere e regolari Struttura di frase: Alberi di derivazione Esempio dei numeri interi Si consideri il linguaggio
Dettaglia cura di Luca Cabibbo e Walter Didimo
a cura di Luca Cabibbo e Walter Didimo Esercizi di Informatica teorica - Luca Cabibbo e Walter Didimo 1 principio di induzione finita (o matematica) cardinalità di insiemi pigeonhole principle espressioni
Dettaglia cura di Luca Cabibbo e Walter Didimo
a cura di Luca Cabibbo e Walter Didimo Esercizi di Informatica teorica - Luca Cabibbo e Walter Didimo 1 calcolabilità in vari contesti riduzioni e calcolabilità dimostrazioni di decidibilità di problemi
DettagliInformatica
Informatica 2019-01-18 Nota: Scrivete su tutti i fogli nome e matricola. Esercizio 1. Si enuncino, senza dimostrarli, i risultati relativi al determinismo e alla totalità della semantica delle espressioni
DettagliProprieta dei Linguaggi Regolari. Proprieta dei Linguaggi Regolari
roprieta dei Linguaggi Regolari Pumping Lemma. Ogni linguaggio regolare soddisfa una proprieta ben nota, il pumping lemma. Questa tecnica fornisce uno strumento utile per dimostrare che un linguaggio non
DettagliInformazione binaria: - rappresentazione di valori logici -
Informazione binaria: - rappresentazione di valori logici - Percorso di Preparazione agli Studi di Ingegneria Università degli Studi di Brescia Docente: Massimiliano Giacomin Tipologie di codici Nel seguito
DettagliISTITUTO TECNICO STATALE COMMERCIALE E PER GEOMETRI A. MARTINI Castelfranco Veneto (TV) Elementi di Logica
settembre 008 Elementi di Logica 1. Nozioni preliminari La logica studia come funziona il pensiero e il ragionamento espresso attraverso degli enunciati Il ragionamento è un sistema di enunciati che permette
DettagliInsiemi Numerici: I Numeri Naturali
Insiemi Numerici: I Numeri Naturali Docente: Francesca Benanti Ottobre 2018 Page 1 of 23 1. I Numeri Naturali: definizione assiomatica Sin dall antichità è stata data una sistemazione rigorosa alla geometria.
DettagliLOGICA DEL PRIMO ORDINE: PROOF SYSTEM. Corso di Logica per la Programmazione A.A. 2013/14 Andrea Corradini
LOGICA DEL PRIMO ORDINE: PROOF SYSTEM Corso di Logica per la Programmazione A.A. 2013/14 Andrea Corradini LOGICA DEL PRIMO ORDINE: RIASSUNTO Sintassi: grammatica libera da contesto (BNF), parametrica rispetto
DettagliAnalisi Sintattica. Maria Rita Di Berardini. Universitá di Camerino Ruolo del parser
Ruolo del parser Analisi 1 1 Dipartimento di Matematica e Informatica Universitá di Camerino mariarita.diberardini@unicam.it Ruolo del parser Ruolo dell analisi sintattica Ruolo del parser Metodologie
DettagliLogica per la Programmazione
Logica del Primo Ordine: Motivazioni, Sintassi e Interpretazioni Logica per la Programmazione Lezione 8 Modelli, Formule Valide, Conseguenza Logica Proof Systems Regole di inferenza per Calcolo Proposizionale
DettagliTeoria 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
DettagliCOMPITO di LOGICA PER INFORMATICA (fila 1) 24 giugno 2005
COMPITO di LOGICA PER INFORMATICA (fila ) 24 giugno 2005 Nome: Matricola: Esercizio. Si dimostri che la seguente regola logica è valida, vale a dire, si dimostri che se la premessa è vera in ogni struttura
DettagliLinguaggi 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
DettagliLINGUAGGI REGOLARI. Teorema (Kleene). Le seguenti classi di linguaggi sono equivalenti:
LINGUAGGI REGOLARI Teorema (Kleene). Le seguenti classi di linguaggi sono equivalenti: 1 - L(GR): linguaggi generati da grammatiche di tipo 3 (anche con ε-produzioni) 2 - L(ASF): linguaggi riconosciuti
DettagliLa 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...
Dettagli1 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
DettagliMETODI MATEMATICI PER L INFORMATICA
METODI MATEMATICI PER L INFORMATICA Tutorato Lezione 5 05/05/2016 Corso per matricole congrue a 1 Docente: Margherita Napoli Tutor: Amedeo Leo Dimostrazioni e prove Esercizio 7 pagina 91 Utilizzare una
DettagliLogica 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
DettagliTecniche di prova per induzione
Aniello Murano Tecniche di prova per induzione 3 Lezione n. Parole chiave: Induzione Corso di Laurea: Informatica Codice: Email Docente: murano@ na.infn.it A.A. 2008-2009 Riassunto delle lezioni precedenti
DettagliLA METAFORA DELL UFFICIO
LA METAFORA DELL UFFICIO Lavagna di lavoro Lavagna di programma Sportello utenti Impiegato Capo Ufficio LAVAGNA DI LAVORO Chiamiamo variabili le posizioni sulla lavagna, identificate ognuna da un nome
DettagliLogica per la Programmazione
Logica per la Programmazione Lezione 12 Linguaggio di Programmazione Imperativo: Sintassi e Semantica Tripla di Hoare soddisfatta A. Corradini e F.Levi Dip.to Informatica Logica per la Programmazione a.a.
DettagliFondamenti di Informatica. per la Sicurezza. a.a. 2003/04. Grammatiche. Stefano Ferrari
Fondamenti di Informatica per la Sicurezza a.a. 2003/04 Grammatiche Stefano Ferrari Università degli Studi di Milano Dipartimento di Tecnologie dell Informazione Stefano Ferrari Università degli Studi
DettagliSistemi Deduttivi. Marco Piastra. Intelligenza Artificiale I. Intelligenza Artificiale I - A.A Sistemi Deduttivi[1]
Intelligenza Artificiale I Sistemi Deduttivi Marco Piastra Intelligenza Artificiale I - A.A. 2010- Sistemi Deduttivi[1] Calcolo simbolico? Una fbf è conseguenza logica di un insieme di fbf sse qualsiasi
DettagliCorso 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
DettagliLogica per la Programmazione
Logica per la Programmazione Lezione 12 Linguaggio di Programmazione Imperativo: Sintassi e Semantica Concetto di Tripla di Hoare Soddisfatta pag. 1 Introduzione Dall inizio del corso ad ora abbiamo introdotto,
Dettagliacuradi Luca Cabibbo e Walter Didimo Esercizi di Informatica teorica - Luca Cabibbo e Walter Didimo 1
acuradi Luca Cabibbo e Walter Didimo Esercizi di Informatica teorica - Luca Cabibbo e Walter Didimo 1 calcolabilità in vari contesti riduzioni e calcolabilità dimostrazioni di decidibilità di problemi
DettagliCostruzione 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