Alfabeti Linguaggi Automi Grammatiche e Compilatori

Slides:



Advertisements
Presentazioni simili
Automi finiti deterministici (DFA) (1)
Advertisements

Automi temporizzati.
Algebra Relazionale 3 Università degli Studi del Sannio
Calcolo Combinatorio.
Un esempio di ricerca sui materiali: il Niobato di Litio
Informatica Generale Marzia Buscemi IMT Lucca
Alfabeti, Stringhe e Linguaggi
1 A B C D … a b c d … Il concetto di insieme 1
Linguaggi Regolari e Linguaggi Liberi
Algebra di Boole e Funzioni Binarie
La politica commerciale
Sistemi di Lindenmayer
(sommario delle lezioni in fondo alla pagina)
INSIEMI INSIEME= gruppo di oggetti di tipo qualsiasi detti elementi dell’insieme. Un insieme è definito quando viene dato un criterio non ambiguo che.
1 Linguaggi di Programmazione - elementi Corso di Laurea in Informatica (AA 2005/2006) Gabriella Pasi e Carla Simone
Firenze 14/12/06Osservatorio gestione rifiuti Provincia di Firenze: i rifiuti dal 1998 al Il Catasto regionale dei rifiuti I Rifiuti Speciali ARPAT.
Definizione e caratteristiche
Circuiti di memorizzazione elementari: i Flip Flop
Analisi e Sintesi di circuiti sequenziali
Università degli Studi di Bergamo Facoltà di Lingue e Letterature Straniere Facoltà di Lettere e Filosofia A.A Informatica generale 1 Appunti.
Informatica 3 Codifica binaria.
A.S.E.5.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 5 Rappresentazione di numeri con segnoRappresentazione di numeri con segno –Modulo e segno (MS)
1 SISTEMI FORMALI e GRAMMATICHE ( parte 1 - sistemi formali )
Relatore: Mario FRATTAROLO
Flip-flop e Registri.
Codici binari decimali
Il Sistema Pubblico di Connettività e la Toscana
Analisi e Sintesi di circuiti sequenziali. Definizione Una macchina sequenziale é un sistema nel quale, detto I(t) l'insieme degli ingressi in t, O(t)
A.CarneraScienza delle Superfici (Mod. B) Spettroscopie.
A.CarneraScienza delle Superfici (Mod. B) Elementi di fisica quantistica.
Il fenomeno del “channeling”
Alfabeti, Stringhe e Linguaggi Def: un insieme è una collezione non ordinata di oggetti o elementi Gli insiemi sono scritti tra { }. Gli elementi sono.
L'algebra di Boole e le sue applicazioni
INSIEMI NUMERABILI L’analisi matematica introduce il concetto di insieme numerabile come insieme i cui elementi possono essere “contati” ossia che possiede.
Intelligenza Artificiale
Rappresentazione dell’informazione
Rete Asincrona Una rete sequenziale asincrona è dotata di due ingressi E, X e di una uscita Z. L'uscita Z deve diventare 1 solamente quando durante l'ultima.
Diagramma degli stati che descrive il comportamento della rete.
GLI INSIEMI Presentazione a cura della Prof.ssa anNUNZIAta DI BIASE
RAPPRESENTAZIONE DELL'INFORMAZIONE
I fattori centrali a sostegno dello sviluppo locale
Dalle lattazioni ai singoli controlli… Il TEST DAY MODEL ITALIANO
Dispensa a cura del prof. Vincenzo Lo Presti
Programmazione di calcolatori
Introduzione ai linguaggi formali e alle stringhe
Facoltà di Ingegneria Corso di Laurea: Insegnamento: Lezione n°: Titolo: Docenti: INGEGNERIA AUTOMAZIONE II 2 LINGUAGGI FORMALI ED AUTOMI PROF. ALESSANDRO.
CONCETTI DI BASE 1.0 FONDAMENTI 1.1 HARDWARE 1.2 SOFTWARE 1.3 RETI
Grammatiche, Linguaggio e Automi R. Basili TAL - a.a
Elaborazione del linguaggio naturale automi & morfologia
Di Michele Miguidiincarichi & finanziaria Gli incarichi di studio, ricerca e consulenza Articolo 1 comma 42 Legge Finanziaria 2005.
Progetto esame Tecnologie Web Anno: 2014 A cura di: Salvatore Giovanni De Vivo Matricola: Strumenti utilizzati: Html, ASP.NET, C#.
Automi temporizzati cooperanti (TCA) . Automi cooperanti (CA)  Un CA consiste di n automi finiti, ciascuno con insieme di stati, stato iniziale e tabella.
Informatica 3 V anno.
Antonio Pio Urzino 1 A A.S. 2009/10
Ingegneria del software Modulo 1 - Introduzione al processo software Unità didattica 3 - Modelli di fase d’analisi Ernesto Damiani Università degli Studi.
Linguaggi di programmazione: panoramica Linguaggi di programmazione ad alto livello: – –Programmazione procedurale – –Programmazione object oriented –
Grammatiche Grammatiche libere da contesto Grammatiche regolari
UNIVERSITA’ DI MILANO-BICOCCA LAUREA MAGISTRALE IN BIOINFORMATICA Corso di BIOINFORMATICA: TECNICHE DI BASE Prof. Giancarlo Mauri Lezione 3 Mappe genetiche.
Espressioni regolari (1)
La codifica dei numeri.
Automi temporizzati.
In generale, con il termine di grammatica si intende un formalismo che permette di definire un insieme di stringhe mediante l’imposizione di un particolare.
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica
GLI INSIEMI SI INDICA CON IL NOME INSIEME MATEMATICO
Insiemi DE VITIS GABRIELE.
A B C D … Insiemi e sottoinsiemi A ESEMPIO
Elementi di calcolo combinatorio e di probabilità. Prof. Ugo Morra Liceo scientifico V. Vecchi di Trani Lezione di potenziamento delle abilità in matematica.
TEORIA ELEMENTARE DEGLI INSIEMI
Linguaggi, stringhe e alfabeti. Linguaggi e grammatiche Un linguaggio è un sistema di comunicazione tra persone che permette di trasmettere informazioni.
Gli insiemi Per insieme in senso matematico si intende un raggruppamento di elementi che possono essere individuati con assoluta certezza A i n s.
Transcript della presentazione:

