Está en la página 1de 16

TEMA II: INTRODUCCIN A LA TEORA DE AUTMATAS

FINITOS
Haciendo una comparacin con la rama combinacional de Electrnica Digital, el lgebra de Boole era la herramienta matemtica para poder llevar a cabo la reduccin de las frmulas lgicas, y por lo tanto, del circuito de conmutacin.
En el caso de los circuitos secuenciales, esta herramienta no nos basta debido a la dependencia temporal. Por lo tanto, necesitamos otra herramienta para minimizar la dependencia
temporal de estos circuitos; esta herramienta es la teora de autmatas finitos.

1. Introduccin. Definicin.
En primer lugar, vamos a definir lo que se entiende por autmata finito. Una posible definicin de autmata finito es la siguiente:
Un autmata finito es un vector de tres elementos
M = (I,S,, F)
donde I es el conjunto finito de entradas, S es el conjunto finito de estados (no
vaco), es la funcin de transicin de estados y F es el conjunto finito de
estados finales (incluidos en S).
El hecho de que todos los conjuntos sean finitos, le otorga a este elemento el atributo de finito.
Tambin se puede desprender de la definicin que un autmata finito es un tipo especial de
mquina secuencial, en la cual no existen seales de salida como tal sino que slo hay seales
de entrada y estado, como suceda en la mquina de Moore.
Debido a este motivo, las mquinas secuenciales cumplen todos los axiomas de los autmatas finitos. Siendo sta la razn por la cual empezaremos el estudio de la teora desarrollada
alrededor de los autmatas finitos.
Al igual que en las mquinas secuenciales, la representacin de los autmatas finitos
puede llevarse a cabo de dos formas diferentes: mediante un diagrama de estados; o mediante
una tabla de estados. De estas dos representaciones, la ms intuitiva para una traduccin partiendo de unas especificaciones de diseo es el diagrama de estados. No obstante, el trabajo
con los diagramas de estado no es sencillo ni intuitivo. Por lo tanto, para un posterior procesado utilizaremos la tabla de estados.

10

Dpto. Ingeniera Electrnica de Sistemas Informticos y Automtica

2. Diagramas de Estado.
En los diagramas de estado podemos encontrar dos elementos: estados y transiciones.
Los estados son las letras o smbolos enmarcados (dentro de un crculo generalmente). En
cambio, las transiciones son arcos dirigidos que llevan asociadas una/s etiquetas.
Los estados se pueden definir como las posibles situaciones a las que puede llegar el
autmata que estemos describiendo. Dentro de estos estados podemos distinguir entre estados
estables y estados inestables. Cuando existe alguna transicin para la cual se llega al mismo
estado desde el que se parte, se dice que es un estado estable. Mientras que si no existe ninguna transicin que cumpla la condicin anterior, se dice que es un estado inestable. En el
caso de la mquina de ventas de refresco, los posibles estados pueden ser:
No hay dinero en el interior de la mquina
Existe el dinero suficiente para sacar un refresco
En el interior de la mquina estn cada una de las cantidades permitidas. Por ejemplo
si slo se admiten monedas de 10, 20 y 50 c., el refresco cuesta 60 c. y no se devuelve
dinero, las cantidades pueden ser 10, 20, 30, 40, 50 y 60 c.
Las transiciones correspondern a los eventos en las entradas que producirn los cambios
de estado en el sentido de la flecha del arco. El cambio de estado se producir si la condicin
de entrada coincide con la etiqueta asociada a dicha transicin. De nuevo, en el caso de la
mquina de refresco, las posibles condiciones de entrada podran ser:
Introducir las diferentes monedas permitidas: 10, 20 y 50 c.
Pulsar el botn para obtener el refresco.
As pues, una posible parte del diagrama del autmata se puede ver en la figura 2.1:

10 c.

0 c.

10 c.

Figura 2.1.- Porcin del diagrama de estado correspondiente a la mquina de refresco.


Dicha porcin del diagrama se leera del siguiente modo:
... si no hay dinero almacenado en la mquina (estado de 0c.) e introducimos
una moneda de 10 c. (evento), pasaremos a la situacin de tener almacenado
10 c. (estado de 10c.)...
Si realizamos la descripcin a travs de la tabla de estado, la porcin anterior del
diagrama se mostrara en la tabla 2.1.

11

TEMA II: INTRODUCCIN A LA TEORA DE AUTMATAS FINITOS


10 c.
10 c.

0 c.

Tabla 2.1. Porcin de la tabla de estado correspondiente a la mquina de refresco.


