Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Ir a la navegaciónIr a la búsqueda
Teoría de autómatas.svg
Acerca de esta imagen
Un autómata es un modelo matemático para una máquina de estado finito (FSM sus
siglas en inglés). Una FSM es una máquina que, dada una entrada de símbolos,
"salta" a través de una serie de estados de acuerdo a una función de transición
(que puede ser expresada como una tabla). En la variedad común "Mealy" de FSMs,
esta función de transición dice al autómata a qué estado cambiar dados unos
determinados estado y símbolo.
Dependiendo del estado en el que el autómata finaliza se dice que este ha aceptado
o rechazado la entrada. Si este termina en el estado "acepta", el autómata acepta
la palabra. Si lo hace en el estado "rechaza", el autómata rechazó la palabra, el
conjunto de todas las palabras aceptadas por el autómata constituyen el lenguaje
aceptado por el mismo.
Índice
1 Vocabulario
2 Autómatas finitos
2.1 Extensiones a los autómatas finitos
3 Véase también
4 Enlaces externos
5 Referencias
Vocabulario
Los conceptos básicos de símbolos, palabras, alfabetos y strings son comunes en la
mayoría de las descripciones de los autómatas. Estos son:
Símbolo
Un dato arbitrario que tiene algún significado o efecto en la máquina. A estos
símbolos también se les llama "letras" o "átomos".1
Palabra
Una cadena finita formada por la concatenación de un número de símbolos.
Alfabeto
Conjunto finito de símbolos. Un alfabeto se indica normalmente con {\displaystyle \
Sigma }\Sigma, que es el conjunto de letras en un alfabeto.
Lenguaje
Un conjunto de palabras, formado por símbolos en un alfabeto dado. Puede ser
infinito.
Clausura de Kleene
Un lenguaje se puede considerar como un subconjunto de todas las posibles palabras.
El conjunto de todas las palabras puede, a su vez, ser considerado como el conjunto
de todas las posibles concatenaciones de cadenas. Formalmente, este conjunto de
todas las cadenas se llama en inglés free monoid. Se indica como {\displaystyle \
Sigma ^{*}}\Sigma ^{*}, y el superíndice * se llama la estrella de Kleene.
Autómatas finitos
Formalmente, un autómata finito (AF) puede ser descrito como una 5-tupla {\
displaystyle \langle Q,\Sigma ,\delta ,S_{0},F\rangle }\langle Q,\Sigma ,\
delta ,S_{0},F\rangle .
AFD.
Autómata finito no determinista (AFND)
Véase también: Cadena de Markov
: Los estados de un autómata de este tipo pueden, o no, tener una o más
transiciones por cada símbolo del alfabeto. El autómata acepta una palabra si
existe al menos un camino desde el estado q0 a un estado final F etiquetado con la
palabra de entrada. Si una transición no está definida, de manera que el autómata
no puede saber como continuar leyendo la entrada, la palabra es rechazada.
Autómata finito no determinista con transiciones ε (AFND-ε)
Además de ser capaz de alcanzar más estados leyendo un símbolo, permite alcanzarlos
sin leer ningún símbolo. Si un estado tiene transiciones etiquetadas con {\
displaystyle \epsilon }\epsilon , entonces el AFND puede encontrarse en cualquier
de los estados alcanzables por las transiciones {\displaystyle \epsilon }\epsilon ,
directamente o a través de otros estados con transiciones {\displaystyle \
epsilon }\epsilon . El conjunto de estados que pueden ser alcanzados mediante este
método desde un estado q, se denomina la clausura {\displaystyle \epsilon }\epsilon
de q.
Sin embargo, puede observarse que todos estos tipos de autómatas pueden aceptar los
mismos lenguajes. Siempre se puede construir un AFD que acepte el mismo lenguaje
que el dado por un AFND.