Alfabeti Linguaggi Automi Grammatiche e Compilatori A cura del prof. Ionta Silvio a.s. 2005

Mappa Alfabeti Linguaggi Algebra dei Linguaggi Automi Operazioni sugli Automi Esempi Prof. Ionta Silvio Anno 2005

Alfabeti Unità didattica n° 1

A  ALFABETO Insieme finito di simboli elementari Es. : Prf. Ionta Silvio A  ALFABETO Insieme finito di simboli elementari Es. : Alfabeto formato dal sol simbolo a  A = {a} Alfabeto Binario  A = {0,1} Alfabeto Morse  A = {- , . , spazio } Alfabeto carte da gioco  A = {, , , ,} Alfabeto della Lingua Italiana  A = {a,b,c,…, z,A,B,C, … , Z} Alfabeto della Lingua Inglese  A = {a,b,…,z,x,y,w.j,k} Alfabeto Greco  A = {α,β,γ,δ,ε ,…,φ,χ,ω} Prof. Ionta Silvio Anno 2005 anno 2005

◦  Operatore Concatenazione Si ottiene unendo il primo simbolo seguito dal secondo simbolo a ◦ b = ab b ◦ a = ba Non gode della proprietà commutativa a ◦ b  b ◦ a Prof. Ionta Silvio Anno 2005

w  Parola - Stringa Le parole si ottengono facendo operazioni di concatenazione fra simboli dello stesso alfabeto A = {a}  w = aaaaaaaaaa..aaaaaaa A = {a,b}  w = ababaab A = {0,1}  w = 01001001  parola Binaria Prof. Ionta Silvio Anno 2005

ε  Stringa Vuota Parola ottenuta concatenando nessun simbolo dell’alfabeto La lunghezza della parola vuota è |ε| = 0 Prof. Ionta Silvio Anno 2005

|W|  Lunghezza di una Parola È il numero di caratteri utilizzati concatenando fra loro i simboli dell’alfabeto nel formare la parola Parola formata da 0 lettere dell’Alfabeto Greco  A = {α,β,γ,δ,ε ,…,φ,χ,ω} |w| = | ε | = 0 Parola formata da 1 lettera dell’ Alfabeto della Lingua Inglese  A = {a,b,…,z,x,y,w.j,k}  |w| = |x| = 1 Parola formata da 2 lettere di A = {0,1}  |w| = |01| = 2 Parola formata da 3 lettere di A = {a,b}  |w| = |aba| = 3 Parola formata da 4 lettere di A = {a}  |w| = |aaaa| = 4 Prof. Ionta Silvio Anno 2005

An  Potenza di un Alfabeto Insieme delle parole che si possono formare concatenando fra loro simboli dell’alfabeto di lunghezza pari a n Es. Alfabeto iniziale  A = {a} A0 = {ε} -> Insieme delle parole di lunghezza 0 -> la parola di lunghezza 0 è solo ε A1 = {a} -> Insieme delle parole di lunghezza 1  la parola di lunghezza 1 è solo quella formata da un solo carattere A2 = {aa} -> Insieme delle parole di lunghezza 2  la parola di lunghezza 2 è solo quella formata dalla concatenazione dello stesso carattere a per due volte … An = {aaa…aaa} -> Insieme delle parole di lunghezza n  la parola di lunghezza n è solo quella formata dalla concatenazione dello stesso carattere a per n volte Prof. Ionta Silvio Anno 2005

An  Potenza di un Alfabeto Es. Alfabeto iniziale  A = {a,b} A0 = {ε} -> Insieme delle parole di lunghezza 0 la parola di lunghezza 0 è solo ε A1 = {a,b} -> Insieme delle parole di lunghezza 1  la parola di lunghezza 1 è solo quella formata da un solo carattere  ci sono due parole : la parola a e la parola b A2 = {aa,ab,ba,bb} -> Insieme delle parole di lunghezza 2  la parola di lunghezza 2 è solo quella formata dalla concatenazione dei due caratteri a e b  sono tante quante le combinazioni a due a due dei due caratteri = 22 = 4 A3 = {aaa,aab,aba,abb,baa,bab,bba,bbb} -> Insieme delle parole di lunghezza 2  la parola di lunghezza 2 è solo quella formata dalla concatenazione dei due caratteri a e b  sono tante quante le combinazioni due a due dei due caratteri = 238 …. An = {aaa…aaa,…,bbb…bbb} -> Insieme delle parole di lunghezza n  la parola di lunghezza n è solo quella formata dalla concatenazione dei due caratteri a e b  sono tante quante le combinazioni n a n dei due caratteri = 2n… Prof. Ionta Silvio Anno 2005

A+  Chiusura Positiva di un Alfabeto È l’insieme di tutte le parole, non nulle e lunghezza finita, che si possono formare unendo i caratteri dell’alfabeto A+ = A1  A2  A3  …  An w  A+  |w| > 0 Prof. Ionta Silvio Anno 2005

A+  Chiusura Positiva di un Alfabeto Alfabeto iniziale  A = {a} A+ = {a,aa, aaa,…,aaa..aa} 1 2 3 n Alfabeto iniziale  A = {a,b} A+ = {a,b,aa,ab,ba,bb, aaa,aab,aba,abb,baa,bab,bba,bbb, 1 2 3 …,aaa..aa,… ,bbb…bbb} n Prof. Ionta Silvio Anno 2005

A*  Chiusura di un Alfabeto È l’insieme di tutte le parole, anche nulle e di lunghezza finita, che si possono formare unendo i caratteri dell’alfabeto A* = A0  A1  A2  …  An w  A+  |w|  0 A* = A0  A+ = {ε}  A+ Prof. Ionta Silvio Anno 2005

A*  Chiusura di un Alfabeto Alfabeto iniziale  A = {a} A* = {ε , a, aa, aaa, …, aaa..aa} 0 1 2 3 n Alfabeto iniziale  A = {a,b} A* = { ε , a,b, aa,ab,ba,bb, aaa,aab,aba,abb,baa,bab,bba,bbb, 0 1 2 3 …, aaa..aa,… ,bbb…bbb} n Prof. Ionta Silvio Anno 2005

Linguaggi Unità didattica n° 2

L Linguaggio sull’alfabeto A È un sottoinsieme di A* È l’insieme delle parole, di lunghezza finita anche nulla, che si possono formare a partire dai caratteri dell’alfabeto concatenandoli fra loro e che soddisfa un particolare insieme di REGOLE Es. il linguaggio Italiano è l’insieme di parole che si possono formare a partire dall’alfabeto Italiano e che soddisfano le regole della grammatica (sintassi) Italiana Nota : Il linguaggio Italiano si può formare anche dall’alfabeto Inglese basta che soddisfi le regole della grammatica Italiana Prof. Ionta Silvio Anno 2005