Por lo tanto, un posible diagrama de estado para la mquina de refresco se muestra en la
figura 2.2. En este diagrama distinguimos 8 situaciones posibles: cada una de las cantidades
que se pueden almacenar segn las monedas aceptadas (0, 10, 20, 30, 40, 50 y 60 c.); y una
situacin en la que ya es posible dar el refresco. Los eventos involucrados en dicha mquina
sern la insercin de cada una de las monedas (10, 20 y 50 c.), y pulsar el botn de refresco.
Las transiciones de estado son las siguientes:
Cuando introduzcamos una moneda, pasaremos al estado con la cantidad actualizada;
pero en el caso de que sobrepasemos la cantidad del refresco, nos quedaremos en los
60 c. ya que no se devuelve cambio y no es necesario almacenar dicha cantidad superior.
Cuando pulsemos el botn de refresco, B, no suceder nada a menos que nos encontremos en el estado de 60 c., en cuyo caso se dar el refresco.
B
B
50 c.
Refresco

10 c.

0 c.

B
20 c.
50 c.

10 c.

20 c.

50 c.
10 c.
20 c.
50 c.

10 c.

10 c.

20 c.
50 c.
50 c.

60 c.

20 c.
20 c.

10 c.
10 c.
20 c.
50 c.

20 c.
50 c.

30 c.

50 c.

20 c.

B
10 c.

40 c.
10 c.
B

Figura 2.2.- Diagrama de estado correspondiente a la mquina de refresco.

12

Dpto. Ingeniera Electrnica de Sistemas Informticos y Automtica

3. Teoremas y Definiciones.
Como nuestro inters est centrado en el anlisis y diseo, vamos a orientar los teoremas
y definiciones de la teora de autmatas finitos hacia los sistemas secuenciales. Una vez realizada esta aclaracin, en esta teora encontramos las siguientes definiciones:
Equivalencia: Una mquina M es equivalente a otra M*, si para cualquier
secuencia de entrada es posible encontrar algn estado inicial tal que la
secuencia de salida sea la misma. Esta relacin es denotada por M = M*.
Compatibilidad: Una mquina M es compatible con otra M*, si para cualquier
secuencia de entrada es posible encontrar un estado inicial tal que la secuencia de salida sea la misma, siempre y cuando sta est especificada. Esta
relacin se denota por M ~ M*.
Mquina completamente especificada: es una mquina en la cual no existen ningn estado total para los que no est especificada la funcin de
prximo estado y/o de salida. En caso contrario, se dice que la mquina est
incompletamente especificada.
A continuacin vamos a poner ejemplos de mquinas completas e incompletas. una primera mquina podra ser la siguiente:
A travs de una lnea serie va llegando bits, se desea realizar una mquina que indique la llegada de la secuencia 1 -> 0 -> 1.
En esta mquina, la seal de entrada es la lnea serie mencionada anteriormente, con las posibles combinaciones de 1 y 0. Como ambas combinaciones son posibles, no podemos
encontrar ninguna situacin de no especificacin. Por lo tanto, la mquina ser completamente
especificada, ya que tanto la salida como los prximos estados debern estar especificados para
todas las secuencias de entradas.
Una segunda mquina podra ser la descrita a continuacin:
La figura 2.3 muestra el esquema de una mquina trituradora. La mquina es cuestin debe
gobernar los motores de trituracin segn las siguientes especificaciones: cuando no exista
nada que triturar, los motores deben estar apagados; cuando la mquina est llena, ambos
motores deben estar funcionando; cuando la mquina est medio vaca, slo debe funcionar
un motor, y en particular aquel que en el estado anterior estuviera apagado (con el fin de
garantizar una mayor vida activa de ambos motores).

S1
S2
P
M1

M2

Figura 2.3.- Esquema de una mquina trituradora.

TEMA II: INTRODUCCIN A LA TEORA DE AUTMATAS FINITOS

13

