3-2_Simbolos_Utiles
-
Upload
nilas-arcanister -
Category
Documents
-
view
212 -
download
0
description
Transcript of 3-2_Simbolos_Utiles
-
IntroduccinDefiniciones
Smbolos InfecundosEliminacin de Smbolos Inaccesibles
La Representacin de las GramticasEl Generador del Lenguaje
Universidad de Cantabria
Gramticas Incontextuales
-
IntroduccinDefiniciones
Smbolos InfecundosEliminacin de Smbolos Inaccesibles
Esquema
1 Introduccin
2 Definiciones
3 Smbolos Infecundos
4 Eliminacin de Smbolos Inaccesibles
Gramticas Incontextuales
-
IntroduccinDefiniciones
Smbolos InfecundosEliminacin de Smbolos Inaccesibles
Introduccin
Las gramticas libres de contexto son ms generales que lasgramticas regulares. Empecemos poniendo un ejemplo de lossiguientes problemas que pueden surgir:
Puede estar sobre-definida, en el sentido de que hayainformacin intil.Dada una palabra, es difcil decidir como ha sido generadapor la gramtica.
Gramticas Incontextuales
-
IntroduccinDefiniciones
Smbolos InfecundosEliminacin de Smbolos Inaccesibles
Introduccin
Consideremos la gramtica G := ({Q0,A,B}, {a,b},Q0,P),donde las producciones de P son dadas por:
P := {Q0 7 a | A,A 7 AB,B 7 b}.
Qu utilidad tiene el smbolo A?
Gramticas Incontextuales
-
IntroduccinDefiniciones
Smbolos InfecundosEliminacin de Smbolos Inaccesibles
Introduccin
Consideremos la gramtica G := ({Q0,A,B}, {a,b},Q0,P),donde las producciones de P son dadas por:
P := {Q0 7 a|aQ0,A 7 BB | Q0,B 7 b}.
Qu utilidad tiene el smbolo A?
Gramticas Incontextuales
-
IntroduccinDefiniciones
Smbolos InfecundosEliminacin de Smbolos Inaccesibles
Definicin de Smbolo til
Definicin (Smbolos tiles)
Sea G := (V ,,Q0,P) una gramtica libre de contexto.Llamamos smbolos tiles dec G a todos los smbolos(terminales o no) X V tales que existen , (V ) y de tal modo que:
Q0 `G X, y X `G .
Los smbolos intiles son los que no son tiles.
Gramticas Incontextuales
-
IntroduccinDefiniciones
Smbolos InfecundosEliminacin de Smbolos Inaccesibles
Una Pequea Nota
Encontrar los smbolos intiles es difcil a primera vista.Dividamos nuestro problema definiendo dos subclases desmbolo intil.
Gramticas Incontextuales
-
IntroduccinDefiniciones
Smbolos InfecundosEliminacin de Smbolos Inaccesibles
Definicin
DefinicinSea G := (V ,,Q0,P) una gramtica libre de contexto.
Llamamos smbolos productivos (o fecundos) de G a todoslos smbolos no terminales X V tales que existe tal que X `G . Son improductivos (o infecundos) a losque no satisfacen esta propiedad.Llamamos smbolos accesibles de G a todos los smbolos(terminales o no) X V tales que existen, (V ) de tal modo que:
Q0 `G X.
Se llaman inaccesibles a los que no son accesibles.
Gramticas Incontextuales
-
IntroduccinDefiniciones
Smbolos InfecundosEliminacin de Smbolos Inaccesibles
Unas Aclaraciones
Ntese que si X es un smbolo til, se han de producir dospropiedades. De una parte, la propiedad Q0 `G X que nosdice que X es accesible. De otra parte, sabemos queX `G . Y por tanto, ha de existir tal que X `G .
Gramticas Incontextuales
-
IntroduccinDefiniciones
Smbolos InfecundosEliminacin de Smbolos Inaccesibles
Proposicin
TeoremaSi G := (V ,,Q0,P) es una gramtica libre de contexto,entonces los smbolos tiles son productivos y accesibles. Elrecproco no es cierto, en general.
Gramticas Incontextuales
-
IntroduccinDefiniciones
Smbolos InfecundosEliminacin de Smbolos Inaccesibles
Unas Aclaraciones
Lo que nos dice el teorema es que no podemos simplementeeliminar los smbolos que no sean productivos y los que nosean accesibles. Pero no mucho ms.
Gramticas Incontextuales
-
IntroduccinDefiniciones
Smbolos InfecundosEliminacin de Smbolos Inaccesibles
Otro Resultado
TeoremaSi G := (V ,,Q0,P) es una gramtica libre de contexto, y librede smbolos infecundos, entonces todo smbolo es til si ysolamente si es accesible.
Gramticas Incontextuales
-
IntroduccinDefiniciones
Smbolos InfecundosEliminacin de Smbolos Inaccesibles
Algoritmo de Smbolos Infecundos
Toda gramtica libre de contexto es equivalente a unagramtica libre de contexto sin smbolos infecundos. Adems,dicha equivalencia puede hacerse de manera algortmica.
Gramticas Incontextuales
-
IntroduccinDefiniciones
Smbolos InfecundosEliminacin de Smbolos Inaccesibles
Algoritmo de Smbolos Infecundos
La prueba del resultado es consecuencia directa del algoritmo.No responderemos a preguntas tan esenciales como lamemoria necesaria o el nmero de operaciones, aunque sonalgoritmos polinomiales.
Gramticas Incontextuales
-
IntroduccinDefiniciones
Smbolos InfecundosEliminacin de Smbolos Inaccesibles
Algoritmo de Smbolos Infecundos
Entrada: Una gramtica libre de contexto G = (V ,,Q0,P).M := N := {A V : (A 7 ) P, }
mientras N 6= M hacerM := NN := {A V : (A 7 ) P, (N )} N.
mientras finSalida G := (V N,,Q0, P), donde P son las
producciones de P que involucran solamente smbolos en(V N) {}
Gramticas Incontextuales
-
IntroduccinDefiniciones
Smbolos InfecundosEliminacin de Smbolos Inaccesibles
Notas
Esta claro que este algoritmo funciona, y que acaba despusde un nmero de pasos finito, pero es fundamental notar laidea.Podramos habernos preguntado tambin lo siguiente:Se podra haber resuelto este problema con un autmatafinito?
Gramticas Incontextuales
-
IntroduccinDefiniciones
Smbolos InfecundosEliminacin de Smbolos Inaccesibles
Notas
Esta claro que este algoritmo funciona, y que acaba despusde un nmero de pasos finito, pero es fundamental notar laidea.Podramos habernos preguntado tambin lo siguiente:Se podra haber resuelto este problema con un autmatafinito?
Gramticas Incontextuales
-
IntroduccinDefiniciones
Smbolos InfecundosEliminacin de Smbolos Inaccesibles
Eliminacin de Smbolos Inaccesibles
Como ocurre con los smbolos no productivos, toda gramticalibre de contexto es equivalente a una gramtica libre decontexto sin smbolos inaccesibles. Adems, dichaequivalencia puede hacerse de manera algortmica.
Gramticas Incontextuales
-
IntroduccinDefiniciones
Smbolos InfecundosEliminacin de Smbolos Inaccesibles
Eliminacin de Smbolos Inaccesibles
Entrada: Una gramtica libre de contexto G = (V ,,Q0,P).M := {Q0}N := {X V : A M, , (V ) , con A 7X en P}.
mientras N 6= M hacerM := NN := {X V : A M,
, (V ) , con A 7 X en P}.mientras fin
Salida: La gramtica G = (V , ,Q0, P), conV := N V , := N ,P :={Las producciones de P que slo contienen los elementos de V }.
Gramticas Incontextuales
-
IntroduccinDefiniciones
Smbolos InfecundosEliminacin de Smbolos Inaccesibles
Conclusiones
Sabemos que hay smbolos que no son necesarios:Los smbolos intiles, que no generan palabras. Estos sondifciles de detectar en cambio, dos subclases son fcilesde detectar:
Los smbolos inaccesibles.Los smbolos improductivos.
Adems, un resultado nos dice como eliminar los smbolosque no son tiles por medio de algoritmos.
Gramticas Incontextuales
IntroduccinDefinicionesSmbolos InfecundosEliminacin de Smbolos Inaccesibles