L Linguaggio sull’alfabeto A Alfabeto iniziale  A = {a} L = { w  A*  |w|  A* } =   Linguaggio formato da nessuna Parola L = { w  A*  |w| = 0 } = {ε}  Linguaggio formato dalla Parola Vuota  parola di lunghezza zero L = { w  A*  |w| = 1 } = {a}  Linguaggio formato dalla Parola di lunghezza 1 Prof. Ionta Silvio Anno 2005

L Linguaggio sull’alfabeto A Alfabeto iniziale  A = {a} L = { w  A*  a2n+1 n0 } = {a,aaa,aaaaa,…} Linguaggio formato dalle parole con un numero dl lettere a dispari L = {wA*  a2n n>0 }={aa,aaaa,aaaaa,…}  Linguaggio formato dalle parole con un numero dl lettere a pari Prof. Ionta Silvio Anno 2005

L Linguaggio sull’alfabeto A L = { w  A*  R(w)= Vero } Metodo DISCORSIVO L = insieme delle Parole formate con lettere dell’alfabeto A, di lunghezza anche nulla ma finita, che soddisfano la particolare Regola R Metodo ENUMERATIVO L = { elenco completo delle parole } Metodo MATEMATICO L = formula matematica sui linguaggi Prof. Ionta Silvio Anno 2005

L Linguaggio sull’alfabeto A Es : L = {w{0,1}*  Inizi con zero} Metodo DISCORSIVO L = Insieme delle Parole formate con lettere dell’alfabeto A cioè I numeri 0 e 1, che soddisfano la particolare Regola che la parola inizi con il numero 0 che può essere seguito da una qualsiasi combinazione, anche nulla, di 0 e 1 a piacere di lunghezza finita Metodo ENUMERATIVO L = { 0, 00, 01, 000, 001, 010, 011, 0000, 0001, 0010, 0011,…. } 1 2 3 4 Metodo MATEMATICO L = 0(0+1)* Prof. Ionta Silvio Anno 2005

Algebra dei Linguaggi Unità didattica n° 3

Algebra dei Linguaggi A = {a,b}  Alfabeto formato da 2 simboli (caratteri) ε  Parola vuota formata non prendendo nessun carattere dell’alfabeto a  parola di lunghezza 1 formata dal 1° carattere dell’alfabeto b  parola di lunghezza 1 formata dal 2° carattere dell’alfabeto Prof. Ionta Silvio Anno 2005

Algebra dei Linguaggi aa, ab, ba, bb aaa, aab, aba, abb, baa, bab,  parole di lunghezza 2 formate concatenando due caratteri dell’alfabeto aaa, aab, aba, abb, baa, bab, bba, bbb  parole di lunghezza 3 formate concatenando tre caratteri dell’alfabeto Prof. Ionta Silvio Anno 2005

