Esempio stringhe palindrome 1
|
|
- Fabriciano Napolitano
- 6 anni fa
- Visualizzazioni
Transcript
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. (( s b, " ), (s, b) [ push b] 3. (( s, c, " ), (f, ")!! 4. (( f a, a ), (f, ")! [ pop a ] 5. (( f, b, b ), (f, ")! [ pob b ] Si osservi come nell alfabeto di stack non è compreso il simbolo c che denota la demarcazione tra le due parti della stringa esecuzione per abbcbba Stato Stringa di input stack transizione s abbcbba " s bbcbba a 1 s bcbba ba 2 s cbba bba 2 f bba bba 3 f ba ba 5 f a a 5 f " " 4
2 Esempio stringhe palindrome 2 Automa per il riconoscimento del linguaggio L = {w w R } A = < {{s,f}, {a,b}, {a,b},!, s, { f } > con! che contiene le transizioni: 1. (( s, a, " ), (s, a)! [ push a] 2. (( s b, " ), (s, b) [ push b] 3. (( s, ", " ), (f, ")!! 4. (( f a, a ), (f, ")! [ pop a ] 5. (( f, b, b ), (f, ")! [ pob b ] Nell applicazione della regola 3 la macchina puo scegliere non deterministicamente di andare nello stato f senza consumare input o fare un push del prossimo simbolo nello stack. Si osservi come questa sia l unica regola variata rispetto all automa precedente. Esecuzione per abbbba Stato Stringa di input stack transizione s abbbba " " s bbbba a 1 s bbba ba 2 s bba bba 2 f bba bba 3 f ba ba 5 f a a 5 f " " 4
3 Esercizio 2 Esercizi Esercizio 1 Definire un automa per il linguaggio L = {a n b n }! 1. (( q, a, "), (q, a)) 2. (( q, b, a), (p, ")) 3. (( p, b, a), (p, ")) 4. (( p, ", "), (f, " )) Definire un automa a pila che riconosca il linguaggio!! L = {w # {a,b}* : w ha lo stesso numero di a e di b } 1. (( s, ", " ), (q, c))! si colloca un carattere c nello stack [c non fa parte di!, ma di $] 2. (( q, a, c ), (q, ac)) se ti trova un a la prima volta si inizializza uno stack di a 3. (( q, a, a ), (q, aa)) ogni altro a viene collocato nello stack di a 4. (( q, a, b ), (q, "))! se si legge un a e nello stack si trova b si elimina b dallo stack! 5. (( q, b, c ), (q, bc)) 6. (( q, b, b ), (q, bb)) 7. (( q, b, a ), (q, ")) } analogamente per il carattere b 8. (( q, ", c ), (f, "))!
4 Modalità di accettazione Dato l automa pushdown < K, ", $,!, s, Z > si dice che un linguaggio L è accettato per pila vuota se: L e (M) = { w # "* : ( s, w, ") %* (q, ", ") per qualche q # K } [In altre parole la stringa è accettata se e solo se al termine della scansione la pila è vuota " indipendentemente dallo stato raggiunto] Dato l automa pushdown < K, ", $,!, s, Z > si dice che un linguaggio L è accettato per raggiungimento di stato finale se: L f (M) = { w # "* : ( s, w, ") %* (f, ", &) per qualche f # Z, & # $* } [In altre parole la stringa è accettata se e solo se al termine della scansione della stringa l automa raggiunge uno stato finale]
5 Modalità di accettazione Teorema. Dato un automa a pila non deterministico A che accetta un linguaggio per stato finale esiste un automa A non deterministico che accetta lo stesso linguaggio per pila vuota. Teorema. Dato un automa a pila non deterministico A che accetta un linguaggio per pila vuota esiste un automa A non deterministico che accetta lo stesso linguaggio per stato finale. Questa equivalenza non si mantiene qualora si faccia riferimento ad automi a pila deterministici. Anticipando quanto verrà illustrato nel seguito gli automi a pila deterministici hanno un potere computazionale inferiore rispetto agli automi a pila non deterministici. Si può mostrare come esistano linguaggi accettati da automi a pila deterministici per stato finale che non sono accettati da automi a pila per pila vuota.
6 Automi Pushdown e grammatiche context-free Teorema: La classe dei linguaggi accettati dagli automi pushdown è esattamente la! classe dei linguaggi context-free. Data la grammatica context-free G = < V N, V T, P, S > siamo in grado di costruire un automa pushdown M equivalente, nel senso che L(G) = L(M) dato da: l insieme K degli stati = {p, q} l alfabeto di ingresso " è V T l alfabeto di stack $ è V = VN ( VT la funzione di transizione! contiene le transizioni definite come: 1. ((p, ", "), (q, S) 2. ((q, ", A), (q, x) per ogni regola grammaticale A' x in P 3. (q, s, s), (q, ") per ciascun simbolo s # V T lo stato iniziale = {p} lo stato finale = {q} [l automa M possiede due stati p, q e rimane permanentemente nello stato q dopo la prima mossa]
7 Esempio Dalla grammatica G 15 = < S, {a, b, c}, P, S> con produzioni P date da: S ' a S a b S b c [che riconosce il linguaggio L = {w c w R }] è possibile costruire l automa M = < {p, q}, {a, b, c}, {S,a, b, c},!, { p},{q} > con! che contiene le transizioni 1. ((p, ", "), (q, S) 2. ((q, ", S), (q, a S a) 3. ((q, ", S), (q, b S b) 4. ((q, ", S), (q, c) 5. ((q, a, a), (q, ") 6. ((q, b, b), (q, ") 7. ((q, c, c), (q, ") regole grammaticali simboli terminali
8 Esempio cont. Esecuzione per abbcbba Stato Stringa di input stack regola applicata p abbcbba " q abbcbba S 1. ((p, ", "), (q, S) q abbcbba a S a 2.((q, ", S), (q, a S a) q bbcbba S a 5. ((q, a, a), (q, ") q bbcbba b S b a 3.((q, ", S), (q, b S b) q bcbba S b a 6.((q, b, b), (q, ") q bcbba b S b b a 3.((q, ", S), (q, b S b) q cbba S b b a 6.((q, b, b), (q, ") q cbba c b b a 4.((q, ", S), (q, c) q bba b b a 7.((q, c, c), (q, ") q ba b a 6.((q, b, b), (q, ") q a a 6.((q, b, b), (q, ") q " " 5. ((q, a, a), (q, ")
9 Proprietà di chiusura dei linguaggi context-free Teorema: La classe dei linguaggi context-free è chiusa rispetto all Unione, Concatenazione,! Chiusura di Kleene. Date le grammatiche context-free G = < V N, V T, P, S > e G = < V N, V T, P, S > che riconoscono i linguaggi L(G ) e L(G ) si costruisce la grammatica G = < V N, V T, P, S> nel seguente modo. 1. Unione L(G) = L(G ) ( L(G )! G =< VN = V N ( V N ({S} ; V T = V T ( V T ; P = P ( P ({S' S, S' S }, S > 2. Concatenazione L(G) = L(G ) L(G ) G = < V N = V N ( V N ({S} ; V T = V T ( V T ; P = P ( P ({S' S S }, S > 3. Chiusura di Kleene L(G )* G = < V N = V N ({S} ; V T = V T ; P = P ( {S' ", S' SS }, S >
Forma Normale di Chomsky
2. Eliminazione delle produzioni unitarie Forma Normale di Chomsky Una produzione si dice unitaria se è della forma A! B. Le produzioni unitarie in pratica consistono in una ridenominazione di variabili,
DettagliForme Normali. Forma normale di Chomsky. E caratterizzata da regole di due tipi. A! BC dove A, B, C $ V N A! a con a $ V T. Forma normale di Greibach
Forme Normali A partire da una grammatica Context-free G è sempre possibile costruire una grammatica equivalente G ovvero L(G) = L(G ) che abbiano le produzioni in forme particolari, dette forme normali.
DettagliLINGUAGGI CONTEXT FREE. Lezione Lezione
LINGUAGGI CONTEXT FREE Lezione 25-11-2010 Lezione 30-11-2010 2 INTRODUZIONE GERARCHIA DI CHOMSKY 3 4 DEFINIZIONE DEI LINGUAGGI CONTEXT FREE LINGUAGGI CF I linguaggi di tipo 2 sono detti context free (CF)
DettagliAutomi 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
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 automi a pila automi a pila e grammatiche non contestuali notazioni sul livello degli esercizi: (*)
DettagliVerificare se una grammatica e LL(1) e costruirne la tabella di parsing. Verificare se una grammatica e LR(0) e costruirne la tabele ACTION e GOTO
ANALISI SINTATTICA TIPO 1: Data un linguaggio scrivere una grammatica che lo generi TIPO 2: Verificare se una grammatica non contestuale è ambigua TiPO 3: Verificare se una grammatica e LL(1) e costruirne
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.
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
Dettagli7. Automi a Pila e Grammatiche Libere
(fanizzi@di.uniba.it) Dipartimento di Informatica Università degli Studi di Bari 20 aprile 2016 1 Automi a Pila Definizione Descrizioni Istantanee Condizioni di Accettazione per PDA Esempi 2 Teorema delle
DettagliAUTOMI A PILA. M.P. Schutzenberger
UTOMI PIL Introdotti da. G. Oettinger in utomatic Syntactic nalysis and the pushdown store Proc. Symp. pplied Math., 1961 e da M.P. Schutzenberger in Context free languages and pushdown automata Information
DettagliPumping 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=
DettagliParte n.4 Linguaggi: Gerarchia ed Operazioni
Linguaggi di Programmazione Corso C Parte n.4 Linguaggi: Gerarchia ed Operazioni Nicola Fanizzi (fanizzi@di.uniba.it) Dipartimento di Informatica Università degli Studi di Bari Gerarchia di Chomsky Sia
DettagliQuiz sui linguaggi CF
Fondamenti dell Informatica 1 semestre Quiz sui linguaggi CF Prof. Giorgio Gambosi a.a. 2014-2015 Problema 1: Si consideri la seguente grammatica context free G, dove S, NP, V P, P P, A sono i simboli
DettagliAniello 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
DettagliEsercizi 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}
DettagliDefinizione di Grammatica
Corso di Linguaggi e Traduttori 1 AA 2004-05 GRAMMATICHE 1 Definizione di Grammatica Formalmente definiamo un grammatica G mediante una quadrupla ( VN, VT, P, S ) dove: V N e l insieme dei simboli non
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
DettagliLinguaggio 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
DettagliCapitolo 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
DettagliCorso di Linguaggi e Traduttori 1 AA GRAMMATICHE
Corso di Linguaggi e Traduttori 1 AA 2004-05 GRAMMATICHE 1 Definizione di Grammatica Formalmente definiamo un grammatica G mediante una quadrupla V, V, P S ( ) N T, dove: V N e l insieme dei simboli non
DettagliAutomi 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
DettagliInformatica teorica Lez. n 7 Macchine di Turing. Macchine di Turing. Prof. Giorgio Ausiello Università di Roma La Sapienza
Macchine di Turing Argomenti della lezione Definizione della macchina di Turing Riconoscimento e accettazione di linguaggi Macchine a più nastri La macchina di Turing èun è automa che può leggere e scrivere
DettagliNozioni 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
DettagliFondamenti d Informatica: lavoriamo con le grammatiche. Barbara Re, Phd
Fondamenti d Informatica: lavoriamo con le grammatiche Barbara Re, Phd Esercizio Grammatica e generazione stringhe Data una Grammatica ed una Stringa, verificare che la Stringa sia generata dalla Grammatica:
DettagliFondamenti 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
DettagliFondamenti 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
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
DettagliDispense del corso di Linguaggi di programmazione e laboratorio Linguaggi formali(versione non definitiva con diversi refusi) Francesco Sisini
Dispense del corso di Linguaggi di programmazione e laboratorio Linguaggi formali(versione non definitiva con diversi refusi) Francesco Sisini 04 Giugno 2014 Indice 0.1 Automi.................................
DettagliPROLOG E ANALISI SINTATTICA DEI LINGUAGGI Quando si vuole definire in modo preciso la sintassi di un linguaggio si ricorre a una grammatica G=(V n,v t
PROLOG E ANALISI SINTATTICA DEI LINGUAGGI Quando si vuole definire in modo preciso la sintassi di un linguaggio si ricorre a una grammatica Una grammatica permette di stabilire se una sequenza di simboli
DettagliAutomi 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
DettagliDefinire tramite una grammatica ad attributi il
1 ESERCIZI ESERCIZIO 1 Definire tramite una grammatica ad attributi il linguaggio L = {a n b n c n n 0} Implementare un analizzatore sintattico/ semantico a discesa ricorsiva Costruire le tabelle di analisi
DettagliPrincipio di composizione delle MT
Principio di composizione delle MT La definizioni date fanno riferimento a situazioni in cui la macchina sia capace di risolvere problemi singoli. E possibile far sì che macchine progettate per problemi
DettagliEspressioni Regolari
Espressioni Regolari Le espressioni regolari sono costituite dalle stringhe sull alfabeto Σ = Σ {+,,*,(,),φ} ottenute secondo le seguenti regole: 1. φ e ciascun membro di Σ sono Epressioni Regolari 2.
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:
DettagliCorso di Laurea Magistrale in Ingegneria Informatica A.A Linguaggi Formali e Compilatori. Automi. Giacomo PISCITELLI
Corso di Laurea Magistrale in Ingegneria Informatica A.A. 2013-2014 Linguaggi Formali e Compilatori Automi Giacomo PISCITELLI Generalità sugli Automi Automi In informatica teorica e in matematica discreta,
DettagliProprieta 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
DettagliAutoma deterministico con prospezione 1. < {q}, Σ, Σ V, δ, q, S, Φ > δ(a, X) = α R. se a Gui(X α) senza spostamento della testina.
Automa deterministico con prospezione 1 < {q}, Σ, Σ V, δ, q, S, Φ > δ(a, X) = α R δ(a, a) = ε se a Gui(X α) senza spostamento della testina con spostamento della testina Grammatica 1S ( S ) 2S [ S ] 3S
DettagliRICHIAMI E COMPLEMENTI SU LINGUAGGI FORMALI E AUTOMI
PARTE I RICHIAMI E COMPLEMENTI SU LINGUAGGI FORMALI E AUTOMI Linguaggi regolari Linguaggi non contestuali Automi 1 1.1 I LINGUAGGI IN INFORMATICA @ Presenti a vari livelli di applicazione linguaggi di
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
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
DettagliCapitolo 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
DettagliFondamenti d Informatica: Le Macchine di Turing. Barbara Re, Phd
Fondamenti d Informatica: Le Macchine di Turing Barbara Re, Phd Esercizio 1 } Consideriamo una MdT che modifica una sequenza di A rimpiazzando ogni A in posizione dispari con una B (la prima A ha posizione
DettagliDispensa 2. Data una grammatica context free esistono tre metodi diversi per costruirne la parsing table per un parser LR:
Dispensa 2 2.1 Costruzione Parsing Table LR: generalità Come tutti i parser tabellari predittivi, anche i parser LR possono essere applicati solo a parsing table senza conflitti (ossia entrate multiple)
DettagliProprietà dei linguaggi non contestuali
Proprietà dei linguaggi non contestuali Argomenti della lezione Pumping lemma per i linguaggi non contestuali Proprietà di chiusura Argomenti della lezione Grammatiche non contestuali in forma ridotta
DettagliL intero è o il valore zero o una stringa di cifre che inizia con una cifra diversa sa zero.
ANALISI SINTATTICA Data un linguaggio scrivere una grammatica che lo generi ESERCIZIO 1 Definire una grammatica per il linguaggio L = {ww w appartiene a (a, b)*} ESERCIZIO 2 Dato l alfabeto T=[0,1,2,3,4,5,6,7,8,9,/}
DettagliEspressioni 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.
DettagliProprietà dei linguaggi regolari
Proprietà dei linguaggi regolari Argomenti della lezione Relazione tra automi, grammatiche ed espressioni regolari Pumping lemma per i linguaggi regolari Equivalenza di automi a stati finiti Le seguenti
DettagliFondamenti di informatica per la sicurezza anno accademico 2004 2005 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 25.01.2005 del secondo compitino vers. D valutazioni
DettagliAutomi per il riconoscimento di linguaggi.
Automi per il riconoscimento di linguaggi. Un altro modo di caratterizzare un linguaggio formale e' quello di identificare l'automa di riconoscimento corrispondente. Un automa e', in generale, una macchina
DettagliEspressioni 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
DettagliLA SINTASSI DEI LINGUAGGI DI PROGRAMMAZIONE. Ivan Lanese
LA SINTASSI DEI LINGUAGGI DI PROGRAMMAZIONE Ivan Lanese argomenti Grammatiche BNF Varianti: BNF + ε EBNF Remind: cos è una grammatica Una grammatica è uno strumento linguistico per definire insiemi di
DettagliLinguaggi di Programmazione Corso C. Parte n.3 Linguaggi Liberi da Contesto e Linguaggi Contestuali. Nicola Fanizzi
Linguaggi di Programmazione Corso C Parte n.3 Linguaggi Liberi da Contesto e Linguaggi Contestuali Nicola Fanizzi (fanizzi@di.uniba.it) Dipartimento di Informatica Università degli Studi di Bari Grammatiche
DettagliProprieta 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.
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 richiami teorici sulle grammatiche di Chomsky esercizivari esercizi su grammatiche ed espressioni regolari
DettagliAutomi Automi finiti: macchine a stati su sistemi di transizioni finiti Modellare con TS e specificare con automi: si usa lo stesso tipo di
Automi Automi finiti: macchine a stati su sistemi di transizioni finiti Modellare con TS e specificare con automi: si usa lo stesso tipo di rappresentazione per descrivere programmi e specifiche. ω-automi:
DettagliLinguaggi 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
DettagliLa macchina universale
La macchina universale Una immediata conseguenza della dimostrazione è la seguente Corollario il linguaggio L H = {M (w) M rappresenta una macchina di Turing che si ferma con input w} sull alfabeto {0,1}*
DettagliFondamenti di informatica per la sicurezza anno accademico 2004 2005 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 23.02.2005 della seconda parte vers. A valutazioni
DettagliAppunti sulla teoria degli automi, dei linguaggi e della calcolabilità
Appunti sulla teoria degli automi, dei linguaggi e della calcolabilità Marco Liverani Ottobre 2005 1 Introduzione Alla base dell Informatica, a fondamento della teoria su cui viene costruita la cosiddetta
DettagliLe 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
DettagliMODULO 04 ELEMENTI DI TEORIA DEI LINGUAGGI FORMALI
MODULO 04 ELEMENTI DI TEORIA DEI LINGUAGGI FORMALI Un linguaggio di programmazione è uno strumento per esprimere algoritmi in una forma adatta allo loro esecuzione da parte di un elaboratore La formulazione
DettagliParole 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
DettagliCorso di Laurea Magistrale in Ingegneria Informatica A.A Linguaggi Formali e Compilatori. I linguaggi formali. Giacomo PISCITELLI
Corso di Laurea Magistrale in Ingegneria Informatica A.A. 2011-2012 Linguaggi Formali e Compilatori I linguaggi formali Giacomo PISCITELLI Traduttori Un traduttore è un programma che effettua la traduzione
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 proprietà delle grammatiche non contestuali pumping lemma forme normali notazioni sul livello degli
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
Dettaglicontrollo 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
DettagliRELAZIONI BINARIE. Proprietà delle relazioni Data una relazione R, definita in un insieme non vuoto U, si hanno le seguenti proprietà :
RELAZIONI INARIE Dati due insiemi non vuoti, A detto dominio e detto codominio, eventualmente coincidenti, si chiama relazione binaria (o corrispondenza) di A in, e si indica con f : A, (oppure R ) una
DettagliLINGUAGGI E GRAMMATICHE FORMALI
LINGUAGGI E GRAMMATICHE FORMALI I LINGUAGGI IN INFORMATICA Presenti in tutte le applicazioni Fondamentali nel software di sistema Paradigmatici nella teoria molti importanti problemi teorici son riconducibili
DettagliAutomi. 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
DettagliSommario. Linguaggi formali: motivazioni, definizione ed esempi operazioni su parole e linguaggi
Sommario Linguaggi formali: motivazioni, definizione ed esempi operazioni su parole e linguaggi 1 Tipi di problemi Nelle teorie della calcolabilità e della complessità si considerano problemi di decisione,
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
Dettagli9. LINGUAGGI FORMALI E GRAMMATICHE DI CHOMSKY
9. LINGUAGGI FORMALI E GRAMMATICHE DI CHOMSKY Linguaggi e informatica @ Presenti in tutte le applicazioni e in tutte le fasi di uso di un computer: linguaggi di specifica, di programmazione, di scripting
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
DettagliLinguaggi 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
DettagliUn 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
DettagliGRAMMATICHE DEI LINGUAGGI DI PROGRAMMAZIONE. Cosimo Laneve
GRAMMATICHE DEI LINGUAGGI DI PROGRAMMAZIONE Cosimo Laneve 1 argomenti 1. linguaggi di programmazione 2. definizione formale di insiemi infiniti 3. la grammatica e la notazione BNF 4. notazioni alternative
DettagliDispensa 1. Da un punto di vista logico l architettura di un compilatore si può suddividere in due parti: Analisi e Sintesi.
Dispensa 1 1. Introduzione ai compilatori Compilatore Un compilatore è un programma che legge un programma scritto in un linguaggio (sorgente) e lo traduce in un programma equivalente in un altro linguaggio
DettagliFondamenti di informatica per la sicurezza
Corso di Laurea in icurezza dei sistemi e delle reti informatiche Fondamenti di informatica per la sicurezza anno accademico 2005 2006 docente: tefano Ferrari 20.04.2006 della seconda parte versione A
DettagliAniello Murano Problemi non decidibili e riducibilità
Aniello Murano Problemi non decidibili e riducibilità 8 Lezione n. Parole chiave: Riduzione Corso di Laurea: Informatica Codice: Email Docente: murano@ na.infn.it A.A. 2008-2009 Overview Nelle lezioni
DettagliEspressioni 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:
DettagliLinguaggi 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:
Dettaglialbero sintattico parser scanner Errori sintattici
albero programma scanner tokens parser sintattico rrori sintattici Un parser deve riconoscere la struttura di una stringa di ingresso, la cui struttura è fornita in termini di regole di produzione di una
DettagliMacchine RAM. API a.a. 2013/2014 Gennaio 27, 2014 Flavio Mutti, PhD
Macchine RAM API a.a. 2013/2014 Gennaio 27, 2014 Flavio Mutti, PhD 2 Macchina RAM 3 Esercizio Si consideri il linguaggio definito da: L = wcw R w a, b } 1. Codificare un programma RAM per il riconoscimento
DettagliTar Campania, Napoli, n. 873 ISSN Pubblicato dal 11/03/2010
ISSN 1127-8579 Pubblicato dal 11/03/2010 All'indirizzo http://www.diritto.it/docs/29047-poich-il-provvedimento-prefettizio-impugnatosi-palesa-viziato-per-difetto-di-istruttoria-e-di-motivazione-ne-deriva-l-illegittimit-dellarevoca-dell-affidamento-con-relativa-escussione-della-cau
DettagliPROLOG E ANALISI SINTATTICA DEI LINGUAGGI
PROLOG E ANALISI SINTATTICA DEI LINGUAGGI Quando si vuole definire in modo preciso la sintassi di un linguaggio si ricorre a una grammatica Una grammatica permette di stabilire se una sequenza di simboli
DettagliDispensa 3. Se in uno stato c è l LR(0) item A α. (ossia un item col punto alla fine) è invocata una riduzione per ogni terminale a in Follow(A)
Dispensa 3 3.1 Tecnica LR canonica Il punto debole della tecnica SLR illustrata in Dispensa 2 sta nelle riduzioni, che, ricordiamo, vengono inserite nella parsing table in accordo alla seguente regola:
DettagliMacchine 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) Linguaggio L = insieme di stringhe, sequenze finite di elementi del vocabolario
Luigi Rizzi Linguistica computazionale I. Elementi di base sulle grammatiche formali (1) Linguaggio L = insieme di stringhe, sequenze finite di elementi del vocabolario (2) Dato un vocabolario A, l insieme
DettagliLinguaggi 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:
DettagliLinguaggi formali e compilazione
Linguaggi formali e compilazione Corso di Laurea in Informatica A.A. 2015/2016 Linguaggi formali e compilazione Elementi generali Un parser generico di tipo procede operando una sequenza di riduzioni a
DettagliMacchine di Turing. a n B B. Controllo Finito
Macchine di Turing Il modello standard di macchina di Turing era un controllo finito, un nastro di input, diviso in celle, e una testina che prende in considerazione una cella del nastro alla volta. Il
DettagliFondamenti d Informatica: Le Macchine di Turing. Barbara Re, Phd
Fondamenti d Informatica: Le Macchine di Turing Barbara Re, Phd Agenda } Introdurremo } il formalismo delle Macchine di Turing nelle varie versioni } la nozione di calcolabilità e di decidibilità 2 La
DettagliCorso di Geometria BIAR, BSIR Esercizi 10: soluzioni
Corso di Geometria 2010-11 BIAR, BSIR Esercizi 10: soluzioni 1 Geometria dello spazio Esercizio 1. Dato il punto P 0 = ( 1, 0, 1) e il piano π : x + y + z 2 = 0, determinare: a) Le equazioni parametriche
DettagliAutomi, Complessità e Calcolabilità Prof. E. Fachini
Automi, Complessità e Calcolabilità Prof. E. Fachini 1. introduzione al corso 1. il programma in sintesi 2. aspetti organizzativi 1. il libro di testo 2. i momenti di verifica E. Fachini, Calcolabilità
DettagliEspressività e limitazioni delle grammatiche regolari
Espressività e limitazioni delle grammatiche regolari Vantaggi: Le grammatiche regolari consentono di esprimere una significativa classe di linguaggi: linguaggi con un numero di sequenze infinito grazie
DettagliMa 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?
DettagliDispense del corso di Linguaggi Formali e Automi
Dispense del corso di Linguaggi Formali e Automi Marco Alfieri, Matteo Bianchi, Grazia D Aversa, Andrea Fumagalli, Emanuele Mornini, Dario Villa, Massimo Vitali 8 settembre 2002 Appunti tratti dalle lezioni
Dettaglisoluzione in 7 step Es n 208
soluzione in 7 soluzione in 7 soluzione in 7 AH 5 CA CH 5 6 4,8 5 36 3,04 5,96 5 cm soluzione in 7 AH 5 CA CH 5 6 4,8 5 36 3,04 5,96 5 cm 3 : 4,8 5 4,8 : HB 4,8 soluzione in 7 AH 5 CA CH 5 6 4,8 5 36 3,04
Dettaglicertificazione antimafia : Tribunale Amministrativo Regionale per la Calabria (Sezione Prima) sentenza n. 480 del 2010
ISSN 1127-8579 Pubblicato dal 22/04/2010 All'indirizzo http://www.diritto.it/docs/29425-certificazione-antimafia-tribunaleamministrativo-regionale-per-la-calabria-sezione-prima-sentenza-n-480-del-2010
DettagliAniello Murano Problemi decidibili e non decidibili
Aniello Murano Problemi decidibili e non decidibili 7 Lezione n. Parole chiave: Decidibilità Corso di Laurea: Informatica Codice: Email Docente: murano@ na.infn.it A.A. 2008-2009 Overview In questa lezione
Dettagli