Está en la página 1de 3

PONTIFICIA UNIVERSIDAD CATÓLICA DEL

ECUADOR SEDE ESMERALDAS

Autómata Finito Determinista (AFD)

Ayrton Adame, Karol Cedeño y José Zamora


Resumen — El siguiente documento habla acerca del uso de los
Autómatas Finitos Deterministas (que son parte de los lenguajes
regulares) los cuales son abstracciones de las máquinas, sin tomar
en cuenta ni la forma de la máquina, ni sus dimensiones sino que
se enfoca a entender cómo funciona, es decir capturan solamente
el aspecto referente a las secuencias de eventos que ocurren.

Es aquel que sólo puede estar en un único estado después de


leer cualquier secuencia de entradas. "Determinista" hace
referencia a que para cada entrada sólo existe uno y sólo un
estado al que el autómata puede hacer la transición a partir
de su estado actual.
II. AUTÓMATAS FINITOS DETERMINISTAS (AFD)
Palabras claves— Autómatas, Deterministas, Cadenas, Es aquel que sólo puede estar en un único estado después de
Transición.
leer cualquier secuencia de entradas. "Determinista" hacer
referencia a que para cada entrada sólo existe uno y sólo un
estado al que el autómata puede hacer la transición a partir de
I. INTRODUCTION su estado actual. Un autómata finito "no determinista", puede

L a Teoría de Autómatas es una rama de la Teoría de la


Computación que estudia las máquinas teóricas llamadas
autómatas. Estas máquinas son modelos matemáticos.
estar en varios estados a la vez. "Autómata finito" normalmente
hace referencia a la variedad determinista.
Un autómata finito determinista consta de:
1. Un conjunto finito de estados, a menudo designado
Un Autómata está formado por un conjunto de estados, uno de como Q.
los cuales es el estado en el que la máquina se encuentra 2. Un conjunto finito de símbolos de entrada, a menudo
inicialmente. Recibe como entrada una palabra (una designado como Σ.
concatenación de símbolos del alfabeto del autómata) y según 3. Una función de transición que toma como argumentos
esta palabra la máquina puede cambiar de estados. un estado y un símbolo de entrada y devuelve un
estado. La función de transición se designa
Los Autómatas se clasifican según el número de estados (finito habitualmente como δ. Se representa mediante arcos
o no), la forma en que se realiza el cambio de estado entre los estados y las etiquetas sobre los arcos. Si q es
(determinista o no), si acepta o no el símbolo vacío ε, si tiene o un estado y a es un símbolo de entrada, entonces δ (q,a)
no una pila, etc. es el estado p tal que existe un arco etiquetado a que
va desde q hasta p.
Los Autómatas están estrechamente relacionados con la 4. Un estado inicial, uno de los estados de Q.
máquina de Turing (1936), de gran importancia en la Teoría de 5. Un conjunto de estados finales o de aceptación F. Q F
la Computación. Esto se debe a que una máquina de Turing ⊆ .Se usará la notación de "quíntupla" siguiente: A =
puede simular el almacenamiento y la unidad de control de una (Q, Σ, δ, q 0, F) donde A es el nombre del AFD, Q es
computadora. Tenemos certeza de que lo que no puede ser su conjunto de estados, Σ son los símbolos de entrada,
resuelto por una máquina de Turing no puede ser resuelto por δ es la función de transición, q 0 es el estado inicial y
una computadora real. F es el conjunto de estados finales.
Tablas de transiciones

Una tabla de transiciones es una representación tabular


convencional de una función, como por ejemplo δ, que toma
dos argumentos y devuelve un valor. Las filas de la tabla
corresponden a los estados y las columnas a las entradas. La
entrada para la fila correspondiente al estado q y la columna
correspondiente a la entrada a es el estado δ (q, a).

III. COMO PROCESA CADENAS UN AFD Ejemplo 2.3. Tabla de transición del autómata del ejemplo 2.1.

El "lenguaje" del AFD es el conjunto de todas las cadenas que


acepta. Si w es una cadena, y qN es el estado al que sellega
después de aplicar todas las entradas y transiciones, si qN
pertenece a F, entonces la entrada w se acepta y, si no, se
"rechaza".
Ejemplo 2.1.
AFD que acepte únicamente todas las cadenas de ceros y unos
que contengan la secuencia 01 en cualquier posición de la
cadena. {w|w tiene la forma x01y donde x e y constan sólo de El estado inicial se marca mediante una flecha y los estados de
ceros y unos} o {x01y| xe y son cadenas cualesquiera formadas aceptación mediante un asterisco.
por 0s y 1s} La especificación completa del autómata A que
acepta el lenguaje L de cadenas que contienen una subcadenas
01 es: A = ({q0, q1, q2}, {0, 1}, δ, q0, {q1}), donde δ es la
función de transición: δ (q0, 1) =q0, δ (q0, 0) = q2, δ (q2, 0) = V. EXTENSIÓN A CADENAS DE LA FUNCIÓN DE
q2, δ (q2, 1) = q1, δ (q1, 0) = δ (q1, 1) = q1. TRANSICIÓN