Algebra dei Linguaggi ( a + b )  Unione (a◦b)  (ab)  Congiunzione a Posso prendere 1 solo carattere a scelta fra “a” e “b” (a◦b)  (ab)  Congiunzione ab devo prendere obbligatoriamente entrambi i caratteri nello stesso ordine in cui sono indicati ( prima la “a” e poi la “b” Prof. Ionta Silvio Anno 2005

Algebra dei Linguaggi (..)+  Chiusura Positiva Sequenza non vuota di (..) Posso prendere i caratteri in ripetizione in un numero qualsiasi ma obbligatoriamente almeno 1 o prendo un solo carattere (..)  o posso prendo una sequenza di caratteri (..) lunga a piacere (..) (..)(..) (..)(..)(..) (..)(..)(..)(..) . . . . . Prof. Ionta Silvio Anno 2005

Algebra dei Linguaggi (..)*  Chiusura – Operatore stella Sequenza anche vuota di (..) Posso prendere i caratteri in ripetizione in un numero qualsiasi anche nessuno o non prendo nessun (..) o posso prendo una sequenza di caratteri (..) lunga a piacere ε (..) (..)(..) (..)(..)(..) (..)(..)(..)(..) … Prof. Ionta Silvio Anno 2005

Algebra dei Linguaggi a+  Chiusura Positiva Sequenza non vuota di caratteri “a” Posso prendere i caratteri in ripetizione in un numero qualsiasi ma obbligatoriamente almeno 1 o prendo un solo carattere “a”  o posso prendo una sequenza di caratteri “a” lunga a piacere a aa aaa aaaa . . . . . Prof. Ionta Silvio Anno 2005

Algebra dei Linguaggi a*  Chiusura – Operatore stella Sequenza anche vuota di caratteri “a” Posso prendere i caratteri in ripetizione in un numero qualsiasi anche nessuno o non prendo nessun carattere “a”  o posso prendo una sequenza di caratteri “a” lunga a piacere ε a aa aaa aaaa . . . . . Prof. Ionta Silvio Anno 2005

Sequenza di combinazioni non vuota di caratteri “a” e “b” Algebra dei Linguaggi (a+b)+  Chiusura Positiva a,b aa,ab,ba,bb aaa,aab,aba,abb,baa,bab,bba,bbb aaaa,… … Sequenza di combinazioni non vuota di caratteri “a” e “b” Posso prendere i caratteri in ripetizione in un numero qualsiasi scegliendoli a piacere ma obbligatoriamente almeno 1  o prendo un solo carattere “a” o un solo caratere “b”  o posso prendo una sequenza di caratteri lunga a piacere Prof. Ionta Silvio Anno 2005

Sequenza di combinazioni non vuota di coppie di caratteri “ab” Algebra dei Linguaggi (ab)+  Chiusura Positiva ab abab ababab … Sequenza di combinazioni non vuota di coppie di caratteri “ab” Posso prendere i caratteri in coppia in ripetizione in un numero qualsiasi ma obbligatoriamente almeno 1 coppia  o prendo una sola coppia di caratteri “ab”  o posso prendo una sequenza di caratteri “ab” lunga a piacere Prof. Ionta Silvio Anno 2005

Sequenza di combinazioni anche vuota di caratteri “a” e “b” Algebra dei Linguaggi (a+b)*  Chiusura – operatore Stella ε a,b aa,ab,ba,bb aaa,aab,aba,abb,baa,bab,bba,bbb aaaa,… … Sequenza di combinazioni anche vuota di caratteri “a” e “b” Posso prendere i caratteri in ripetizione in un numero qualsiasi, anche nessuno, scegliendoli a piacere o nessuno  o prendo un solo carattere “a” o un solo caratere “b”  o posso prendo una sequenza di caratteri lunga a piacere Prof. Ionta Silvio Anno 2005

Sequenza di combinazioni non vuota di coppie di caratteri “ab” Algebra dei Linguaggi (ab)*  Chiusura – operatore Stella ε ab abab ababab … Sequenza di combinazioni non vuota di coppie di caratteri “ab” Posso prendere i caratteri in coppia in ripetizione in un numero qualsiasi , anche nessuno o nessuno  o prendo una sola coppia di caratteri “ab”  o posso prendo una sequenza di caratteri “ab” lunga a piacere Prof. Ionta Silvio Anno 2005

Alfabeto iniziale  A = {a.b} Esempi di Linguaggio Alfabeto iniziale  A = {a.b} Metodo MATEMATICO  ab*a Metodo DISCORSIVO L = { w  A* (tutte le parole formate da lettere dell’alfabeto di partenza “a” e “b”) t.c. |w|  2 (tali che siano formate da almeno 2 caratteri) e che iniziano e terminano con “a” con interposto una sequenza anche vuota di “b”} Metodo ENUMERATIVO L = { aa, aba, abba, abbba, abbbba, abbbbba, … } 2 3 4 5 6 7 Prof. Ionta Silvio Anno 2005

Alfabeto iniziale  A = {a.b} Esempi di Linguaggio Alfabeto iniziale  A = {a.b} Metodo MATEMATICO  a(a+b)+a Metodo DISCORSIVO L = { w  A* (tutte le parole formate da lettere dell’alfabeto di partenza “a” e “b”) t.c. |w|  3 (tali che siano formate da almeno 2 caratteri) e che iniziano e terminano con “a” con interposto una sequenza non vuota di caratteri a scelta fra “a” e “b”} Metodo ENUMERATIVO L = { aaa, aba, aaaa, aaba, abaa, abba, aaaaa, aaaba, aabaa, aabba, … } 3 4 5 Prof. Ionta Silvio Anno 2005

Alfabeto iniziale  A = {a.b} Esempi di Linguaggio Alfabeto iniziale  A = {a.b} Metodo MATEMATICO  a(ab)*a Metodo DISCORSIVO L = { w  A* t.c. |w|  2 e che iniziano e terminano con “a” con interposto una sequenza anche vuota di coppie di caratteri a scelta “ab”} Metodo ENUMERATIVO L = { aa, aaba, aababa,aabababa, … } 2 4 6 8 Prof. Ionta Silvio Anno 2005

Alfabeto iniziale  A = {0,1} Esempi di Linguaggio Alfabeto iniziale  A = {0,1} Metodo MATEMATICO  0(0+1)* Metodo DISCORSIVO L = { w  A* t.c. |w|  1 e che iniziano con “0” seguito da una sequenza anche vuota di caratteri a scelta “0”e “1”} Metodo ENUMERATIVO L = {0,00,01,000,001,010,011,0000,0001,0010,0011,0100,0101,0110,0111, … } 1 2 3 4 >5 Prof. Ionta Silvio Anno 2005

Automi Unità didattica n° 4

a Automa Un Automa riconoscitore di un Linguaggio è una Macchina che ogni volta che si inserisce una parola del linguaggio partendo da uno Stato Iniziale qi e passando, attraverso opportune regole, in un insieme finito di Stati Intermedi qn ogni volta che legge un carattere della parola riesce a raggiungere uno degli Stati Finali qf Prof. Ionta Silvio Anno 2005

a Automi a = < A, Q, , qi = q0, F > (quintupla) A  Alfabeto di Partenza Q  Insieme degli Stati {q0, q1, q2 , q3 , …, qf1, qf2,… ,}   Regole di Transizione (Produzioni) qi  Stato Iniziale q0 F  Insieme degli Stati Finali { qf1, qf2,…} Prof. Ionta Silvio Anno 2005

a Automi Automa Deterministico Quando le regole permettono la transizione da uno Stato ad un altro in modo univoco Quando le regole non permettono di stabilire con esattezza in quale stato porterà la Transizione Prof. Ionta Silvio Anno 2005

Automa Deterministico Automa non Deterministico Si parte dallo stato iniziale e utilizzando la tabella di transizione si costruisce un automa equivalente ma deterministico. Gli stati non determinati si raggruppano in un unico nuovo stato. Pertanto le transazioni vanno effettuate considerando gli stati come se fossero raggruppati I nuovi stati che contengono stati finali diventano stati finali Infine si rinominano gli stati Prof. Ionta Silvio Anno 2005

Automa che riconosce il Linguaggio L = a a = <A={a} , Q ={q0,q1}, , qi = q0, F={q1} >  a q0 q1 - q0 q1 Stato Iniziale Stato Finale a Prof. Ionta Silvio Anno 2005

Automa che riconosce il Linguaggio L = b a = <A={b} , Q ={q0,q1}, , qi = q0, F={q1} >  b q0 q1 - q0 q1 Stato Iniziale Stato Finale b Prof. Ionta Silvio Anno 2005

Operazioni sugli Automi Unità didattica n° 5

Unione fra automi Si crea un nuovo Stato Iniziale. Da esso si fanno uscire tante frecce quante sono quelle che uscivano dagli stati iniziali degli altri automi e che vanno finire negli stessi stati Gli stati Iniziali Vecchi e le frecce ad esso collegate spariscono Prof. Ionta Silvio Anno 2005

Unione fra automi a a b b L = a + b  Unione degli Automi L1=a e L2=b  a b q0 q1 q2 - q0 a q1 Nuovo Stato Iniziale q0 a b q0 b q2 q1 Prof. Ionta Silvio Anno 2005

Concatenazione fra automi Si scrive il 1° automa senza l’indicazione degli stati finali Si sovrappone lo stato iniziale ad ogni stato finale del primo Automa e si costruisce da questi stati (ex finali) il 2° automa Da essi si fanno uscire tante frecce quante sono quelle che uscivano dallo stato iniziale del 2°automa e che vanno finire negli stessi stati del 2° automa Prof. Ionta Silvio Anno 2005

Unione fra automi L = ab  Concatenazione degli Automi L1=a e L2=b a a  a b q0 q1 - q2 q1 q0 a q1 q0 a q2 q1 b q1 q0 b Prof. Ionta Silvio Anno 2005

Unione fra automi L = ba  Concatenazione degli Automi L1=b e L2=a b b  a b q0 - q1 q2 q1 q0 b q1 q0 b q2 q1 a q1 q0 a Prof. Ionta Silvio Anno 2005

Chiusura positiva Da ogni Stato Finale dell’Automa si fanno uscire tante frecce quante sono quelle che escono dallo Stato Iniziale che vanno a finire sempre negli stessi Stati Prof. Ionta Silvio Anno 2005

Chiusura positiva L = a+  Chiusura positiva di L1= a a a a  a q0 q1 Prof. Ionta Silvio Anno 2005

Chiusura positiva L = b+  Chiusura positiva di L1= b b b b  b q0 q1 Prof. Ionta Silvio Anno 2005

Chiusura positiva L = (a + b)+  Chiusura positiva di L = a+b a a a a  a b q0 q1 q2 a q1 a a a q0 b a b b b q2 b Prof. Ionta Silvio Anno 2005

Chiusura positiva L = (ab)+  Chiusura positiva di L = ab a a a b  a q0 q1 - q2 a q1 q0 a a q2 q1 b Prof. Ionta Silvio Anno 2005

Chiusura positiva L = (ba)+  Chiusura positiva di L = ba a b b a  a q0 - q1 q2 a q1 q0 b b q2 q1 a Prof. Ionta Silvio Anno 2005

Operazione Stella Si effettua la Chiusura Positiva Da ogni Stato Finale dell’Automa si fanno uscire tante frecce quante sono quelle che escono dallo Stato Iniziale che vanno a finire sempre negli stessi Stati Lo Stato Iniziale diventa Stato Finale Prof. Ionta Silvio Anno 2005

Operazione Stella L = a*  Operazione Stella di L1= a a a a  a q0 q1 Prof. Ionta Silvio Anno 2005

Operazione Stella L = b*  Operazione Stella di L1= b b b b  b q0 q1 Prof. Ionta Silvio Anno 2005

Operazione Stella L = (a + b)+  Operazione Stella di L = a+b a a a a  a b q0 q1 q2 a q1 a a a q0 q0 b a b b b q2 b Prof. Ionta Silvio Anno 2005

Operazione Stella L = (ab)*  Operazione Stella di L = ab a a a b  a q0 q1 - q2 a q1 q0 a a q2 q1 b q0 Prof. Ionta Silvio Anno 2005

Operazione Stella L = (ba)*  Operazione Stella di L = ba b b b a  a q0 - q1 q2 b q1 q0 b b q2 q1 a q0 Prof. Ionta Silvio Anno 2005

Grammatica Unità didattica n° 6

Esempi Unità didattica n° 7

Esempio n°1 L = 0(0+1)*11 1 1 L1= 0 q0 q1 q0 q1 L2= 1 L3= 11 q0 q2 q1 q2 q0 L1= 0 q0 q1 q0 q1 1 L2= 1 L3= 11 1 q0 q2 q1 L6= 0 (0 + 1)* q2 1 q3 q1 q0 q1 q0 1 q2 L4= 0 + 1 Lf= 0 (0 + 1)*11 q5 q3 q2 1 q1 q0 q4 Prof. Ionta Silvio Anno 2005

Automa non Deterministico Esempio n°1 L = 0(0+1)*11 Lf= 0 (0 + 1)*11 q2 1  1 q0 q1 - q2 q3,q4 q3 q4 q5 1 q0 q1 1 q4 q5 1 q3 1 1 1 Automa non Deterministico Ci sono dei passaggi di stato non definiti univocamente Es : se mi trovo nello stato q3 e leggo il carattere 1 in quale stato devo andare? Ancora nello Stato q3 o vado nello stato q4 ? Prof. Ionta Silvio Anno 2005

Automa Deterministico Automa non Deterministico Esempio n°1 L = 0(0+1)*11 Automa Deterministico Automa non Deterministico Si parte dallo stato iniziale e utilizzando la tabella di transizione si costruisce un automa equivalente ma deterministico. Gli stati non determinati si raggruppano in un unico nuovo stato. Pertanto le transazioni vanno effettuate considerando gli stati come se fossero raggruppati I nuovi stati che contengono stati finali diventano stati finali Infine si rinominano gli stati  1 q0 q1 - q2 q3,q4 q3 q4 q5  1 q0 q1 - q2 q3,q4 q3,q4,q5 q0 q1 q2 1 1 q3,q4 1 q3,q4,q5 1 Prof. Ionta Silvio Anno 2005

Automa Deterministico Esempio n°1 L = 0(0+1)*11 Automa Deterministico  1 q0 q1 - q2 q3 q4 q0 q1 q2 q3 1 q4 Prof. Ionta Silvio Anno 2005