Esta mquina es un ejemplo claro de mquina incompleta ya que los sensores de presencia S1
y S2 nunca pueden tener la combinacin S1 S2 = 1 0, ya que es fsicamente imposible. Por lo
tanto, para esta combinacin de entrada, ni la salida ni el prximo estado estarn especificado
porque no importar cuales sean al no llegar nunca dicha combinacin. No obstante, podemos
encontrarnos mquinas en los que la salida s estar especificada pero el prximo estado no, y
viceversa.
Segn las definiciones de compatibilidad y de equivalencia, se comprueba el siguiente
teorema:
Teorema 1. Se verifica que si las mquinas M y M* estn especificadas de forma:
completa: M = M* <=> M ~ M*
incompleta: M = M* => M ~ M*
Demostracin.- De las definiciones de equivalencia y compatibilidad se desprende que la primera engloba a la segunda por lo que la direccin hacia la derecha de las implicaciones
queda demostrada. En cuanto a la direccin de la izquierda, slo se puede verificar a
priori cuando las dos definiciones sean iguales, caso que slo se puede dar cuando se
trata de mquinas completamente especificadas.
Cubrimiento. Una mquina M* cubre a otra M si cualquier secuencia de
entrada aplicada a M* produce la misma secuencia de salida que si se aplica
a M, siempre y cuando M est completamente especificada. Esta relacin es
denotada por M M*.
Estados compatibles: Dos estados internos Si y Sj se denominan compatibles, si para cualquier secuencia de entrada, tomando ambos estados como
iniciales, las dos secuencias de salida correspondientes resultan idnticas
siempre que ambos estados de salida estn completamente especificados.
Esta relacin es denotada por Si ~ Sj. En caso contrario, los estados se denominan incompatibles.
La definicin de compatibilidad se reduce a comprobar que tienen el mismo
valor de salida y sus prximos estados son compatibles para cualquier condicin de entrada, ya que la aplicacin de la definicin de forma directa es inviable.
Clase de compatibilidad o clases o compatibles: Consiste en un conjunto
de estados, los cuales son compatibles dos a dos.
Clase mximal o mximo compatible: Ser aquella clase que no es un subconjunto de ninguna otra clase, y por lo tanto no est contenida totalmente en
ninguna otra.
Coleccin de clases cerrada: Es un conjunto de clases, en el cual los prximos estados correspondientes a cada clase estn contenidos al menos en
una clase de la coleccin, para cualquier secuencia de entradas.
Cubrimiento de una tabla de estados: Se trata de una coleccin de clases
que cubre a una tabla de estados, si cada estado interno de la tabla est contenido en una clase de la coleccin como mnimo.

14

Dpto. Ingeniera Electrnica de Sistemas Informticos y Automtica

4. Minimizacin del Nmero de Estados.


El nmero de estados es el conjunto de situaciones que es necesario almacenar. Por lo
tanto, nuestro inters en la teora de autmatas finitos se centra en la reduccin del nmero de
estados. De esta forma obtendremos un diseo mnimo en cuanto a elementos de memoria, que
son los elementos crticos en el diseo semicustom.
El problema de la minimizacin del nmero de estados para una mquina M es equivalente a obtener una coleccin cerrada de clases con un nmero mnimo que cubra su tabla de
estados. A esta coleccin la denominaremos cubrimiento mnimo, y los estados internos de la
mquina reducida sern las clases de dicho cubrimiento.
Llegado este momento, debemos preguntar si la minimizacin de una mquina incompletamente especificada puede reducirse al de una mquina completamente especificada. Para
ello podramos suponer que la mquina mnima sera la de una mquina completa dndole un
determinado valor a las inespecificaciones.
Consideremos como ejemplo la mquina de Moore especificada por la tabla de estados
mostrada en la tabla 2.2:
a

A
A
B
0
B
B
C
C
A
C
1
Tabla 2.2. Ejemplo de mquina incompletamente especificada.
Al utilizar todas las combinaciones de salida del estado B, nos quedaran las tablas de estado
mostradas en la tabla 2.3 y tabla 2.4:
a

A
A
B
0
B
B
C
0
C
A
C
1
Tabla 2.3. Mquina completamente especificada obtenida a partir del ejemplo de la tabla 2.2.
a

A
A
B
0
B
B
C
1
C
A
C
1
Tabla 2.4. Mquina completamente especificada obtenida a partir del ejemplo de la tabla 2.2.
En la tabla 2.3 se verifica que los tres estados son incompatibles por las siguientes razones:
Los estados A y C son incompatibles por tener diferentes valores de salida.
Los estados B y C son incompatibles por tener diferentes valores de salida.
Los estados A y B son incompatibles ya que, a pesar de tener el mismo valor de
salida, los prximos estados de la combinacin de entrada b (B - C) son incompatibles.

TEMA II: INTRODUCCIN A LA TEORA DE AUTMATAS FINITOS

15

