Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Que existan dos transiciones del tipo (q,a)=q1 y (q,a)=q2, siendo q1 q2;
Que existan transiciones del tipo (q,), salvo que q sea un estado final, sin
transiciones hacia otros estados.
Un autmata finito no determinista (AFND)
Es aquel que, a diferencia de los autmatas finitos deterministas, posee al menos un
estado q Q, tal que para un smbolo a del alfabeto, existe ms de una transicin (q,a)
posible.
Haciendo la analoga con los AFDs, en un AFND puede darse cualquiera de estos dos casos:
En este ejemplo, (q0,b)=q0 y (q0,b)=q1. Por lo tanto, se trata de un autmata finito no determinista,
que reconoce la expresin regular (a|b)*b+.
1Definicin formal
2Funcionamiento
3Implementacin
4AFND-
o
4.1Propiedades
4.2Aplicacin
5Ejemplo
6Vase tambin
7Referencias
8Bibliografa
Definicin formal[editar]
Formalmente, si bien un autmata finito determinista se define como una 5-tupla (Q, , q0,
, F) donde:1
es un conjunto de estados;
es un alfabeto;
es el estado inicial;
Funcionamiento[editar]
La mquina comienza en el estado inicial especificado y lee una cadena de
caracteres pertenecientes al alfabeto. El autmata utiliza la funcin de transicin
de estados T para determinar el siguiente estado, usando el estado actual y el
smbolo que acaba de leer o la cadena vaca. Sin embargo, "el estado siguiente de
un AFND no slo depende de el evento de entrada actual, sino que tambin en un
nmero arbitrario de los eventos de entrada posterior. Hasta que se producen
estos acontecimientos posteriores no es posible determinar en qu estado se
encuentra la mquina" . Cuando el autmata ha terminado de leer, y se encuentra
en un estado de aceptacin, se dice que el AFND acepta la cadena, de lo contrario
se dice que la cadena de caracteres es rechazada. Tanto para un AFND como
para un autmata finito determinista (AFD) se puede aceptar el mismo lenguaje.
Por lo tanto, es posible convertir un AFND existente en un AFD para el desarrollo
de una mquina tal vez ms simple. Esto puede llevarse a cabo utilizando la
construccin del conjunto potencia, que puede conducir a un aumento exponencial
en el nmero de estados necesarios.
Implementacin[editar]
Hay muchas formas de implementar una AFND:
estados en el AFND; si la estructura del conjunto usa un bit por estado del
AFND, entonces esta solucin es exactamente equivalente a la anterior.
Crear mltiples copias. Por cada n forma de la decisin, el AFND crea hasta n1 copias de la mquina. Cada uno de ellos entrara en un estado
independiente. Si, al momento de consumir el ltimo smbolo de la entrada, al
menos una copia del AFND esta en un estado de aceptacin, el AFND lo
aceptar. (Esto tambin requiere un almacenamiento lineal con respecto al
nmero de estados del AFND, ya que puede haber una mquina por cada
estado del AFND).
AFND-[editar]
Propiedades[editar]
Para todo , se escribe si y solo si a se pude llegar desde , yendo a lo largo de
cero o ms flechas . En otras palabras, si y slo si existe donde tal que
.
Para cualquier , el conjunto de estados que se puede llegar a partir de p se
llama epsilon-closure o -closure de p y se escribe como
.
Para cualquier subconjunto , definir el -closure de P como
.
Las transiciones epsilon son transitive, ya que puede demostrarse que
para todo y , si y , entonces .
Del mismo modo, si y entonces Sea x una cadena del alfabeto
{}. Un AFND- M acepta la cadena x si existe tanto una
representacin de x de la forma x1x2 ... xn, donde xi ( {}), y una
secuencia de estados
p0,p1, ..., pn, donde pi Q, Cumplindose las siguientes condiciones:
1. p0 E({q0})
2. pi E(T(pi-1, xi )) para i = 1, ..., n
3. pn F.
Aplicacin[editar]
El AFND y el AFD son equivalentes en esto, ya que si un lenguaje es
reconocido por el AFND, tambin ser reconocido por un AFD, y
viceversa. El establecimiento de esta equivalencia es til porque a
veces la construccin de un AFND para reconocer un lenguaje
determinado es ms fcil que construir un AFD para dicho lenguaje.
Tambin es importante porque el AFND se puede utilizar para reducir
la complejidad del trabajo matemtico necesario para establecer
muchas propiedades importantes en la teora de la computacin. Por
ejemplo, es mucho ms fcil demostrar las siguientes propiedades
utilizando un AFND que un AFD:
Ejemplo[editar]
El ejemplo siguiente muestra un AFND M, con un alfabeto binario que
determina si la entrada contiene un nmero par de 0s o un nmero
par de 1s. Entonces M = (Q, , T, s0,F) donde:
S0
S1
S2
S3
S4
= {0, 1},
F = {s1, s3}, y
{}
{S2}
{S1}
{S3}
{S4}
{}
{S1}
{S2}
{S4}
{S3}
{S1, S3}
{}
{}
{}
{}
M puede ser visto como la unin de dos AFDs: uno con los
estados {S1, S2} y el otro con los estados {S3, S4}.
El lenguaje de M puede ser descrito por el lenguaje regular dado
por la expresin regular:
Autmata finito determinista que reconoce el lenguaje regular conformado exclusivamente por las
cadenas con un nmero par de ceros y un nmero par de unos.
Definicin formal[editar]
Formalmente, se define como una 5-tupla (Q, , q0, , F) donde:1
es un conjunto de estados;
es un alfabeto;
es el estado inicial;
Que existan dos transiciones del tipo (q,a)=q1 y (q,a)=q2, siendo q1 q2;
Que existan transiciones del tipo (q, ), donde es la cadena vaca, salvo
que q sea un estado final, sin transiciones hacia otros estados.
FSM D
UAL (Algoritmo de actualizacin por difusin) rastrea todas las rutas, utiliza
su mtrica para seleccionar rutas eficientes y sin bucles, y selecciona las
rutas con la ruta de menor costo para insertarla en una tabla de
enrutamiento.