Grammatiche libere dal contesto

Documenti analoghi
Ambiguità D 11 = SS ( S S S ( S (S ) S ( S ((S )) S ( + S (( )) S (S (( )) (S) (S (( )) ( ) ( (( )) ( )

Relazioni e funzioni. Relazioni

Codici di Huffman. Codici prefissi. Sia dato un file di 120 caratteri con frequenze:

Anno 2. Triangoli rettangoli e teorema delle corde

Unità Didattica N 11 Le equazioni di secondo grado ad una incognita Unità Didattica N 11 Le equazioni di secondo grado ad una incognita

] + [ ] [ ] def. ] e [ ], si ha subito:

Ellisse ed iperbole. Osservazione. Considereremo sempre ellissi della forma + = 1 le quali hanno tutte centro nell origine degli

La parabola. Fuoco. Direttrice y

8 Equazioni parametriche di II grado

operazioni con vettori

1 Integrali doppi di funzioni a scala su rettangoli

13. EQUAZIONI ALGEBRICHE

Lezione 7: Rette e piani nello spazio

Unità Didattica N 11 Le equazioni di secondo grado ad una incognita

Contents 1 Denizione di grmmtihe Eserizio Eserizio Eserizio.....

Unità logico-aritmetica (ALU) Unità logico-aritmetica. Passi per costruire l ALU. Blocchi di base per costruire l ALU

Definizione. Si chiama similitudine una corrispondenza biunivoca dal piano in sé tale che,

corrispondenza dal piano in sé, che ad ogni punto P del piano fa corrispondere il punto P' in

EQUAZIONI DI SECONDO GRADO

si definisce Funzione Integrale; si chiama funzione integrale in quanto il suo * x

Le equazioni di secondo grado. Appunti delle lezioni di Armando Pisani A.S Liceo Classico Dante Alighieri (GO)

La rappresentazione per elencazione consiste nell elencare tutte le coppie ordinate che verificano la relazione

acuradi Luca Cabibbo e Walter Didimo Esercizi di Informatica teorica - Luca Cabibbo e Walter Didimo 1

Δlessio abelli. Studente di Matematica Sapienza - Università di Roma. Dipartimento di Matematica Guido Castelnuovo

Test di autovalutazione

Unità logico-aritmetica (ALU) Architetture dei Calcolatori (Lettere. Blocchi di base per costruire l ALUl. Passi per costruire l ALUl

Geometria Analitica Domande, Risposte & Esercizi

Analisi di stabilità

ESERCIZIO DI ASD DEL 27 APRILE 2009

Esercizi di Informatica Teorica

Es1 Es2 Es3 Es4 Es5 tot

Grafici elementari 1 - geometria analitica

Equazioni di secondo grado Capitolo

Anno 5. Applicazione del calcolo degli integrali definiti

ESERCITAZIONE I. Linguaggi Regolari

VERSO L ESAME DI STATO LA DERIVATA DI UNA FUNZIONE

L IPERBOLE. L iperbole è il luogo geometrico dei punti del piano per i quali è costante la differenza delle distanze da due punti fissi detti fuochi.

a è detta PARTE LETTERALE

Formule di Gauss Green

1 Integrali Doppi e Cambiamento nell Ordine di Integrazione

Appunti di Algebra Lineare. Mappe Lineari. 10 maggio 2013

( X, Y ) che danno un livello costante di utilità (curva di livello). Fissando per esempio il valore U 0 per

Integrali de niti. Il problema del calcolo di aree ci porterà alla de nizione di integrale de nito.

Strumenti Matematici per la Fisica

LINGUAGGI FORMALI E AUTOMI

I PRODOTTI NOTEVOLI. Nel calcolo letterale capita spesso di incontrare moltiplicazioni tra particolari polinomi.

FUNZIONI MATEMATICHE. Una funzione lineare è del tipo:

SPAZI VETTORIALI. 1. Spazi e sottospazi vettoriali

, x 2. , x 3. è un equazione nella quale le incognite appaiono solo con esponente 1, ossia del tipo:

Unità 3 Metodi particolari per il calcolo di reti

Il modello relazionale. Il Modello Relazionale. Il modello relazionale. Relazione. Dominio. Esempio

b a 2. Il candidato spieghi, avvalendosi di un esempio, il teorema del valor medio.

Integrali impropri ( ) f x dx. c f x dx. Nel primo caso diciamo che l integrale improprio (o integrale generalizzato)

1) Si ha quindi Un cateto è uguale al prodotto dell ipotenusa per il seno dell angolo opposto.

Il lemma di ricoprimento di Vitali

CORSO ZERO DI MATEMATICA

È bene attribuire lo stesso verso (orario o antiorario) a tutte le correnti fittizie. E 1 = 6V ; E 4 = 4V ; I o = 2mA. R 1 = R 5 = 2kΩ ; R 4 = 1kΩ

POTENZA CON ESPONENTE REALE

Capitolo 6. Integrali. Dal Coroll. 1 di Cap. 5.1 segue che g 1

A.A.2009/10 Fisica 1 1

" Osservazione. 6.1 Integrale indefinito. R Definizione (Primitiva) E Esempio 6.1 CAPITOLO 6

3. Funzioni iniettive, suriettive e biiettive (Ref p.14)

POTENZA 2 5 =2*2*2*2*2 PROPRIETA PRODOTTO DI POTENZE DI UGUALE BASE 3 2 *3 7 =3 2+7 =3 9 ANGOLO ANGOLI CLASSIFICAZIONI. 2 è la BASE 5 è l ESPONENTE

Il modello relazionale. Il Modello Relazionale. Il modello relazionale. Relazione. Dominio. Esempio

{ 1, 2,3, 4,5,6,7,8,9,10,11,12, }

La risoluzione di una disequazione di secondo grado

Corso Integrato: Matematica e Statistica. Corso di Matematica (6 CFU)

2^ Lezione. Equazioni di 1. Equazioni di 2. Equazioni fattoriali. Equazioni biquadratiche. Equazioni binomie. Equazioni fratte. Allegato Esercizi.

Scheda Sei ESPONENZIALI E LOGARITMI. 0,+. Inoltre valgono le

Meccanica dei Solidi. Vettori

Vettori - Definizione

Monomi e polinomi. Verifica per la classe prima COGNOME... NOME... Classe... Data...

Teoria in pillole: logaritmi

Soluzione. Studiamo la funzione. Dominio: la funzione è definita in tutto R; Intersezione asse ascisse: ( x)

8. Calcolo integrale.

Equazioni 1 grado. Definizioni Classificazione Risoluzione Esercizi

AUTOVALORI ED AUTOVETTORI. Sia V uno spazio vettoriale di dimensione finita n.

FUNZIONI IPERBOLICHE

b a ax b 0 Equazione lineare B) Equazioni di 2 grado incomplete: ax 2 0 Equazione monomia x 2 0

1 Equazioni e disequazioni di secondo grado

Anno 2. Potenze di un radicale e razionalizzazione

Algebra Relazionale. Operazioni nel Modello Relazionale

Minimi quadrati e problemi di distanza minima

UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Secondo Modulo di Ricerca Operativa Prova in corso d anno 12 giugno 2000

Introduzione all algebra

Il problema delle aree. Metodo di esaustione.

UNIVERSITÀ DEGLI STUDI DI FIRENZE. La teoria delle Specie di Strutturre di André Joyal

SISTEMA MISTO. Confronto tra le radici di un'equazione parametrica di secondo grado e un numero reale α. Se > 0 si possono verificare i seguenti casi:

fattibile con le tecniche elementari che imparerai in seguito. Ad esempio il polinomio

Si noti che da questa definizione segue che il punto C è il punto medio del segmento PP'. Figura 1

c β Figura F2.1 Angoli e lati in un triangolo rettangolo.

Numeri razionali COGNOME... NOME... Classe... Data...

Integrali dipendenti da un parametro e derivazione sotto il segno di integrale.

Uso avanzato di Cup. Grammatica Ambigua. Ambiguità e conflitti in Cup. Esempio grammatica non ambigua: Costrutto if-then-else

Sistemi a Radiofrequenza II. Guide Monomodali

Corso di Analisi Matematica Calcolo integrale per funzioni di una variabile

Determinanti e caratteristica di una matrice (M.S. Bernabei & H. Thaler

Ellisse riferita al centro degli assi

Area del Trapezoide. f(x) A f(a) f(b) f(x)

VOLUMI, MASSE, DENSITÀ

Transcript:

Grmmtihe liere dl ontesto G = < VN,V,P, > VN - nsieme finito di simoli detti Non terminli V - nsieme finito di simoli detti erminli!!! V = VN! V, VN "#, V "#, VN $ V =# -. imolo distinto o Assiom del Linguggio!! % VN P - nsieme di Produzioni o Regole di Risrittur!!! P & VN x V

Proesso di generzione L Grmmti G 10 on produzioni 1.! - 2.! / 3.! ( ) i Gener stringhe ritmetihe! sempio: l string è derivt d nel seguente modo: "!! (regol 1) "!! (regol 1) "! (regol 2) "! (regol 2) " i! (regol 3) " i i! (regol 3) " i i! (regol 2) " i i i! (regol 3) pertnto: " - onveniente vere un ordine di pplizione delle regole? - L lero di generzione può essere ostruito in modi diversi? - possiile ostruire per l medesim string leri di!derivzione diversi?

Aleri di derivzione 1. # - 2. # / 3. # ( ) i Dt un grmmti non ontestule G tutte le stringhe s d ess generili possono essere rppresentte trmite un lero venti le seguenti proprietà: 1. L rdie è etihettt on il simolo inizile 2. Ogni nodo interno è etihettto on un simolo non terminle! VN 3. Ogni fogli è etihettt d un simolo terminle o dll string vuot " 4. e il nodo K è etihettto on un simolo non terminle A ed h k figli etihettti on i simoli!1,...,!k llor esiste un produzione dell form A #!1,...,!k 5. e $ w e w è un string di rtteri terminli llor w è rppresentt dlle foglie dell lero.

Prentesi ilnite L Grmmti G 11 gener stringhe di prentesi ilnite! " () due possiili derivzioni sono: # # () # () () # () ( ) # ( ) ( ) # # ( ) # ( ) # ( ) ( ) # ( ) ( ) ( ) ( )!!

L Derivzione ome lsse di equivlenz Dt un grmmti G è possiile pervenire ll generzione di un string on proessi di generzione diverse. Dte due generzioni D e D : D = x 1! x 2!...! x n D = x 1! x 2!...! x n se si verifi he : 1. " i! k x i = x i 2. x k-1 = x k-1 = u A v B w on u,v,w # V e A, B # VN 3. x k = u y v B w, on A $ y # P 4. x k = u Av z w, on B$ z # P 5. x k1 = x k1 = u y v z w si dirà he D preede D e si sriverà " u y v B w!u y v z w.... x k-1 = x k-1 = u A v B w " " " u A v z w! u y v z w.... "" D pre D

sempio D 1 =!! ()! (())! (( ))! (( ))( )! (( )) ( ) D 2 =!! ()! (())! (( )) ()! (( ))( )! (( )) ( )! Pertnto D 1 pre D 2 D 2 =!! ()! (())! (( )) ()! (( ))( )! (( )) ( ) D 3 =!! ()! (())! (( )) ()! (( ))( )! (( )) ( ) pertnto D 2 pre D 3

sempio ont. D 4 =!! ()! ()! ( )( )! (( ))( )! (( )) ( ) D 5 =!! ()! () ()! (()) ()! (( ))( )! (( )) ( ) D 6 =!! ()! () ()! (()) ()! (( ))( )! (( )) ( ) D 7 =!! ()! () ()! ( )( )! (())( )! (( )) ( ) D 8 =!! ()! ( )! ( )( )! (())( )! (( )) ( ) D 1 pre pre pre D 4 pre D pre 2 D D 3 pre pre 8 D 7 pre D D 5 pre 6 leftmost derivtion rightmost derivtion

Amiguità D 11 =!! ( )! (( ))! " (( ))! (( )) ()! (( )) ( )! (( )) ( )! ( ) ( )! Un Grmmti si die migu se medesime stringhe sono generte d leri sintttii di differente struttur ovvero on due distinte derivzioni left most ovvero on due distinte derivzioni right most ( )! lero lterntivo Per ui si può onludere he l grmmti G 11 è un grmmti migu ( ) ( )! ( )!

sempio di Grmmti Amigu L Grmmti G 12 on produzioni!!! - / id!! id!! è un grmmti migu

Aleri semntii e notzioni polhe un Alero semntio è un lero in ui i nodi interni rppresentno operzioni d effettursi sui suoi sottoleri, mentre i nodi fogli rppresentno operndi sempio di ostruzione Primo psso - togliere tutti i simoli intermedi venti un unio disendente eondo psso - ostituire d ogni simolo non terminle l opertore orrispondente

sempio di ostruzione Aleri semntii e notzioni polhe Questo lero è stto ostruito prtire dll seond versione dell lero sintttio visto in preedenz. l proedimento è orretto, m il risultto è, ome deve essere diverso in virtù dell miguità dell grmmti. Dt un espressione ostruit prtire d un grmmti non migu è possiile ostruire l lero semntio direttmente trmite opportuni lgoritmi. Un tle lero è ovvimente unio.! d / sqrt d

Aleri semntii e notzioni polhe Attrversndo in modo opportuno un lero semntio si può vere un sequenzilizzzione delle operzioni sndendo l string d sinistr verso destr e ollondo gli elementi dentro uno stk. sqrt / d d / sqrt sqrt / d notzione pol postfiss o invers - RPN (Reverse Polish Nottion) (visit dell lero in ordine postiipto, o postordine) notzione pol prefiss (visit dell lero in ordine ntiipto, o preordine) [e si è onosenz dell rietà delle operzioni oinvolte l notzione pol h l rtteristi di rppresentre un espressione in form linerizzt senz prentesi.] i leggono i simoli dell string memorizzndo gli operndi nello stk, ppen si trov un simolo di operzione l si effettu e si pone nello stk il risultto.

ogliere l miguità Nel so di grmmti migu, se si generno due leri sintttii diversi, si hnno due leri semntii diversi, he quindi induono un semnti divers per l prol rionosiut (nel nostro so un espressione) Le fonti di miguità dell Grmmti G 12 dipendono di seguenti motivi: 1. Non viene rispettt l preedenz degli opertori 2. Un sequenz di opertori identii si può rggruppre si d sinistr he d destr Un versione non migu dell grmmti G 12 è l seguente grmmti G 13! -! /! () id id!... Un fttore rppresent un espressione he non si può somporre rispetto d un opertore diente. Un identifitore o un espressione prentesizzt è un fttore. Un termine rppresent un espressione he non si può somporre rispetto d un opertore dditivo (, -) diente. n sostnz un termine è un prodotto (divisione) di più fttori Un espressione è un qulsisi omposizione di termini trmite opertori dditivi (,-).

Anor sull miguità Considerimo il seguente frmmento dell grmmti del Psl, sritt seondo l Bkus-Nur orm (BN) <sttement> ::= <if-sttement> <if-sttement> ::= if <exp> then <sttement> [else <sttement>] L frse if then if then else d viene derivt medinte due leri sintttii if then if then else d if then if then else d Questo sottolinguggio del Psl è miguo. due leri sintttii induono selte semntihe diverse rigurdo l ssoizione dell else on gli if. n Psl si stilise, on un regol estern ll grmmti, he l else si ssoi ll if più destr.

Anor sull miguità Grmmti non migu per lo stesso sottolinguggio. <sttement> ::= <open-sttement> <losed-sttement> <simple-sttement> <open-sttement> ::= if <exp> then <sttement> <open-sttement> ::= if <exp> then <losed-sttement> else <open-sttement> <losed-sttement> ::= <simple-sttement> <losed-sttement> ::= if <exp> then <losed-sttement> else <losed-sttement> O C C C C C if then if then else d? C if then if then else d

Anor sull miguità i può trsformre un grmmti migu in un non migu equivlente? Non sempre Ci sono linguggi ontext-free on l proprietà he ogni grmmti he li gener è migu, tli linguggi sono detti inerentemente migui sempi di linguggi inerentemente migui { n n m d m : n! 1, m!1}! { n m m d n : n! 1, m!1 } { i i : i! 0}! { i i : i!0 } Per molti linguggi di utilizzo prtio è sempre possiile trovre l grmmti non migu equivlente

Dt l grmmti 1.! - 2.! / 3.! ( ) i ostituzioni in Aleri di derivzione imo visto in he modo si possiile ostruire l lero di derivzione per l string i osservi ome ll interno di un perorso possimo trovri in presenz dello stesso simolo di vriile, rdie di un sottolero. sempre possiile sostituire il sottolero di un vriile on un ltro sottolero sempre riferito ll stess vriile. Quello he si produe è nor un lero di derivzione di un string legle del linguggio. Quest proprietà è tipi per le derivzioni dei linguggi Contex ree. nftti ogni simolo non terminle si può sviluppre in modo indipendente dl ontesto in ui si trov

sempio ostituzioni in Aleri di derivzione L grmmti! 0B 1A A! 0 0 1AA B! 1 1 0BB Gener tutte e sole le stringhe he hnno un ugul numero di 0 e di 1 Un possiile derivzione per l string 0011 è: " 0B "00BB " 001B " 0011 Un ltr possiile derivzione è: " 0B "00BB " 00B1 " 0011 0 B 0 B B 1 1 0 B 0 B B 1 1 0 B 0 B B B 1 0 B B 1 1 Quindi: " 0B "00BB " 00B1 " 000BB1 " 000B11 " 000111 (i st prlndo di un grmmti migu?) Possimo ripetere il proedimento indefinitmente ottenendo prole del linguggio vi vi resente un rtteristi dei linguggi Contex-free, he disende dll proprietà di sostituzione il ftto he l resit vveng in mnier ostnte. Ad esempio se un grmmti gener prole l ui lunghezz rese in modo esponenzile llor il linguggio non è liero dl ontesto.

orme Normli A prtire d un grmmti Context-free G è sempre possiile ostruire un grmmti equivlente G ovvero L(G) = L(G ) he ino le produzioni in forme prtiolri, dette forme normli. Le forme normli vengono uste per dimostrre proprietà prtiolri dei linguggi piuttosto he per sopi pplitivi. orm normle di Chomsky rtterizzt d regole di due tipi orm normle di Greih A! BC dove A, B, C " V N A! on " V rtterizzt d regole di un solo tipo A! # on " V e # " V N Nel seguito fremo riferimento solo ll form normle di Chomsky

orm Normle di Chomsky Prim di illustrre l trsformzione oorre effetture un serie di pssggi preliminri per rendere l grmmti dtt ll trsformzione stess (form ridott). pssggi effettuti srnno tutti rivolti ll determinzione di grmmtihe equivlenti rispetto quell di prtenz, on l eventule eslusione del simolo {!}. 1. A prtire d G viene ostruit un grmmti G 1 di tipo 2 senz!-produzioni he gener L(G) -{!} 2. A prtire dll grmmti G 1 si ostruise un grmmti G 2 di tipo 2 senz!-produzioni e senz produzioni unitrie. 3. A prtire dll grmmti G 2 si ostruise un grmmti G 3 di tipo 2 senz!-produzioni, senz produzioni unitrie e senz simoli inutili. 4. L grmmti G 4 equivlente ll grmmti di prtenz G oinide on G 3 se! " L(G), ltrimenti G 4 è rivt d G 3 introduendo un nuovo ssiom ed un opportuno insieme di produzioni su tle simolo.

orm Normle di Chomsky 1. liminzione delle!-produzioni L eliminzione delle!-produzioni viene ftt in due step. Nel primo step vengono individute le vriili (simoli non terminli) nnullili, nel seondo step si effettu l eliminzione delle!-produzioni. Un vriile (simolo non terminle) si die nnullile se questo può generre l string vuot. Primo step s1. " ACA A " A B C B " B C " C! i verifi immeditmente ome il simolo C si un simolo nnullile in qunto gener direttmente!. A prtire d C si verifi ome nhe il simolo A si nnullile osì ome il simolo. Pertnto i simoli nnullili sono A C. s2 " AB A " AA! B " BB! A prtire d A e d B, he sono immeditmente nnullili si riv l nnullilità di. Pertnto i simoli nnullili sono A B.

liminzione delle!-produzioni (ont.) orm Normle di Chomsky A questo punto simo in grdo di effetture l eliminzione delle!-produzioni on un proedimento lgoritmio he h l oiettivo di definire l grmmti equivlente ggiungendo opportune produzioni ll grmmti di prtenz. Per ogni produzione dell grmmti G del tipo A " X 1, X 2,..., X k, supponimo he m dei k simoli sino nnullili, llor l grmmti risultnte G 1 vrà 2 m versioni dell produzione (on l sol eezione di qundo m=k). noltre non verrnno riportte le produzioni dell form A "!. s1. (simoli nnullili A C) " ACA A " A B C B " B C " C! " ACA AC CA AA A C! A " A B C B " B C " C L!-produzione può omprire direttmente sull ssiom ondizione he questo on ompi ll destr di qulhe produzione s2 (simoli nnullili A B ) " AB A " AA! B " BB! " AB A B A " AA A B " BB B

orm Normle di Chomsky Osservzioni sull eliminzione delle!-produzioni Oss. 1- L!-produzione presente in " ACA AC CA AA A C! A " A B C B " B C " C non è signifitiv se non per l possiilità d prte dell grmmti di generre nhe l string vuot. nftti il linguggio L(G) generto dll grmmti G senz un tle!-produzione è perfettmente equivlente un grmmti G on tle!-produzione. Cioé L(G ) = L(G) # {!}. Oss. 2 - possiile ggiungere direttmente l!-produzione ll ssiom del linguggio ome nell esempio prim visto. Ciò è possiile ondizione he l ssiom non ompi in un prte destr di qulhe produzione. e quest eventulità si verifi è omunque possiile ggiungere l!-produzione l osto dell inserimento di un simolo non terminle ggiuntivo, seondo il seguente riterio. Criterio seguito VN = VN # { } P = P # { "!} # { " $ " $ % P} sempio " A A " Ad d " A! " A A " Ad d