En la tabla 2.4 se verifica que los tres estados son incompatibles por las siguientes razones:
Los estados A y C son incompatibles por tener diferentes valores de salida.
Los estados A y B son incompatibles por tener diferentes valores de salida.
Los estados B y C son incompatibles ya que, a pesar de tener el mismo valor de salida,
los prximos estados de la combinacin de entrada b (A - B) son incompatibles.
No obstante, en la tabla 2.4 se verifica que los estados A - B y B - C son compatibles por las
siguientes razones:
Los estados A y C son incompatibles por tener diferentes valores de salida.
Los estados A y B sern compatibles si lo son los estados B y C.
Los estados B y C sern compatibles si lo son los estados A y B.
Como no se han encontrados incongruencias en la compatibilidad de los estados A y
B, y B y C, ambas parejas se consideran compatibles.
Por lo tanto, si elegimos dos nuevos estados y como los correspondientes a los estados AB
y BC, nos encontramos ante una mquina equivalente a la original; y por tener un menor
nmero de estados, una mquina ms eficiente (que para este caso particular ser mnima). La
tabla de estados correspondiente a esta nueva mquina ser la mostrada en la tabla 2.5:
a

1
Tabla 2.5. Mquina mnima del ejemplo de la tabla 2.2.
Por lo tanto, llegamos a la conclusin de que debemos tratar de forma diferente a las
mquinas completamente e incompletamente especificadas.
4.1. Mquinas completamente especificadas.
En este tipo de mquinas se cumplen los siguientes teoremas.
Teorema 2. La relacin de compatibilidad se denomina equivalencia, donde cada clase de
compatibilidad representa una clase de equivalencia.
Demostracin.- Utilizando las definiciones de compatibilidad y equivalencia, sabemos que la
nica diferencia existente radica en la necesidad de que las salidas y prximos estados
sean completamente especificados en el primer caso. Como en las mquinas que estamos
tratando, esta restriccin se cumple para todos los estados y secuencias de entrada,
ambas definiciones coinciden.
Teorema 3. El conjunto de mximos compatibles es el cubrimiento mnimo cerrado.
Demostracin.- En primer lugar, en el conjunto de mximos compatibles se encuentran representados todos los estados de la mquina en cuestin, por lo cual este conjunto ser un
cubrimiento de dicha mquina. Adems, por la definicin de mximo compatible sabemos que no sern ningn subconjunto de otro mximo, por lo cual todos ellos debern
estar representados en la mquina. Por lo tanto, el nmero mnimo de clases necesarias
ser el formado por todos los mximos compatibles.

16

Dpto. Ingeniera Electrnica de Sistemas Informticos y Automtica

Por lo tanto, la reduccin del nmero de estados consistir en la obtencin de los mximos compatibles correspondientes a la mquina considerada. Para llegar a este fin, primero
tenemos que obtener los estados compatibles, para despus ver cules de ellos forman los diferentes mximos compatibles de la mquina secuencial.
4.1.1. Obtencin de los estados compatibles
Para obtener los estados compatibles, un posible mtodo es el denominado como tabla
de pares compatibles. Esta tabla tiene la forma mostrada en la figura 2.4, donde S1 - Sn son
los estados de nuestra mquina secuencial. La tabla se rellena de la siguiente forma:
Cuando los estados son incompatibles, ya que existe combinaciones de entrada para
las que el valor de las seales de salida es diferente, se identifica con un aspa (X).
Cuando los estados son compatibles, ya que para todas las combinaciones de entrada
tanto el valor de las salidas como los prximos estados son iguales, se identifica con
una onda (~).
Cuando no se cumple ninguna de las condiciones anteriores, es decir, todas las combinaciones de entrada tienen el mismo valor de salida pero diferentes prximos estados,
se identifica con la pareja de los prximos estados, ya que estos nos determinarn si
realmente existe compatibilidad o no.

S1
S2
S3

Sn
Figura 2.4.- Apariencia de la tabla de pares compatibles.
Una vez completada la tabla, determinaremos la compatibilidad de todos los estados siguiendo
las siguientes reglas (que slo tendrn valor para el tercer punto):
En el caso de que los prximos estados sean incompatibles, los estados presentes tambin sern incompatibles.
En el caso de que los prximos estados sean compatibles, los estados presentes tambin sern compatibles.
En el caso de que los prximos estados sean los estados presentes, stos sern compatibles.
Una vez que hayamos tachado todos los estados incompatibles, el resto se considerarn compatibles.
Por ejemplo, si consideramos la mquina representada por el diagrama de estados mostrado en la figura 2.5, junto con su tabla de estados. En ella podemos distinguir un total de siete

