DorielizGuerrero-27 085 237 DIAPOSITIVAS (MEF)
DorielizGuerrero-27 085 237 DIAPOSITIVAS (MEF)
DorielizGuerrero-27 085 237 DIAPOSITIVAS (MEF)
de
Estado Finito
¿Qué es una máquina de
estado finito? Máquinas Equivalentes.
01 Definiciones y 03 Optimizacíon
Definiciones y
teoremas teoremas
Notaciones
Importantes El estado inicial se
denota por 0
El alfabeto es un
subconjunto del
alfabeto romano.
Dos maneras usuales de representar una MEF son: el
diagrama de estados y la tabla de estados. El diagrama de
estados es una representación sagital cuyos vértices son
los estados internos de la máquina; se dibuja una flecha de
un estado e a otro estado e′ si para alguna entrada x ocurre
que ce(x, e) = e′. La flecha lleva doble ponderación: la
entrada x y la respectiva salida s = co(x, e).
Pongamos I = {0, 1}, O = {a, b} y E = {e0 , e1 , e2 }. Cualquier par de aplicaciones ce :
I × E −→ E , co : I × E −→ O completa la definición de una máquina con alfabeto I, O y 3-estados
internos e0 , e1 , e2 . En la tabla siguiente se da un par ce, co.
(0, e0) (1, e0) (0, e1) (1, e1) (0, e2) (1, e1)
Ce e1 e0 e2 e1 e0 e2
co a b b a b a
La tabla de estados es una tabulación simultánea de las dos aplicaciones, la de cambio de estados
y la de salidas. Para una máquina M = [I, O, E , ce, co] que tenga I = {a1 , a2 , . . . , aj , . . . , an , } y
E = {e1 , e2 , . . . , ei , . . . , em }, una manera de organizar la tabla es la siguiente.
M ce coe
a1 . . . aj . . . an 1 . . . ei . . . em
e1 ce(a1,e1)...ce(aj,e1)...ce(an,e1) co(a1,e1)...co(aj,e1)...co(an,e1)
ei ce(a1,ei)...ce(aj,ei)...ce(an,ei) co(a1,ei)...co(aj,ei)...co(an,ei)
em ce(a1,em)...ce(aj,em)...ce(an,em) co(a1,em)...co(aj,em)...co(an,em)
¿Cómo funcionan las máquinas de estado finito?
Ejercicio 1
Ejercicio 7
Ejercicio 2
Ejercicio 6
Ejercicio 5 Ejercicio 3
Ejercicio 4
Ejercicio 1
Suponga que la palabra de entrada es w = a-b-a-a-b. El trabajo interno de la máquina en esta
entrada está determinado por una ruta en el gráfico tal que la ruta comienza en el estado inicial 0 y
la palabra w se lee en las etiquetas a lo largo del camino
a b
0 1 2
1 2 1
2 0 0
a b a a b
0 1 1 2 0 2
Ejercicio 2
Cuando el usuario ingrese 101, el cajero automático le devolverá el dinero. Validar si el usuario
comete un error al ingresar la entrada a = [101]
S = {1,2,3}
Σ = {a , b}
A = {(1,a, 2) ,(2,b,3),(3,a,1) ,(1,b,3)}
Sk = 1
Ejercicio 4
Dada la FSM siguiente, encuentre las trazas
Solución:
Se supondrá que la máquina se encuentra en el estado e 0 perteneciente a E en el tiempo t 0. Al
introducir una moneda en el tiempo t i la salida será g(x,es) donde es es el estado de la máquina en
el tiempo ti. A esta salida le sigue una transición de la máquina en el tiempo t i+1dado por f(x,es).
Los estados del conjunto E serán:
e1 e1 e2 e3 e6 e6 e1
e2 e2 e3 e4 e6 e6 e2
e3 e3 e4 e5 e6 e6 e3
e4 e4 e5 e6 e6 e6 e4
e5 e5 e6 e6 e6 e6 e5
e6 e6 e6 e6 e6 e6 e0
En esta tabla por ejemplo, f(e0,500)=e5; lo que quiere decir que en el tiempo t siguiente la
máquina recordará que se le han introducido $500.
f(e3,200)=e5 , lo que significa que la máquina pasa del estado e 3; al estado e5 ; lo que quiere decir
que pasa de "recordar" que se le habrían introducido $300 a "recordar" que se le han introducido
$500.
f(e5,200)=e6 , lo que significa que la máquina pasa de "recordar" que se le habrían introducido
$500 a "recordar" que se le han introducido más de $600, en este caso, la función de salida se
diseñará para que devuelva $100 al comprador.
g
n 100 200 500 1000 b
e0 n n n n 400 n
e1 n n n n 500 n
e2 n n n 100 600 n
e3 n n n 200 700 n
e4 n n n 300 800 n
e5 n n 100 400 900 n
e6 n 100 200 500 100 T
En esta tabla, g(e3,500) = 200, lo que significa que la máquina pasa de "recordar" que se le habían
introducido $300 a "recordar" $800 y por tanto devuelve $200. Como f(e 3,500)=e6, la máquina
pasa al estado e6 y por último, como g(e6,b)=T recibe el tique.
B = { n, 100, 200, 300, 400, 500, 600, 700, 800, 900, 1000, T}
f(e3,200)= e5 , lo que significa que la máquina pasa del estado e 3; al estado e5 ; lo que quiere decir
que pasa de "recordar" que se le habrían introducido $300 a "recordar" que se le han introducido
$500.
f(e5,200)= e6 , lo que significa que la máquina pasa de "recordar" que se le habrían introducido
$500 a "recordar" que se le han introducido más de $600, en este caso, la función de salida se
diseñará para que devuelva $100 al comprador.
0 1
e0 e0 e1
e1 e1 e1
e2 e2 e1
La tabla de salida es:
g
0 1
e0 0 0
e1 0 0
e2 0 1
Así por ejemplo, si la entrada es 101 la máquina hará lo
siguiente:
ã = [0000]
s̃ = ?
e0 0 e2 0 e0 0 e2 0 e0
a b a b
s ̃ = [abab]
Máquinas
Equivalentes
Optimización
03
Definiciones y teoremas
Definición de Máquinas Equivalentes
El comportamiento secuencial de las máquinas puede ser descrito mediante aplicaciones. Dada una
MEF M = [I, O, E , ce, co] con estado inicial z, al proporcionarle una secuencia de entradas ã = [x 1 x2
. . . xk ] la MEF produce una secuencia de salidas s ̃ = [y1 y2 . . . yk ] y “sufre” una secuencia de
cambios internos ẽ = [zz1 z2 . . . zk ], según se muestra en el diagrama. Si el número k está fijo,
podemos mirar las secuencias [z, z1 z2 . . . zk ], [y1 y2 . . . yk ] como las imágenes respectivas de las
secuencias ã = [x1 x2 . . . xk ] bajo las aplicaciones siguientes:
Nótese que esto puede hacerse para cada número entero positivo k. Si se tiene otra máquina ‘M = [I,
O, ‘E , ‘ce, ‘co] con los mismos alfabetos, al escoger un estado interno ‘z de ‘M , un estado interno z
de M y aplicar una secuencia de entradas ã = [x 1 x2 . . . xk ] a las dos máquinas, se obtendrán en cada
una de las dos las secuencias de entradas internas y de salidas.
En M las hemos denotados por:
[‘z ‘z1 ‘z2 . . . ‘zk ] = ‘ce k+1 ([x1x2 . . . xk ], ‘z) y [‘y1’y2 . . . ‘yk ] = ‘cok ([x1x2 . . . xk ], ‘z)
Definición 4.2
‘M cubre a M (denotaremos por ‘M ⊒ M ) sii para cada estado finito e de M existe un estado
‘e de ‘M tal que ξ k (ã, e) = ξ k (ã, ‘e) para todo entero positivo k y para toda secuencia de
entradas ã = [x1 x2 . . . xk ] ∈ I
M es una máquina minimal sii entre las máquinas que cubren a M no existe una que tenga
menos estados internos que M
Teorema 4.1
Definición 4.3
Sea M = [I, O, E , ce, co] una MEF y sen e, e′ ∈ E . Diremos que:
e es r−equivalente a e′ (denotado por e EQr e′) sii para toda secuencia de entradas ã = [x 1 x
2 . . . xr ] ∈ Ir ocurre que ξ r (ã, e) = ξ r (ã, e′)
G(EQ) ∪ G(EQ) = E × E
Definición de un Homomorfismo
Un homomorfismo entre semigrupos S y T es una aplicación f : S → T que cumple f(ab) = f(a)f(b)
para todo a, b ∈ S. Si, además, S y T son monoides y se cumple f(1) = 1 entonces f se llamará un
homomorfismo de monoides. Se define monomorfismo, epimorfismo e isomorfismo de la forma
habitual
Un homomorfismo es un caso particular de sustitución en el que h : Σ −→ Γ∗
Reducción de Autómatas
Estados equivalentes: Dado un autómata de estados finitos A=(Q,I,O,δ,λ), dos estados qi, qj ∈ Q
se dicen equivalentes ⇔ δ(qi,e) = δ(qj,e) ∀e ∈ I y λ(qi) =λ(qj). (β(qi,e) = β(qj,e) ∀e ∈ I) dos
estados equivalentes son indistinguibles
Ejemplos
04
Ejemplos de la vida diaria
¿SABIAS QUE?
https://www.includehelp.com/basics/finite-automata.aspx
https://brilliant.org/wiki/finite-state-machines/
http://www.cse.chalmers.se/~coquand/AUTOMATA/book.pdf
https://issuu.com/esau1409/docs/esau_sanchez_ci16669954_-_revista_digital
https://www.monografias.com/docs114/maquinas-estado/maquinas-estado.shtml