Un AFD define un lenguaje: el conjunto de todas las cadenas


que dan lugar a una secuencia de transiciones desde el estado
IV. NOTACIONES MÁS SIMPLES PARA LOS AFD inicial hasta un estado de aceptación. En términos del diagrama
de transiciones, el lenguaje de un AFD es el conjunto de
Un diagrama de transiciones de un AFD, A = (Q, Σ, δ, q0, F), etiquetas ubicadas a lo largo de todos los caminos que van desde
es un grafo definido como sigue: el estado inicial hasta cualquier estado de aceptación.
a) Para cada estado de Q, existe un nodo. Definimos una función de transición extendida que describirá
b) Para cada estado q de Q y cada símbolo de entrada a lo que ocurre cuando se parte de cualquier estado y se sigue
de Σ, sea δ (q, a) = p. Entonces, el diagrama de cualquier secuencia de entradas. Si δ es la función de transición,
transiciones tiene un arco desde el nodo q hasta el nodo entonces la función de transición extendida construida a partir
p, etiquetado como a. Si existen varios símbolos de de δ será. La función de transición extendida es una función que
entrada que dan lugar a transiciones desde q hasta p, toma un estado q y una cadena w y devuelve un estado p (el
entonces el diagrama de transiciones puede tener un estado al que el autómata llega partiendo del estado q y
único arco etiquetado con la lista de estos símbolos. procesando la secuencia de entradas w).
c) Existe una flecha dirigida al estado inicial qo, Definimos por inducción sobre la longitud de la cadena de
etiquetada como Inicio. Esta flecha no tiene origen en entrada como sigue: BASE. (q, ε) = q. Si partimos del estado q
ningún nodo. y no leemos ninguna entrada, entonces permaneceremos en el
d) Los nodos correspondientes a los estados de estado q.
aceptación (los que pertenecen a F) están marcados PASO INDUCTIVO. Supongamos que w es una cadena de la
con un doble círculo. Los estados que no pertenecen a forma xa; es decir, a es el último símbolo de w y x es la cadena
F tienen un círculo simple. formada por todos los símbolos excepto el último. Por ejemplo,
w = 1101 se divide en x = 110 y a = 1. Luego (q, w) = δ ((q, x),
Ejemplo 2.2. Diagrama de transición del autómata del a). La idea es simple. Para calcular (q, w), en primer lugar se
ejemplo 2.1. calcula (q, x), el estado en el que el autómata se encuentra
después de procesar todos los símbolos excepto el último de la
cadena w. Supongamos que este estado es p; es decir, (q, w) =
p. Entonces (q, w) es lo que obtenemos al hacer la transición
desde el estado p con la entrada a, el último símbolo de w. Es
decir, (q, w) = δ (p, a).
Ejemplo 2.4. Diseñar un AFD que acepte el lenguaje L = {w | diseño de la resolución de dicho problema, pueden ser
w tiene un número par de ceros y un número par de unos} definidos de forma tediosa.
La tarea de los estados de este AFD es saber si el número de 0s
y de 1s es par o impar. Existen por tanto cuatro estados que  Estos algoritmos ayudan a la resolución de problemas
pueden interpretarse de la manera siguiente: q0 - #0s y #1s es del mundo real, con la diferencia que estos tienden a
par; q1 - #0s es par y #1s es impar; q2 - #0s es impar y #1ses hacer tratados más detalladamente, unos que otros.
par q3 - #0s y #1s es impar. El estado q0 es tanto el estado inicial
como el único estado de aceptación.  Las herramientas de soluciones de problemas y
respuestas en cuanto a su solución podemos utilizar los
grafos y tablas de transiciones de los AF para conocer
Así donde la función el tiempo de ejecución y el tiempo en que se puede
de transición δ se describe mediante el diagrama de tardar para encontrar la posible solución.
transiciones.
 Para finalizar se destaca que los autómatas son
herramientas muy sencillas y a la vez efectivas, como
pasos para las soluciones de problemas; interpretadas
de forma matemática en grafos, que ayudan a la
persona a interpretación de los resultados, son,
sencillos y factibles

VIII. REFERENCIAS

1
https://es.scribd.com/document/112940708/2-AUTOMATAS-FINITOS
La comprobación de que una cadena, w = 110101, pertenece a 2
https://www.matesfacil.com/automatas-lenguajes/automata-finito-y-su-
L supone calcular (q0, w) para cada prefijo w de 110101, lenguaje.html
comenzando por ε y aumentando progresivamente el tamaño.
El resumen de este cálculo es:

VI. EJEMPLOS DE AFD

VII. CONCLUSION

 Los autómatas son muy importantes en la resolución


de problemas indefinibles porque estos ayudan a los
ingenieros en programación a usarlos como análisis y

También podría gustarte