Subido por Mijail Zambrana Lira

AUTOMATAS FINITOS

Anuncio
Definición
Un autómata finito es un modelo matemático de una
máquina que acepta cadenas de un lenguaje definido
sobre un alfabeto A.
Consiste en un conjunto finito de estados y un conjunto
de transiciones entre esos estados, que dependen de
los símbolos de la cadena de entrada.
Representación autómatas finitos
Al igual que en las máquinas secuenciales, la
representación de los autómatas finitos puede llevarse a
cabo de dos formas diferentes: mediante un diagrama de
estados; o mediante una tabla de estados.
Diagramas de Estado. En los diagramas de estado
podemos encontrar dos elementos: estados y
transiciones. Los estados son las letras o símbolos
enmarcados (dentro de un círculo generalmente). En
cambio, las transiciones son arcos dirigidos que llevan
asociadas una/s etiquetas.
Un autómata es una representación gráfica que muestra el
proceso de reconocimiento de una cadena de entrada. La
simbología utilizada es simple
Cada nodo del grafo corresponde a un estado n, donde n
es un número o bien una letra, generalmente.
Una flecha de un estado a otro se denomina transición
entre estados.
El estado inicial se indica mediante una flecha .
Los estados finales se representan con un círculo doble.
clasificación
Si para todo estado del autómata existe como
máximo una transición definida para cada símbolo
del
alfabeto, se dice que
el
autómata
es
determinístico (AFD).
Si a partir de algún estado y para el mismo símbolo de
entrada, se definen dos o más transiciones se dice que
el autómata es no determinístico (AFND).
clasificación
Formalmente un (AF) puede ser descrito como una 5-tupla
A = (Q,Σ(V), δ, q0, F) donde:
◦ Q es un conjunto finito de estados
◦ Σ, V: es un conjunto finito de símbolos o alfabeto.
◦ δ : Q × Σ → Q es una función parcial llamada función
de transición
◦ q0 ∈ Q estado inicial
◦ F ⊆ Q conjunto de estados finales
AUTÓMATAS FINITOS DETERMINISTAS (AFD)
Determinista: para cada entrada, existe un único
estado al que el autómata puede llegar partiendo del
estado actual.
Consta de: – un conjunto finito de estados, Q
– un conjunto finito de símbolos de entrada, Σ
– una función de transición ( δ) que, dados un
estado y una entrada, devuelve un estado. δ ( q, a) = p
– un estado inicial (uno de los estados de Q), q 0
– un conjunto de estados finales o de aceptación
(subconjunto de Q), F
• A = (Q, Σ, δ, q 0, F )
AFD
EJERCICIO
A = ({q0, q1, q2}, {a, b}, δ, q0, {q0, q1})
δ(q0, a)= q0
δ(q0, b)= q1
δ(q1, a)= q2
δ(q1, b)= q1
δ(q2, a)= q2
δ(q2, b)= q2
EJERCICIO
DEFINICIÓN DE LOS AFND
Posee al menos un estado q ∈ Q, tal que para un
símbolo a ∈ Σ del alfabeto, existe más de una transición δ(
q , a ) posible.
En un AFND puede darse cualquiera de estos dos
casos:
1. Que existan transiciones del tipo δ( q, a)=q1 y δ( q , a
)=q2, siendo q1 ≠ q2;
Que existan transiciones del tipo δ(q, ε),
siendo q un estado no-final, o bien un estado final
pero con transiciones hacia otros estados.
2.-
Cuando se cumple el segundo caso, se dice que el
autómata es un autómata finito no determinista
con
transiciones
vacías
o
transiciones
ε (abreviado AFND-ε)
AFND
A = ({q0, q1, q2}, {a, b, c}, δ, q0, {q0, q1, q2})
δ(q0, a)= {q0, q1, q2}
δ(q0, b)= {q1, q2}
δ(q0, c)= {q2}
δ(q1, a)= ∅
δ(q1, b)= {q1, q2}
δ(q1, c)= {q2}
δ(q2, a)= ∅
δ(q2, b)= ∅
δ(q2, c)= {q2}
EJERCICIO
Descargar