17

TEMA II: INTRODUCCIN A LA TEORA DE AUTMATAS FINITOS

estados (desde el estado A al estado G), una seal de entrada y una seal de salida. La tabla de
pares compatibles tambin es mostrada en la misma figura.
0,0
A

1,1

0,0
1,0

C
1,0

0,0
B

0,0

1,0

1,0

0,1
1,0
D

A, 0

C, 1

A, 0

C, 1

F, 0

G, 0

E, 1

B, 0

E
F

D, 1

A, 0

C, 0

F, 0

G, 0

C, 0

1,1

0,0

E
0,1

A
~

GF

AB
x

GF

E
x
x

F
FC

Figura 2.5.- Diagrama de estados del ejemplo de la mquina completamente especificada.

Los nicos estados sobre los que se debe prestar una especial atencin (no se ha podido
determinar en una primera pasada su compatibilidad) son los pares C-F, C-G, D-E y F-G. Si
empezamos por el par D-E, observamos sus prximos estados: D-E para x=0 (que por ser el
mismo par no aparece en la tabla), y A-B para x=1; luego podemos afirmar que este par es
compatible ya que los prximos estados para todas las combinaciones de entrada son compatibles. En el caso de los pares C-F, C-G y F-G, vemos que la compatibilidad de un par depende
de la de otro formando un ciclo como podemos ver a continuacin:
C~F => G~F => F~C
C~G => G~F => F~C => G~F
Como no se ha llegado a ninguna condicin de incompatibilidad, puede ser cierto ambas condiciones: que todos los estados sean incompatibles o que sean compatibles. Pero como nuestro
inters est en la reduccin del nmero de estados para garantizar la minimizacin del circuito
secuencial equivalente, siempre se considerar que todos son compatibles. Por lo tanto, los
pares compatibles que encontramos en la mquina de partida son los siguientes: A~B, D~E,
C~F, C~G y F~G.

18

Dpto. Ingeniera Electrnica de Sistemas Informticos y Automtica

4.1.2. Obtencin de los mximos compatibles


Una vez obtenidos los pares compatibles, el siguiente paso consiste en determinar los
mximos compatibles. Para ello disponemos de dos mtodos diferentes: un mtodo tabular
basado en los estados compatibles; y un mtodo algebraico basado en los pares incompatibles.
El mtodo tabular est basada en una tabla con tres columnas: una primera en la que
colocamos los estados; otra en la que colocamos los estados compatibles con el de la primera
columna; y un tercero donde se agrupan los estados compatibles dos a dos, por lo que la ltima
celda de esta columna contendr al cubrimiento cerrado de mximos compatibles. Para evitar
la duplicidad, en la columna de estados compatibles slo se considerarn los estados ya vistos,
es decir, si empezamos por el ltimo estado de la tabla de pares compatibles, la compatibilidad
slo se considerar con los estados de la columna del estado en cuestin. Si continuamos con el
ejemplo anterior, obtendramos la tabla 2.6.
Estados
CEC
LC
G
G
F
G
FG
E
E, FG
D
E
DE, FG
C
F,G
DE, CFG
B
B, DE, CFG
A
B
AB, DE, CFG
Tabla 2.6. Tabla de la lista de compatibles del ejemplo de la figura 2.5.
Por lo tanto, la lista de mximos compatibles para el ejemplo ser: AB, DE, CFG
En el segundo mtodo, se obtiene una funcin de conmutacin como expresin de producto de sumas tal que cada trmino suma es la suma de los pares incompatibles. A partir de
esta frmula se obtiene una expresin mnima en forma de suma de productos utilizando los
teoremas del lgebra de Boole, entre los que tendrn una especial importancia los teoremas de
absorcin y de idempotencia:
a+a=a
aa=a
(a + b)(a + c)= a + bc
a + ab = a
Una vez obtenida la expresin mnima en suma de productos, se verifica que por cada trmino
producto habr un mximo compatible, que estar formado por los estados que no aparezcan
en dicho trmino. Si aplicamos este mtodo a la mquina anterior, para la cual los pares incompatibles eran: A-C, A-D, A-E, A-F, A-G, B-C, B-D, B-E, B-F, B-G, C-D, C-E, D-F, D-G, E-F,
E-G; la funcin a minimizar es la siguiente:
F=(A+C)(A+D)(A+E)(A+F)(A+G)(B+C)(B+D)(B+E)(B+F)(B+G)(C+D)
(C+E)(D+F)(D+G)(E+F)(E+G)
F = (A+CDEFG)(B+CDEFG)(C+DE)(D+FG)(E+FG)
F = (AB+CDEFG)(C+DE)(DE+FG) = (AB+CDEFG)(CFG+DE)

