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
Top Related