Está en la página 1de 31

MQUINAS SECUENCIALES

1.

Mquinas secuenciales. Definicin.

2.

Mquina de Mealy.

3.

Mquina de Moore.

4.

Representacin de MS
1.

Dos Tablas

2.

Una sola tabla

3.

Diagramas de transicin

5.

Extensin a palabras.

6.

MS Moore equivalente a una MS Mealy.

7.

Equivalencia de mquinas secuenciales.

8.

Minimizacin de MS

TALF. Tema 4

n 1

1. MQUINA SECUENCIAL. DEFINICIN.

Se

define mediante la quntupla M = {E , S, Q, f, g} donde:


E : alfabeto de entrada.
S : alfabeto de salida.
Q: Conjunto finito no vaco de estados
f : Funcin de transicin
f : Q x E Q , f (q,a) = q
g : Funcin de salida

Es una mquina abstracta capaz de


adoptar distintos estados del conjunto Q .

recibir informacin del entorno, palabras E

actuar sobre el entorno, palabras S

el tiempo est cuantificado, en un instante t :

solo puede estar en un estado Q

recibir un estmulo, smbolo E

generar una salida, smbolo S

conocida la entrada y el estado actual se puede predecir la


salida y el estado siguiente

TALF. Tema 4

n 2

1. MQUINA SECUENCIAL. DEFINICIN.


Cmo procesa entradas una MS?

La entrada es un conjunto de smbolos tomados del alfabeto


de entrada E, no hay lmite en tamao de la cadena.

Existe un puntero que en cada momento apunta a una


posicin de la cadena de entrada.

El autmata est siempre en un estado de Q, inicialmente se


encuentra en el estado q0.

a a a b a b a c c ... b
q0

TALF. Tema 4

n 3

1. MQUINA SECUENCIAL. DEFINICIN.


Cmo procesa entradas una MS?
En cada paso el autmata lee un smbolo de la entrada y
segn el estado en el que se encuentre, cambia de
estado (f); genera la salida correspondiente a ese
instante y pasa a leer otro smbolo.

a a a b a b a c c ... b

qq03
2i
0 1 1 1 0 1 1 0 1... 1

TALF. Tema 4

As sucesivamente hasta que se terminen de leer todos


los smbolos de la cadena de entrada.
En ese momento el autmata est en un estado qi de Q,
y ha generado la cadena en la cinta de salida.

n 4

2. MQUINA DE MEALY
Se define por la quntupla M = {E , S, Q, f, g} donde:
E : alfabeto de entrada.
S : alfabeto de salida.

Q: Conjunto finito no vaco de estados


f : Funcin de transicin
f : Q x E Q

, f (q,a) = q / a E , q Q

g : Funcin de salida
g : Q x E S

TALF. Tema 4

, g (q,a) = b / a E , b S

n 5

3. MQUINA DE MOORE
Se define por la quntupla M = {E , S, Q, f, g} donde:
E : alfabeto de entrada.
S : alfabeto de salida.

Q: Conjunto finito no vaco de estados


f : Funcin de transicin
f : Q x E Q

, f (q,a) = q / a E , q Q

g : Funcin de salida
f : Q S

TALF. Tema 4

, g (q) = b / b S

n 6

Comparacin MS

MS de Mealy

MS de Moore

g : Q x E S
g (q, a) = b

g : Q S
g (q) = b

Velocidad de transmisin de la informacin dentro de la MS

Infinita, la salida solo


depende de la entrada.

TALF. Tema 4

Finita, la salida depende


solo del estado.
MS de Moore; caso
particular de MS de
Mealy.

n 7

4. REPRESENTACIN DE LAS MS
Las mquinas secuenciales pueden representarse por:
1. Dos tablas:

Tabla de transiciones, tabla de f

Tabla de doble entrada

Tabla de salidas, tabla de g

MS de Mealy: Tabla de doble entrada

MS de Moore: Tabla de simple entrada

2. Una sola tabla de transiciones y de salidas, tabla de f y g

MS de Mealy: entrada de la tabla f(q,a)/s

MS de Moore: entrada de la tabla f(q,a)

3. Diagramas de Transicin

TALF. Tema 4

n 8

4.1. Dos tablas: TABLAS DE TRANSICIN Y DE SALIDA

Las funciones de transicin (f) son las encargadas de dirigir a la


mquina secuencial de un estado a otro. La estructura es la
misma para las mquinas de Mealy y Moore:

Filas: estados posibles de la mquina, qiQ


Columnas: smbolos del alfabeto de entrada,am E

E
Q

a1

q1

qi

am

.
qn

Tabla de Transicin f (q, a) = q

TALF. Tema 4

n 9

