Línea 1: f(q0, 0) f(q0, 1) [final(q0)]
Línea 2: f(q1, 0) f(q1, 1) [final(q1)]
...
Línea N: f(qN, 0) f(qN, 1) [final(qN)]
Línea en blanco.
final(qk) = '*', si qk es estado final.
final(qk) = ' ', si qk no es estado final ejemplo
AFD Producto
Primer autómata
Línea 1: f(q0, 0) f(q0, 1) [final(q0)]
Línea 2: f(q1, 0) f(q1, 1) [final(q1)]
...
Línea en blanco
Segundo autómata
Línea 1: f(q0, 0) f(q0, 1) [final(q0)]
Línea 2: f(q1, 0) f(q1, 1) [final(q1)]
...
Línea en blanco
Función booleana
final(qk) = '*', si qk es estado final.
final(qk) = ' ', si qk no es estado final
La función booleana se escribe con cuatro bits.
Por ejemplo:
0001 es AND (autómata intersección)
0111 es OR (autómata unión)
0110 es XOR (autómata diferencia simétrica)
1001 es IFF (autómata equivalencia) ejemplo
Expresión regular a AFD
Las expresiones regulares se escriben así:
ER::= term { + term }
term::= factor { factor }
factor::= prim {*}
prim:= empty | lambda | 0 | 1 | (ER)
Ejemplo:
00+11*
(0+1)*
lambda + 00*
(empty)*
(00* + 11*)(0101)
AFD a expresión regular
Línea 1: Número de estados
Línea 2: f(q0, 0) f(q0, 1) [final(q0)]
Línea 3: f(q1, 0) f(q1, 1) [final(q1)]
...
final(qk) = '*', si qk es estado final.
final(qk) = ' ', si qk no es estado final ejemplo
AFND a AFD
Transiciones:
Línea 1: q1 sigma1 p1
Línea 2: q2 sigma1 p2
...
Línea N: qN sigmaN pN
Conjunto de estados iniciales
Conjunto de estados finales ejemplo
e-mail: