Escolar Documentos
Profissional Documentos
Cultura Documentos
Marzo, 2010
1/14
1. Introduccin
Un autmata es una mquina terica que lee instrucciones en forma de smbolos y cambia de estado segn stas.
a, b q0 a q1 b q2
2/14
Una Autmata Finito Determinista (AFD) se dene como una quintupla M = (Q , V , , q0 , F ) donde:
Q es un conjunto nito de estados. V es el alfabeto de entrada. : Q V Q es la funcin de transicin. q0 es el estado inicial. F Q es el conjunto de estados nales.
Determinista: se sabe con certeza el estado siguiente conociendo el estado actual y el smbolo a leer.
3/14
Tabla de transicin q0 # q1 q2 0 q0 q0 q2 1 q1 q2 q1
Diagrama de transicin
0 q0
1 0
q1
1 1
0 q2
4/14
Una Autmata Finito No Determinista (AFND) se dene como una quintupla M = (Q , V , , q0 , F ) donde:
Q es un conjunto nito de estados. V es el alfabeto de entrada. : Q V P (Q ) es la funcin de transicin. q0 es el estado inicial. F Q es el conjunto de estados nales.
No Determinista: No se puede determinar con certeza el estado siguiente conociendo el estado actual y el smbolo a leer.
5/14
Diagrama de transicin
0, 1 q0
1 0
q1
1 1
0 q2
6/14
Una Autmata Finito con -transiciones (AFND-) se dene como una quintupla M = (Q , V , , q0 , F ) donde:
Q es un conjunto nito de estados. V es el alfabeto de entrada. : Q (V ) P (Q ) es la funcin de transicin. q0 es el estado inicial. F Q es el conjunto de estados nales.
Un AFND- puede decidir de forma no determinista entre cambiar de estado consumiendo o no consumiendo un smbolo de entrada.
7/14
Diagrama de transicin
0, 1 q0
1 0
q1
0 q2
8/14
5. Ejercicios
Construya un autmata nito para cada uno de los siguientes lenguajes: L1 = {(ab)n |n > 1} L2 = {an bm |n 2 y m 3} Todas las palabras que empiezen con a y terminen con o Todas las palabras que empiezen con a, tengan una s y terminen con o Todas las palabras que tengan entre 3 y 5 letras Construya un autmata nito que permita reconocer: Un nmero entero Un nmero real Una letra Un identicador
9/14
5. Ejercicios
Obtener la expresin regular asociada al lenguaje aceptado por los siguientes autmatas:
q0 a
a b q2 b
q1
0..9
q0 a q2
a b b b
q0
q1 q3
q5
q6
q4
10/14
6. Mquinas de Turing
Una mquina de Turing es un modelo matemtico abstracto que formaliza el concepto de algoritmo. Fue introducido por Alan Turing en 1936. Consta de un cabezal lector/escritor y una cinta innita en la que el cabezal lee el contenido, borra el contenido anterior y escribe un nuevo valor.
6. Mquinas de Turing
12/14
6. Mquinas de Turing
Considere una mquina de turing que verica si el nmero de ceros de una palabra es par: M = ({q0 , q1 }, {0, 1}, {0, 1, B }, , q0 , B , {q0 }) donde la funcin viene dada por:
(q0 , 0) = {q1 , B , R } (q1 , 0) = {q0 , B , R } (q0 , 1) = {q0 , B , R } (q1 , 1) = {q1 , B , R }
B B
B B
B ... q
6. Mquinas de Turing
14/14