TEMA II: INTRODUCCIN A LA TEORA DE AUTMATAS FINITOS

19

F = ABCFG + ABDE + CDEFG


Una vez tenemos todos los trminos productos, habr tantos mximos compatibles como trminos productos. Estos mximos compatibles estarn formados por los estados que faltan en
dichos trminos.
Del trmino ABDE, obtenemos el mximo compatible CFG.
Del trmino ABCFG, obtenemos el mximo compatible DE.
Del trmino CDEFG, obtenemos el mximo compatible AB.
4.1.3. Obtencin de la mquina mnima
El proceso finaliza obteniendo la tabla mnima. sta se obtiene de la siguiente forma:
Asociando a cada mximo compatible un estado.
Redefiniendo los prximos estados en el nuevo alfabeto.
As para nuestro ejemplo, la tabla mnima de estado sera la mostrada en la tabla 2.7:
x=0

x=1

,0
,1

,1
,0

,0
,0
Tabla 2.7. Tabla de estados de la mquina mnima del ejemplo de la figura 2.5.
que se corresponder con el siguiente diagrama de estados:
0,0

1,1

1,0

0,1

,0

Figura 2.6.- Diagrama de estados de la mquina mnima del ejemplo de la figura 2.5.

4.2. Mquinas incompletamente especificadas (Apndice).


Ya se ha discutido que este tipo de mquinas debe tener un tratamiento diferente a las
mquinas completas. Este hecho viene motivado principalmente porque podemos encontrar
que un estado es compatible con otros dos que no lo sean entre s. En este tipo de mquinas,
encontramos las siguientes definiciones:
Sea C un compatible y Ci el compatible formado por los prximos estados
de los estados C para una condicin de entrada Xi. Entonces se dice que
Ci es implicado por C.

20

Dpto. Ingeniera Electrnica de Sistemas Informticos y Automtica


Para cualquier compatible C, el conjunto de compatibles implicados, P, es
el conjunto de todos los compatibles Ci de implicados por C tal que:
Ci tenga ms de un elemento
Ci C
Ci Cj si Cj P
Un compatible C se dice excluido por otro C si:
C C
P P
Un compatible prima es aquel que no es excluido por ningn otro compatible. Sern equivalentes a los mximos compatibles en el caso de mquinas
completamente especificadas.

Con esta ltima definicin concuerdan todos los mximos compatibles. Adems, se verifica
que un compatible que implique un conjunto de compatibles vaco excluye a todos sus subcompatibles.
Teorema 4. Existe al menos un cubrimiento mnimo cuyos miembros son compatibles primos.
Demostracin.- En el caso de las mquinas completamente especificadas, el cubrimiento
mnimo era aquel formado por los mximos compatibles. Y como en el cubrimiento formado por los compatibles primas, se encontrarn todos los mximos compatibles; existir un cubrimiento mnimo formado por compatibles primas.
De esta forma, debemos hallar todos los compatibles primas, de los cuales se eligirn los
que estarn en el cubrimiento mnimo. La seleccin debe satisfacer tres condiciones:
Las compatibles seleccionados deben cubrir todos los estados internos.
El conjunto de compatibles seleccionado debe ser cerrado.
El nmero de compatibles debe ser mnimo.
Por lo tanto, la reduccin de la tabla de estados correspondiente a una mquina incompletamente especificada conlleva los siguientes pasos:
En primer lugar debemos obtener las clases primas. Para lo cual descomponemos los
mximos compatibles en subclases, y despus verificaremos cules son primas.
Las lista inicial de clases primas se constituye con los mximos compatibles mayores.
Despus se aaden a la lista los siguientes mximos compatibles, inferiores en
tamao, que no sean excluidos por ningn mximo existente ya en la lista.
El proceso se repite hasta que ya no queden compatibles.
Vamos a ver como ejemplo la reduccin de la mquina mostrada en la tabla 2.8. En esta
tabla encontramos un total de ocho estados posibles con siete condiciones de entrada. Las inespecificaciones son tales que pueden estar inespecificadas la salida, el prximo estado o ambos.

21

TEMA II: INTRODUCCIN A LA TEORA DE AUTMATAS FINITOS


x1
a
b
c
d
e
f
g
h

x2

x3

x4

x5

x6

x7

