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...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

42 CHAPTER 3.ACEPTACIÓN Y GENERACIÓN DE LENGUAJES REGULARESy la función <strong>de</strong> transición δ:Q \ Σ a b0 {0} {0, 1}1 ∅ {2}2 ∅ {3}3 {3} {3}Dos autómatas finitos M 1 y M 2 se dicen equivalentes si y sólo si ellos aceptan el mismo lenguaje, es <strong>de</strong>cir,si y sólo siL(M 1 ) = L(M 2 )no importa qué método usen para reconocer el lenguaje, son equivalentes si aceptan el mismo lenguaje.Ejemplo 40 El AFD <strong>de</strong> la Figura 3.8 es equivalente al AFND <strong>de</strong>l Ejemplo 39.✗ ✔✗ ✔aa, b✓✏ ✓✏ ✓✏✛✘✲ ✂ ✛✆✂✓✏b ✛✆✲ b ✲ b0 1 2 ✲ 3✒✑ ✒✑ ✒✑✻✚✚✙✒✑a✙a✫✪Figure 3.8: AFD que acepta strings con tres b’s consecutivas✷Como todo AFD es un AFND, es claro que la clase <strong>de</strong> lenguajes aceptados por los AFND incluye alos lenguajes regulares (aceptados por los AFD). Pero hay más, suce<strong>de</strong> que estos son los únicos lenguajesaceptados por los AFND. La prueba se basa en mostrar que los AFD pue<strong>de</strong>n simular a los AFND; ésto es,por cada AFND es posible construir un AFD equivalente.La forma <strong>de</strong> simular un AFND con un AFD es permitir que los estados <strong>de</strong>l AFD correspondan a conjuntos<strong>de</strong> estados <strong>de</strong>l AFND, <strong>de</strong> manera que el AFD pueda almacenar en su control finito todos aquellos estadosen que el AFND podría estar, habiendo leído el mismo prefijo <strong>de</strong>l input. La construcción formal se incluyeen la <strong>de</strong>mostración <strong>de</strong>l siguiente teorema:Teorema 1 Sea L un lenguaje aceptado por un autómata finito no <strong>de</strong>terminístico. Existe un autómata finito<strong>de</strong>terminístico que acepta L.Demostración : Sea M = (Q, Σ, δ, q 0 , F ) el AFND que acepta L. Defina un autómata finito <strong>de</strong>terminísticoM ′ = (Q ′ , Σ, δ ′ , q 0 ′ , F ′ ) como sigue: Los estados <strong>de</strong> M ′ son todos los subconjuntos <strong>de</strong>l conjunto <strong>de</strong> estados<strong>de</strong> M, es <strong>de</strong>cir, Q ′ = 2 Q . M ′ tendrá en sus estados la información <strong>de</strong> todos los estados en que M podríaestar. F ′ es el conjunto <strong>de</strong> todos los estados en Q ′ que contienen al menos un estado final <strong>de</strong> M. Un estadoen Q ′ se <strong>de</strong>notará por [q 1 , q 2 , . . . , q i ] en que {q 1 , q 2 , . . . , q i } ∈ Q. Nótese que [q 1 , q 2 , . . . , q i ] es un solo estado<strong>de</strong>l AFD M ′ , sólo que su nombre es compuesto. También se tiene que q 0 ′ = [q 0 ]. Y se <strong>de</strong>finesi y sólo siδ ′ ([q 1 , q 2 , . . . , q i ] , a) = [p 1 , p 2 , . . . , p j ]δ([q 1 , q 2 , . . . , q i ] , a) = {p 1 , p 2 , . . . , p j }.✷

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

Saved successfully!

Ooh no, something went wrong!