Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1. Ejercicios Capítulo 2
Ejercicio 1. Dar un autómata finito no determinista que acepte el
lenguaje que consiste de todas las cadenas sobre {a, b, c} que tienen
el mismo valor cuando son evaluadas de izquierda a derecha y de
derecha a izquierda, multiplicando como en la tabla:
a b c
a a a c
b c a b
c b c a
Lema 2. Sea L un lenguaje regular y M un autómata que acepte L. Sea
LR = {R(a) : a ∈ L} donde R(a1 a2 · · · am−1 am ) = am am−1 · · · a2 a1 .
Entonces LR también es regular.
Demostración. Supongamos que M = (Q, Σ, δ, q0 , {f}) es determinista
y tiene un solo estado final (lo primero por el algoritmo NFA to
DFA, y lo segundo porque si no, podemos añadir un nuevo estado
f 0 y transiciones de cada estado final de M en f 0 ), y sea MR =
(Q, Σ, δR , f, {q0 }) el autómata no determinista tal que para q, q 0 ∈ Q
y a ∈ Σ, q ∈ δR (q 0 , a) si y solo si q 0 ∈ δR (q, a). Entonces una palabra
a es aceptada por M si y solo si R(a) es aceptada en MR .
En efecto, si a = a1 . . . am ∈ L(M), entonces hay estados q0 , . . . , qm =
f tales que para cada i ∈ {1, . . . , m}, δ(qi−1 , ai ) = qi . Eso significa
que qi−1 ∈ δR (qi , ai ), para cada i. En particular q0 ∈ δR (q1 , a1 ) y
qm−1 ∈ δR (f, am ). Esto quiere decir que la palabra R(a) = am . . . a1
parte del estado inicial f de MR y termina en un su estado de acepta-
ción. Por lo tanto, si a es aceptada por M entonces R(a) es aceptada
por MR . El recíproco se sigue de que si una palabra a es aceptada
por MR entonces R(a) es aceptada por (MR )R = M (porque MR re-
sulta de M al cambiar la dirección de todas las flechas y al cambiarlas
dos veces regresamos a M).
Se sigue que MR acepta a LR y que LR es regular.
Date: 15 de abril de 2021.
1
2 DAVID CAMILO MOLANO VALBUENA
M1 = (Q1 , Σ, δ1 , q1 , F1 ), M2 = (Q2 , Σ, δ2 , q2 , F2 )
M1 × M2 = (Q1 × Q2 , Σ, δ1 × δ2 , (q1 , q2 ), F1 × F2 )
acepta L1 ∩ L2 , donde δ1 × δ2 (q, r, a) = (δ1 (q, a), δ2 (r, a)) para cada
a.
La misma construcción funciona para autómatas no deterministas
con la única diferencia de que, para q, r, δ1 × δ2 (q, r, a) = δ1 (q, a) ×
δ2 (r, a).
La validez de esta construcción es que la manera en que el produc-
to cartesiano de M1 y M2 corre una palabra a, es haciéndola correr
por medio de ambos autómatas y llegando a un estado de acepta-
ción si en ambos autómatas se llega a un estado de aceptación. Por
lo tanto el lenguaje aceptado por el producto cartesiano consiste de
las palabras que son aceptadas por ambos... la intersección.
b
c
a
c
a
c
b
a b
b
a
b
c
a
c
a
c
c
b
a b
a b
b
a
c
donde es el estado inicial. Para construir Ma que acepte La po-
nemos a como el estado final, para construir Mb que acepte Lb
ponemos b como el estado final, y para construir Mc que acepte Lc
ponemos c como el estado final.
Ahora, vía el lema 2, tenemos autómatas MRa , MRb , MRc para LRa , LRb , LRc
que resultan de Ma , Mb , Mc revirtiendo todas las flechas y permu-
tando el estado final con el inicial. Para x ∈ {a, b, c}, Lx ∩ LRx consiste
de las palabras que al operar de izquierda a derecha, y de derecha a
izquierda den como resultado x, y por lo tanto el lenguaje de todas
las palabras que den el mismo resultado al operar de izquierda a
derecha que de derecha a izquierda consiste de:
Ma × MRa
q2 Mb × MRb q3
q0 Mc × MRc q1
Inicio
4 DAVID CAMILO MOLANO VALBUENA
Ma × MRa
Inicio q q3
2 Mb × MRb
Mc × MRc