a,-,d,0
e,1
b,0
a,-,b,0
d,1
a,-,a,a,1
-,b,0
d,1
a,1
-,-,-,g,0
-,e,-,b,b,0
-,a,b,e,a,-,b,e,a,1
b,0
c,-,1
h,1
f,1
g,0
-,-,c,1
-,e,1
-,g,0
f,0
a,1
e,0
d,1
b,0
b,e,a,1
Tabla 2.8. Ejemplo de minimizacin de una mquina incompleta.

La obtencin de los mximos compatibles se realiza de la misma forma que en el caso de


las mquinas completas. Es decir, en primer lugar hallamos la tabla de pares compatibles:
A
B

AD
x

C
DE
AG

AB
AD

DE
AB
DE
AB

DC

CE
BF
EG

DC
GF

EC
BE
AF

EH

AB
AD

BE

D
E
F
G
x

Figura 2.7.- Tabla de pares compatibles del ejemplo de la tabla 2.8.


seguidamente hallamos la lista de mximos compatibles:
Estados

CEC

LC
H

--

H, G

H, FG

EH, FG

E, H

DEH, FG

D, F, G

CD, DEH, CFG

C, D, E

BCD, BDE, DEH, CFG

B, D, E, G

ABDE, BCD, DEH, CFG, AG

22

Dpto. Ingeniera Electrnica de Sistemas Informticos y Automtica

Es decir, los mximos compatibles de dicha mquina son MC = {abde, ag, bcd, cfg, deh}. Por
lo tanto,
la lista de compatibles primas empezar por abde, cuyo conjunto de implicantes
ser P = {-}. Esto implica que dicho compatibles excluye a todas sus subclases.
Aadiremos los mximos compatibles en orden (de tres estados) y las combinaciones de tres estados de los compatibles superiores cuyas lista de implicados no sea
el conjunto vaco, por lo que la lista quedar:
LC = {abde, bcd, cfg, deh}
Pbcd = {de, ab, ag}
Pcfg = {dc, eh}
Pdeh = {ab, ad}
A continuacin, aadiremos los compatibles de dos estados y las combinaciones de
dos estados de los compatibles superiores cuyas lista de implicados no sea el conjunto vaco:
LC = {abde, bcd, cfg, deh, ag, bc, bd, cd, cf, cg, fg, de, dh, eh}
Pag = {-}
Pbc = {-} Pbd = {de, ag} Pcd = {de, ab}
Pcf = {cd} Pcg = {cd, fg} Pfg = {eh}
Pde = {-} Pdh = {-} Peh = {ab, ad}
Por ltimo aadiremos los estados (compatibles de un solo estado) que no estn en
compatibles superiores cuyas listas de implicados sean el conjunto vaco.
LC = {abde, bcd, cfg, deh, ag, bc, bd, cd, cf, cg, fg, de, dh, eh, f}
De todos estos compatibles, vemos que quedan excluidos bd (por abde), de (por abde) y eh por
(deh). Adems los compatibles ag, bc, de y dh excluyen a todas sus subclases ya que tienen un
conjunto de implicantes vaco. Por lo tanto, el conjunto de clases primas sera el siguiente:
LC = {abde, bcd, cfg, deh, ag, bc, cd, cf, cg, fg, dh, f}
Una vez que hemos obtenido todos los compatibles primas, debemos seleccionar
aquellas que cumplan las tres restricciones que vimos anteriormente. Para realizar
esta seleccin, podemos utilizar las denominadas tablas de cubrimiento y cierre o
tablas CC. En estas tablas, las filas corresponden a los compatibles primas, mientras
que las columnas estn divididas en dos partes: una parte de cubrimiento, cada
columna corresponde a cada estado de la mquina inicial, en la que tachamos los estados que son cubiertos por los compatibles primas; una parte de cierre, cada columna
corresponde a un prximo estado de un compatible prima, de tal forma que se coloca
un (punto) en la celda correspondiente al estado presente y una x (cruz) en la celda
correspondiente al prximo estado.
La tabla correspondiente al ejemplo anterior sera la mostrada en la tabla 2.9:

TEMA II: INTRODUCCIN A LA TEORA DE AUTMATAS FINITOS


Cubrimiento

23

Cierre

a b c d e f g h ab ag de cd eh ab ad de ag cd cd fg eh
abde x x
x x
x
x
x x x
bcd
x x x

x
x x
cfg
x
x x

x
deh
x x
x
x
x

x
x
ag
x
x
x
x
bc
x x
cd
x x
x

