11.07.2015 Views

Teor´ıa de Autómatas y Lenguajes Formales

Teor´ıa de Autómatas y Lenguajes Formales

Teor´ıa de Autómatas y Lenguajes Formales

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

102 CHAPTER 5.ACEPTACIÓN Y GENERACIÓN DE LENGUAJES LIBRES DE CONTEXTOLema 7 Sean (N i , M i ), 1 ≤ i ≤ r, pares <strong>de</strong> conjuntos <strong>de</strong> enteros (los conjuntos pue<strong>de</strong>n ser finitos oinfinitos). Seay seaS i = {(n, m)/n ∈ N i y m ∈ M i }S = S 1 ∪ S 2 ∪ . . . ∪ S rSi cada par <strong>de</strong> enteros (n, m) está en S, para todo n y m, con n ≠ m; entonces (n, n) está en S paratodos, excepto un conjunto finito <strong>de</strong> n.Demostración : Asuma que para todo n y m, con n ≠ m, cada par (n, m) ∈ S, y que hay un número infinito<strong>de</strong> n tales que (n, m) ∉ S. Sea δ el conjunto <strong>de</strong> todos los n tales que (n, n) no está en S. Se contruye unasecuencia <strong>de</strong> conjuntos δ r , δ r−1 , . . . , δ 1 , tales queδ ⊇ δ r ⊇ δ r−1 . . . ⊇ δ 1Cada δ i será infinito y para cada n, m en δ i , (n, m) no está enS i ∪ S i+1 ∪ . . . ∪ S rPara n ∈ δ, o n no está en N r o n no está en M r ; sino, (n, m) estaría en S r y por lo tanto en S. Hay,por lo tanto, un subconjunto infinito <strong>de</strong> δ, llamado δ r , tal que para todo n ∈ δ r , n ∉ N r , o para todo n ∈ δ r ,n ∈ M r . También, para n y m ∈ δ r , (n, m) no está en S r .Asuma que δ r , δ r−1 , . . . , δ i−1 ha sido construido para i ≤ r − 1; δ i se construye como sigue. Por cadan ∈ δ i+1 , n no está en N i o n no está en M i ; si no (n, n) habría estado en S i y por lo tanto en S, unacontradicción ya que δ i+1 ⊆ δ. Por lo tanto, ya sea un subconjunto infinito <strong>de</strong> δ i+1 no está en N i o unsubconjunto infinito <strong>de</strong> δ i+1 no está en M i . En cualquier caso, sea δ i ese conjunto infinito. Ahora, para todon y m en δ i , (n, m) no está en S i y por lo tanto, no está en S i ∪ S i+1 ∪ . . . ∪ S r .Ya que δ 1 tiene un número infinito <strong>de</strong> elementos, existen n y m en δ 1 , con n ≠ m. Ahora, (n, m) no estáen S 1 ∪ S 2 ∪ . . . ∪ S r = S, contradiciendo la hipótesis <strong>de</strong> que todo (n, m), con n ≠ m está en S. Por lo tanto,(n, m) está en S para todos excepto un conjunto finito <strong>de</strong> n.Lema 8 Sea G una gramática libre <strong>de</strong> contexto no ambigua. Entonces se pue<strong>de</strong> construir efectivamenteuna gramática libre <strong>de</strong> contexto no ambigua, G ′ , equivalente a G, tal que G ′ no tiene símbolos inútiles, niproducciones unitarias, ni producciones vacías y en que para toda variable A, excepto posiblemente el símboloinicial <strong>de</strong> G ′ , se tiene una <strong>de</strong>rivación A⇒ ∗ G ′X 1 AX 2 , en que X 1 y X 2 no son ambos ε.Demostración : Las construcciones para remover símbolos inútiles no convierten una gramática no ambiguaen una ambigua, ya que el conjunto <strong>de</strong> árboles <strong>de</strong> <strong>de</strong>rivación no cambia. La construcción para removerproducciones unitarias no pue<strong>de</strong> introducir ambigueda<strong>de</strong>s, ya que si se incluye la producción A → α, hay unúnico B, tal que A⇒B ∗ y B → α es una producción, si no la gramática original era ambigua. Similarmentela construcción para remover producciones vacías, tampoco introduce ambigueda<strong>de</strong>s.Se asume por lo tanto, que G no tiene símbolos inútiles ni producciones unitarias ni producciones vacías.Suponga que para ningún X 1 , X 2 , ambos no ε, A⇒X ∗ 1 AX 2 . Reemplace cada ocurrencia <strong>de</strong> A en el lado<strong>de</strong>recho <strong>de</strong> cada producción por todos los lados <strong>de</strong>rechos <strong>de</strong> las producciones-A. Como no hay produccionesunitarias ni producciones vacías ni símbolos inútiles, no pue<strong>de</strong> haber una producción A → α 1 Aα 2 , si no hayuna <strong>de</strong>rivación A⇒X ∗ 1 AX 2 con X 1 y X 2 no ambos ε. El cambio <strong>de</strong>scrito no altera el lenguaje generado,como se mostró en un lema anterior. Cada nueva producción viene <strong>de</strong> una única secuencia <strong>de</strong> produccionesantiguas, si no G era ambigua. Por lo tanto la gramática resultante no era ambigua. A es ahora inútil ypue<strong>de</strong> eliminarse. Después <strong>de</strong> remover la variables que violan la condición <strong>de</strong>l lema <strong>de</strong> la manera <strong>de</strong>scrita,la nueva gramática es equivalente a la original, es aún no ambigua y satisface el lema.✷

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!