4.1. Dos tablas: TABLAS DE TRANSICIN Y DE SALIDA

Las funciones de salida (g) se encargan de seleccionar la salida


correspondiente para cada mquina secuencial:
En funcin del estado actual y la entrada que se reciba, en el caso
de la mquina de Mealy.
Filas: estados posibles de la mquina, qiQ
Columnas: smbolos del alfabeto de entrada,am E

En funcin del estado en que se encuentren, en el caso de la


mquina de Moore.

Filas: estados posibles de la mquina, qiQ

E
Q

a1

q1

bi

am

S
Q

q1

qn

qn

Tabla de Salida g (q, a) = b


Mquina de Mealy
TALF. Tema 4

bi

Tabla de Salida g (q) = b


Mquina de Moore
n 10

4.1. TABLAS DE TRANSICIN Y DE SALIDA. Ejemplo.


Ejemplo: Obtener la tabla de transicin y de salida para las
funciones de transicin y de salida, respectivamente, de la
siguiente mquina de Mealy:
f(q,a)=q g(q, a)=0
E
E a
b
a
b
Q
f
g
Q
f(q,b)=r g(q, b)=1
f(r,a)=r g(r, a)=0
q
q
r
q
0
1
f(r,b)=q g(r, b)=1

Ejemplo: Obtener la tabla de transicin y de salida para las


funciones de transicin y de salida, respectivamente, de la
siguiente mquina de Moore:
f(q,a)=q g(q)=0
f(q,b)=r
f(r,a)=r g(r)=1
f(r,b)=q

TALF. Tema 4

n 11

4.2. Una sola tabla: TRANSICIN Y DE SALIDA


Filas: estados posibles de la mquina, qiQ
Columnas: smbolos del alfabeto de entrada,am E

f,g

f,g
E

a1

q1

qk/bi

am

E
Q

a1

q1/bi

qi

qn

qn/bk
MS de Mealy
f (q, a) = q
g (q, a) = b

TALF. Tema 4

am

MS de Moore
f (q, a) = q
g (q) = b

n 12

4.3. DIAGRAMA DE TRANSICIN


Una MS puede ser representada a travs de un grafo dirigido.
1. Mquina secuencial de Mealy
Las mquinas de Mealy tienen tantos estados como elementos
tiene el conjunto Q y son etiquetados con el nombre de dicho
elemento. Los cambios de estados se reflejan mediante una
rama, de forma que si f(q,1)=r, dibujaremos una rama desde q
hasta r. Si adems g(q,1)=0, etiquetaremos dicha rama como
1/0.

Ejemplo: Disear el diagrama de transicin asociado a la mquina


de Mealy definida en el ejemplo del apartado anterior.

2. Mquina secuencial de Moore


Las mquinas de Moore tienen tantos estados como elementos
tiene el conjunto Q y son etiquetados con el nombre de dicho
elemento. Los cambios de estados se reflejan mediante una
rama, de forma que si f(q,1)=r,dibujaremos una rama desde q
hasta r etiquetada con 1. Si adems g(q,1)=0, etiquetaremos
el estado como r/0.

Ejemplo: Disear el diagrama de transicin asociado a la mquina


de Moore definida en el ejemplo del apartado anterior.

TALF. Tema 4

n 13

4. Ejemplo. MQUINA DE MEALY

Dos Tablas:
f(q, a) = q
f(q, b) = r
f(r, a) = r
f(r, b) = q

g(q, a) = 0
g(q, b) = 1
g(r, a) = 0
g(r, b) = 1

Una Tabla f y g:

q/0

r/1

r/0

q/1

f, g

Diagramas de transicin.

a/0

b/1

a/0

b/1
TALF. Tema 4

n 14

4. Ejemplo. MQUINA DE MOORE

Dos Tablas:
f(q, a) = q

g(q) = 0

g(r) = 1

f(q, b) = r

f(r, a) = r

f(r, b) = q

Una Tabla f y g:

f, g

q/0

r/1

Diagramas de transicin.

q/0

r/1

b
TALF. Tema 4

n 15

5. EXTENSIN A PALABRAS. MQUINA DE MEALY


Extensin a palabras: Ampliacin de la definicin de f y g
para que en lugar de aplicarse sobre letras de los
alfabetos E y S acten sobre palabras de E y de S
se define la funcin de transicin y la de salida asociada
a palabras como las funciones:

f: Q E* Q
g: Q E* S*
Para tratar palabras hay que aadir:

f(q,)=q, g(q,)=, qQ
f(q,a)=f(f(q,a),)
g(q,a)= g(q,a)g(f(q,a),)
E* aE y qQ

TALF. Tema 4

n 16

5. EXTENSIN A PALABRAS. MQUINA DE MOORE


Extensin a palabras: Ampliacin de la definicin de f y g
para que en lugar de aplicarse sobre letras de los
alfabetos E y S acten sobre palabras de E y de S
se define la funcin de transicin y la de salida asociada
a palabras como las funciones:

f: Q E* Q
g: Q E* S*

con

g: Q S

Para tratar palabras hay que aadir:

f(q,)=q, g(q,)=, qQ
f(q,a)=f(f(q,a),)
g(q,a)= g(q,a)g(f(q,a),)
E* aE y qQ

TALF. Tema 4

n 17

5. EXTENSIN A PALABRAS. FUNCIN RESPUESTA.


Con El objetivo de unificar los dos tipos de MS se define
la funcin respuesta a partir de las funciones de salida:

h(q,x), qQ, x E*
MS de Mealy: g (q,x)
MS de Moore: g(q,x)

Teoremas
|h(q,x)|=|x| qQ, xE*

f (q, xy) = f (f (q, x), y) qQ, x,yE*


h(q,xy)=h(q,x) h(f (q, x),y) qQ, x,yE*

TALF. Tema 4

n 18

5. Mquinas Secuenciales. Definicin.


Mquina Secuencial; Dispositivo de control
Con acceso a una cinta de entrada.
Con acceso a una cinta de salida
En cada unidad de tiempo puede realizar una
operacin de entrada y una de salida sobre un
smbolo del alfabeto de entrada y de salida
El dispositivo puede tomar una serie de estados
La palabra xE* est en la cinta de entrada con la
cabeza de lectura sobre el primer smbolo
La cinta de salida est vaca con la cabeza de
escritura dispuesta a escribir el primer smbolo
Sea q el estado inicial del dispositivo de control
Al leer la cinta de entrada, el dispositivo se para
El estado final ser f (q,x)
En la cinta de salida estar grabada la palabra h(q,x)
TALF. Tema 4

n 19

5. Simulacin algortmica de una MS

Entrada: cadena de entrada x que termina con un carcter


fin de cadena o fin de archivo (FDC).
Salida: cadena de salida y
Mtodo: aplicar f al estado al cual hay una transicin desde
el estado q con un carcter de entrada c y generar h(q,x)

Funcin traducir()
q=q0
c= leer_carcter()
Mientras c != FDC
q=f(q,c)
s=h(q,c)
// escribir resultados(s,.)
c= leer_carcter()
fmientras

ffuncin
TALF. Tema 4

n 20

6. MS Moore equivalente a una MS Mealy


Dada M = {E , S, Q, f, g} siempre se puede
definir MMO = {E , S, QMO, fMO, gMO} como:
QMO : dividir cada qQ en tantos qs como salidas
puedan asociarse a q
QMO ={qs / qQ, eE} f(q,e)=q, g(q,e)=s
fMO: fMO(qs,e)= [fMO(qs,e)] g(q,e)
gMO: gMO(qs,e)= g(q,e)

A cada qQ se le asocia una sola salida, s con la


funcin de salida:
uMO : QMO S / gMO(qs,e)= uMO(fMO(qs,e))

TALF. Tema 4

n 21

6. MS Moore equivalente a una MS Mealy. Ejemplo1.


Ejemplo1: detector de paridad
Mealy
E

f, g

q/0

r/1

r/1

q/0

0/0

0/1
1/1

r
1/0

Moore
Q

f, g

TALF. Tema 4

q/0

r/1

q/0

r/1

n 22

6. MS Moore equivalente a una MS Mealy. Ejemplo2.

Ejemplo2: Sumador serie


Mealy

00/0

00

01

10

11

q/0

q/1

q/1

r/0

q/1

r/0

r/0

r/1

01/0

01/1

10/1

11/1

Moore

10

q0/0
11

TALF. Tema 4

10

00

01

r0/0

q1/1

01, 10

r1/1

00

01

10

11

q0/0

q0

q1

q1

r0

q1/1

q0

q1

q1

r0

r0/0

q1

r0

r0

r1

r1/1

q1

r0

r0

r1

01

00
11

10

r
00/1

01
00

10/0

11/0

11

11

n 23

7. Equivalencias de mquinas secuenciales.

Dadas las mismas palabras de entrada generan la misma salida

Relaciones de Equivalencia:

Equivalencia entre estados


