ST0270-031

Clase 5
J.F. Cardona
Universidad EAFIT

2 de agosto de 2016

Sintaxis ´ Gramaticas generativas independiente del contexto ´ y generacion ´ del lenguaje Derivacion ´ ´ Cadenas erroneas y reglas inutiles ´ e infinitud de lenguajes Recursion .Agenda 1 Cap´ıtulo 2.

Claramente una sentencia (o frase o cadena) es una forma sentencial en la cual la cadena adolece de no-terminales. la cadena es llamada una forma sentencial. Forma de cadena Una forma de cadena generada por G e iniciada desde cualquier ∗ no-terminal A ∈ V .´ Lenguaje de una gramatica independiente de contexto En algunos caso se requiere considerar ciertas derivaciones que producen cadenas que un contiene no-terminales. . es una cadena α ∈ (V ∪ Σ)∗ tal que A ⇒ α Forma sentencial Si A es el axioma S.

formalmente hablando. ´ ´ si una Frecuentemente una gramatica es verificada por revision ´ gramatica esta limpia o no. algunas reglas pueden ser improductivas. existe una derivacion 2 cada no-terminal A esta´ bien definido. ∅. este genera un lenguaje que no es vac´ıo LA (G ) . . a la produccion De hecho. ´ Gramaticas limpias ´ Una gramatica G es llamada limpia (o reducible) bajo las siguientes consideraciones: 1 cada no-terminal A es alcanzable desde el axioma. ∗ ´ S ⇒ αA β.´ ´ Cadenas erroneas y reglas inutiles ´ a que todos los no-terminales estan ´ Se debe poner atencion definidos y que cada uno de ellos efectivamente contribuyen ´ de alguna frase (sentencia o cadena).

Dn ) ∈ P } donde cada Di es un terminal o un s´ımbolo no-terminal presente en DEF. con u ∈ Σ∗ } ´ es aplicada hasta que Entonces la siguiente transformacion ´ es alcanzada: la conversion DEF B DEF ∪ {B | (B → D1 D2 .´ de gramaticas ´ Algoritmo de verificacion ´ Definicion Primera fase. . . DEF B {A | (A → u) ∈ P. . Los no-terminales pertenecientes al conjunto complemento V \ DEF son los no-definidos y deben ser eliminados. Calcule el conjunto DEF ⊆ V de terminales bien definidos.

y unicamente s´ı. . la cual representa una relacion llamada produce: produce A −→ B ´ diciendo que A produce a B s´ı. B son no-terminales y α. all´ı existe un camino en el siguiente grafo. Claramente C es alcanzable desde S s´ı. β son cualquier cadena. Un no-terminal es alcanze desde el axioma s´ı. y solamente s´ı. ´ entre los no-terminales.´ de gramaticas ´ Algoritmo de verificacion ´ Definicion Segunda fase. y solamente en este grafo existe un camino orientado de S a C. existe una regla A → αB β. donde A . Los no-terminales inalcanzables son complementados con respecto a V .

esta puede ser obtenida directamente de la derivacion ´ causa ambiguedad. x es obtenida por medio de un derivacion ´ A ⇒ x.´ de gramaticas ´ Algoritmo de verificacion Requerimiento adicional + G no deber´ıa permitir derivaciones circulares A ⇒ A . debido a que si la cadena ´ circular A ⇒ A ⇒ x. Tales derivaciones son innecesarias. ¨ Este tipo de derivacion .

´ ´ Para generar un numero ilimitado de cadenas. .Recursion Infinitud ´ Una propiedad esencial de muchos lenguajes tecnicos es que son infinitos. similarmente. de igual forma un no-terminal es recursivo. Recursividad n ´ de n ≥ 1 pasos A ⇒ xAy es llamada recursiva Un derivacion (inmediatamente recursiva si n = 1). es recursiva por la derecha. si la cadena y es vac´ıa. la gramatica debe derivar cadenas de una longitud ilimitada.Sintaxis ´ e infinitud de lenguajes GIC . ´ (no-terminal) es Si la cadena x es vac´ıa. la derivacion recursiva por la izquierda.

libre de derivaciones circulares.Recursion Propiedad ´ Sea G una gramatica limpia. y solo recursiva. G tiene una derivacion ´ lenguaje L (G ) es infinito si.Sintaxis ´ e infinitud de lenguajes GIC . . El ´ s´ı.