x x
cf
x
x

cg
x
x

fg
x x
x
dh
x
x
f
x
Tabla 2.9. Tabla de cubrimiento y cierre (CC) correspondiente al ejemplo de la tabla 2.8.
Una vez obtenida la tabla CC, pasamos a aplicar una serie de reglas para tratar de eliminar filas y/o columnas. Para lo cual, daremos dos definiciones de dominacin:
Una fila ri es x-dominada por otra rj, si rj tiene todas las cruces de ri y no tiene
puntos.
Una columna ui es dominada por otra uj, si uj tiene todas las cruces y el punto
(si lo hubiera) de ui.
Si la fila ri es x-dominada por otra, entonces ri puede ser eliminada as como
todas las columnas en las que tenga un punto.
Si una columna ui slo tiene una cruz en la fila rj y blancos en todas las
dems, se debe seleccionar el compatible rj. Despus eliminamos dicha fila y
todas las columnas en las que tenga cruces.
Si una columna ui es dominada por otra uj, podemos eliminar la columna uj.
Si la fila ri slo tiene puntos, puede ser eliminada con todas las columnas
donde tenga los puntos.
Cuando no sea posible reducir ms la tabla, diremos que nos encontramos
ante una tabla cclica.
Utilizando estas reglas podemos ver que la columna de (de bcd) domina a la columna ab
(de bcd), por lo que podemos eliminarla. Tambin vemos que la columna ab (de deh)
domina a la columna ad (de deh), por lo que podemos eliminarla. Y que la columna d
domina a la columna e, por lo que podemos eliminarla. Resultando la tabla CC reducida
mostrada en la tabla 2.10.
Una vez que hayamos reducido la tabla, pasamos a aplicar el mtodo de la funcin de
Petryck. Esta funcin es una funcin lgica en producto de sumas, en la que existe un
trmino suma por cada columna en la que haya algn punto o alguna cruz. Estos trminos estarn formados por cada compatible sin complementar, si hay una cruz, o
complementado, si hay un punto. Esta funcin es representada en forma de suma de

24

Dpto. Ingeniera Electrnica de Sistemas Informticos y Automtica


Cubrimiento

Cierre

a b c e f g h ab ag cd eh ad de ag cd cd fg eh
abde x x
x
x
x x
bcd
x x

x
x x
cfg
x
x x

x
deh
x
x
x
x
x
ag
x
x
x
x
bc
x x
cd
x
x

x x
cf
x
x

cg
x
x

fg
x x
x
dh
x
f
x
Tabla 2.10. Tabla de cubrimiento y cierre (CC) correspondiente al ejemplo de la tabla 2.8
minimizada.
productos. As, la funcin mnima ser aquella formada por los compatibles del trmino producto en el que existan el menor nmero de compatibles sin complementar.
Por lo tanto, si denominamos C1,..., C12 a los compatibles abde,..., f, la funcin de Petryck
ser:
P = (C1+C5)(C1+C2+C6)(C2+C3+C6+C7+C8+C9)(C1+C4)(C3+C8+C10+C12)
(C3+C5+C9+C10)(C4+C11)(C1+C2)(C2+C5)(C2+C3+C7)(C3+C4)(C1+C4)
(C1+C4+C7)(C5+C7)(C2+C7+C8)(C2+C7+C9)(C3+C9+C10)(C4+C11) =
Aplicando las leyes del lgebra de conmutacin.
P = C1C4C3C5C2 + C1C4C3C5C7 + C1C4C10C5C2 + C1C4C10C5C7 + C1C4C10C5C8C9C3C6
+ C1C4C10C2C7C8C9C3C6
De aqu podemos comprobar que el trmino con menos variables sin complementar es el
ltimo con un total de cuatro compatibles, de tal forma que podemos determinar que la
mquina con un menor nmero de estados ser la compuesta por los compatibles C1=abde,
C4=deh, C6=bc y C10=fg. Por ltimo, la tabla reducida se muestra en la tabla 2.11:
x1
C1
C4
C6
C10

C1,
C1,1
C1(6),0
C1(6),0

x2
C4,1
C1(4),0
C1(4),1
C6,1

x3
C1,0
C1,1
C1,1
-,1

x4
C1,1
C1(6),0
-,C4,1

x5
C1,0
C1(6),1
C1,C10,1

Tabla 2.11. Tabla de estados reducida

x6

x7

C1,C1(4),C1,1
C10,0

C1,C1,1
C10,0
C10,0

También podría gustarte