Verificar si dos estados de la misma MS son equivalentes:
para todas las entradas, en los estados, estos realizan
lasmismas salidas
Definicin
p,q Q son equivalentes pEq si cumplen:
h(p,x) = h(q,x) xE
Lemas
1. Si p,q Q , xE , pEq f(p,x)Ef(q,x)
2. qEq q Q
Equivalencia entre estados de longitud n: pEnq
Verificar si dos estados de la misma MS son equivalentes en
longitud n: para todas las entradas de longitud n, en los
estados, estos realizan las mismas salidas.
Definicin
p,q Q son equivalentes de longitud n pEnq si cumplen:
h(p,x) = h(q,x) con |x|=n , x n*

TALF. Tema 4

n 24

7. Equivalencias de mquinas secuenciales.


Equivalencia entre Mquinas Secuenciales (M1EM2)

Verificar si dos Mquinas Secuenciales son equivalentes:


para todas las entradas posibles realizan las mismas salidas

Sean:

M1=(E, S, Q1, f1, g1), M2=(E, S, Q2, f2, g2)


h1, h2, pQ1 y q Q2

p y q son equivalentes, pEq


si h1(p,x)= h2(q,x) x E*
Definicin:

M1EM2

TALF. Tema 4

p Q1 M1 q Q2 M2 / pEq

q Q2 M2 p Q1 M1 / qEp

n 25

7. Equivalencias de mquinas secuenciales.

Equivalencia de Mquinas Secuenciales

Se cumple:

pEp reflexiva
pEq qEp simtrica
pEq & qEr pEr transitiva

Es una relacin de equivalencia se define


el conjunto sobre Q, conjunto cociente Q/En

La equivalencia entre estados es una relacin de


equivalencia, luego existe un conjunto, conjunto cociente,
Q/E, de clases de equivalencia, subconjuntos de estados que
particiona al conjunto de estados en los estados

pertenecientes a una misma clase.

TALF. Tema 4

n 26

7. Equivalencias de mquinas secuenciales.


Algoritmo para construir el conjunto cociente Q/En
1. Q/E1 se construye aplicando la regla:
p y q estn en la misma clase si y solo si
h(p,a)=h(q,a) a E

2. Sea Q/Ei={c1, c2, ..., cj}. Q/Ei+1 se construye:


p y q estn en la misma clase si y solo si p,qck y aE
se verifica que f (p,a) y f (q,a) estn en la misma clase cm
de Q/Ei+1

3. Si Q/Ei=Q/Ei+1 entonces Q/Ei=Q/E , en caso contrario


aplicar el paso 2. partiendo de Q/Ei+1

TALF. Tema 4

n 27

8. Minimizacin de Mquinas Secuenciales

Dada la MS
M=(E, S, Q, f, g)

existe una nica MS equivalente mnima


(Mquina del conjunto cociente)
Mm=(E, S, Qm, fm, gm)

Donde

Qm=Q/E
f m(c,a)=cm si qc, f (q,a) cm donde c y cm Q/E
h m(c,a)=h (q,a) q c donde c Q/E

Teorema
Entre todas las mquinas equivalentes a una dada existe una
nica (salvo isomorfismos) con el nmero mnimo de estados.
Esta mquina no contiene dos estados equivalentes
Esta mquina mnima es la del conjunto cociente de la
mquina dada
TALF. Tema 4

n 28

8. Minimizacin de Mquinas Secuenciales. Ejemplo.


Ejemplo: M=({0,1},{a,b},{q0,q1,q2,q3}, f, g)
f

q0

q3

q2

q0

q1

q3

q1

q1

q2

q0

q1

q2

q3

q0

q2

q3

q0
1/b

0/a

0/b

q2
TALF. Tema 4

0/a

q3

1/b

1/a

0/a

q1

1/b

n 29

8. Minimizacin de Mquinas Secuenciales. Ejemplo.


Mquina del conjunto cociente

1. Conjunto inicial
Q/E1=({q0,q1,q3},{q2})
2. Q/Ei
2.1. Q/E2=({q0,q3},{q1}, {q2})
3. Q/E2 Q/E1

paso 2

2.2. Q/E3=({q0,q3},{q1}, {q2})


3. Q/E3= Q/E2 = Q/E

TALF. Tema 4

q0

q1

q2

q3

q0

q3

q2

q1

q3

q1

q2

q0

q1

q3

q0

q2

n 30

8. Minimizacin de Mquinas Secuenciales. Ejemplo.

Mqina mnima equivalente: Mm=({0,1},{a,b},{c0,c1,c2},fm,gm)


Qm=(c0={q0,q3}, c1={q1}, c2={q2})

fm

gm

q0

c0

c0

c2

c0

q1

c1

c0

c1

c1

q2

c2

c0

c1

c2

q3

q0

q3

q2

q1

q3

q1

q2

q0

q1

q3

q0

q2

TALF. Tema 4

0/a

c0
0/b

c2

0/a
1/b

1/a

c1

1/b

n 31

También podría gustarte