Documentos de Académico
Documentos de Profesional
Documentos de Cultura
TUTOR:
JAIME JOSE VALDES
Autómata
Expresión Utilizamos el método de eliminación Agregamos las transacciones que Agregamos las transacciones que
regular de estados: hacen falta para conectar cada hacen falta para conectar cada
Agregamos las transacciones que estado con el resto de estados: estado con el resto de estados:
hacen falta para conectar cada Ø 0 0
estado con el resto de estados: 0 q1
q0 q1
Ø Ø
Ø
0 Ø Ø 0 1
q0 q1 1 Ø Ø 1 Ø
Ø 1 Ø 1
Ø Ø 1
1 Ø Ø 1 q2
Ø q3
q0 q3
ØØ 0 Ø
1 Ø Ø
Ø
Ø
q2 q3 Eliminamos el estado q1
1 Ø
Ø
Eliminamos el estado q1 qx qy Qj ER
0 0 00* Ø + Ø Ø
Se selecciona un estado qr que no
0 3 00* 1+ 1 1+00*1
sea el estado final ni el inicial que es qx qy Qj ER
el que vamos a eliminar.
3 0 1 0* Ø+ 0 0
Seleccionamos a q1 como qr, 0 0 00* Ø + Ø Ø 3 3 10*1+ Ø 10*1
haciendo la concatenación de cada 0 2 00* Ø+1 1
transición desde todos los estados qx 0 3 00* 1+ Ø 00*1 Al eliminar los estados finales y no
hacia todos los estados qy, pasando 2 0 1 0* Ø+ Ø Ø finales el autómata queda así:
por qr 2 2 1 0* Ø+ Ø Ø Ø
10*1
2 3 1 0* 1+1 1+10*1 1+00*1
q0
qx qy Qj q3
3 0 Ø 0* Ø+ Ø Ø 0
0 0 0Ø* Ø 3 2 Ø 0* Ø+ Ø Ø
0 2 0Ø* Ø 3 3 Ø 0* 1+ Ø Ø
0 3 0Ø* 1 Entonces:
2 0 Ø Ø* Ø El autómata queda de la siguiente R: Ø
2 2 Ø Ø* Ø manera: S: 1+00*1
Ø U: 10*1
2 3 Ø Ø* 1
3 0 Ø Ø* Ø q0
T: 0
3 2 Ø Ø* Ø
3 3 Ø Ø* 1 1 Ø
Ø ER= (R+SU*T)*SU*
Hacemos la unión de Qj con el q2
Ø q3
símbolo de la transición que va de qx 1+10*1 ER= (Ø +(1+00*1)( 10*1)*0)*(
Ø Ø
a qy directamente, y agregamos una 1+00*1)( 10*1)*
columna con la expresión regular Ahora eliminamos el estado q2
ER=
qx qy Qj ER qx qy Qj ER ((1+00*1)(10*1)*0)*(1+00*1)(10*1
)*
0 0 0Ø* Ø + Ø Ø 0 0 1Ø* Ø + Ø Ø
0 2 0Ø* Ø+1 1 0 3 1Ø* 00*1+1(1
0 3 0Ø* 1+ Ø 01 (1+10*1)+ +10*1)
2 0 Ø Ø* Ø+ Ø Ø 00*1
2 2 Ø Ø* Ø+ Ø Ø 3 0 Ø Ø* Ø+ Ø Ø
2 3 Ø Ø* 1+1 1 3 3 Ø Ø* Ø
3 0 Ø Ø* Ø+ Ø Ø (10*1+1)+
3 2 Ø Ø* Ø+ Ø Ø Ø
3 3 Ø Ø* 1+ Ø Ø
Al eliminar los estados finales y no
El autómata queda de la siguiente finales el autómata queda así:
manera: Ø
Ø
00*1+1(1+10*1)
q0
q3
Ø
Ø
q0
01
Entonces:
1 Ø R: Ø
Ø
S: 00*1+1(1+10*1)
q2 Ø q3 U: Ø
1
Ø Ø T: Ø
Entonces:
R: Ø
S: 01+11
U: Ø
T: Ø
ER=01+11
Lenguaje L={w ϵ {0,1}* | w termina en 1 y L= {1n | 2≤n≤}∪ {0n1| n≤}∪ {110n1| L= { w ϵ {0,1}* | w termina en 1}
regular tiene exactamente dos símbolos} n≤1}
Tipo de Autómata finito determinista (AFD) Autómata finito no determinista Autómata finito determinista (AFD)
autómata (AFND)
(AFD o
AFND)
Ejercicio 2: Realizar la conversión del siguiente autómata, si el autómata es AFD convertirlo a AFND y si es AFND convertirlo a
AFD, Se debe mostrar el procedimiento paso a paso.
Solución:
El autómata finito es no determinista con transacciones vacías. En donde el estado inicial es q0 y el estado final q4, el alfabeto que
maneja es {0,1}. Con estos datos realizamos una tabla de transiciones, de manera vertical identificamos los conjuntos y de manera
horizontal los símbolos del alfabeto.
El primer conjunto (A) estará formado por el estado inicial unido con el conjunto de estados con transacciones vacías que lo afectan
directamente:
0 1
A={0} ∪ {-}
Hacemos la validación de cada uno de los valores del conjunto a con cada uno de los símbolos del alfabeto. Este conjunto obtenido lo
unimos con las transacciones vacías que lo afectan directamente.
0 1
A={0} ∪ {-} B = {1} ∪ {-} C= {2} ∪ {1}
Teniendo en cuenta que los valores obtenidos son los mismos que los conjuntos que ya estaban definidos (B y C), se les asigna este
mismo nombre.
Conteníamos con la validación del conjunto C:
0 1
A={0} ∪ {-} B = {1} ∪ {-} C= {2} ∪ {1}
B = {1} ∪ {-} B = {1} ∪ {-} C= {2} ∪ {1}
C= {2} ∪ {1} D={4,1}∪{3} E={3,2} ∪ {1}
Como en este caso lo conjuntos obtenidos son diferentes a los que ya se habían identificado, los nombramos con un nombre nuevo (D y
E).
Seguimos realizando el mismo procedimiento hasta validar todos los conjuntos que se obtengan:
0 1
A= {0} ∪ {-} B= {1} ∪ {-} C= {2} ∪ {1}
B= {1} ∪ {-} B= {1} ∪ {-} C= {2} ∪ {1}
C= {2} ∪ {1} D= {4,1} ∪ {3} E= {3,2} ∪ {1}
D= {4,1} ∪ {3} F= {1,0} ∪ {-} C= {2} ∪ {1}
E= {3,2} ∪ {1} G= {0,4,1} ∪ {3} E= {3,2} ∪ {1}
F= {1,0} ∪ {-} B= {1} ∪ {-} C= {2} ∪ {1}
G= {0,4,1} ∪ {3} F= {1,0} ∪ {-} C= {2} ∪ {1}
Teniendo en cuenta que el estado inicial es q0 nombramos como estado inicial al conjunto A que es el que contiene a dicho estado.
En el autómata original el estado final era q4 por lo tanto los conjuntos que quedaran como estado final son los que contienen a q4,
es decir D y G.
Podemos simplificar la tabla dejando solo el nombre de los conjuntos:
0 1
A B C
B B C
C D E
#D F C
E G E
F B C
#G F C
0 G
A E
1
1 1
0 0
0
C D
1
1
0
1
B
0 F
0
O bien,
1
0 q6
q0 q4
1
1 1
0 0
0
q2 q3
1
1
0
1
q1
0 q5
0
Ejercicio 3:
Teniendo en cuenta el ejercicio anterior, seleccionar el autómata finito determinista (AFD). Con base en ese autómata
desarrolle:
0 G
A E
1
1 1
0 0
0
C D
1
1
0
1
B
0 F
0
0 1
A B C
B B C
C D E
#D F C
E G E
F B C
#G F C
3. Identifique los elementos (tupla, estado final, inicial, alfabeto, etc.). Debe explicar y describir cada elemento
y la función y significado en el autómata.
𝑇𝑢𝑝𝑙𝑎 = |𝐴, 𝐵, 𝐶, 𝐷, 𝐸, 𝐹, 𝐺|
Estado inicial 𝐸𝐼 = 𝐴
Alfabeto del autómata ∑|0,1|
Estado de aceptación
𝐸𝐹 = |𝐷, 𝐺|
4. Identifique el lenguaje que genera.
5.
Simulación de las siguientes Cadenas valida 11010
Podemos Apreciar que desde el estado inicial, si partimos con transición 1 nos lleva a q2
Solución:
- Ambos simuladores permiten el análisis de cadenas devolviendo aceptación
o
Rechazo.
- En los diagramas de Moore VAS permite la observación de los caminos que
toma
Cada símbolo en una transición; cosa que no permite JFLAP.
- JFLAP permite la inserción de varias cadenas para su posterior análisis.
-Ambos simuladores permiten la conversión de AFND a AFD.
- Ambos simuladores permiten observar el recorrido paso a paso de un
autómata.
-JFLAP permite la conversión de AF a ER y viceversa.
-VAS permite la visualización de la tabla de transición.
-Ambos simuladores permiten la conversión a formato de imagen
10101010 valida
Solución:
REFERENCIAS