Tema 2 Autómatas finitos 1. Autómata finito determinista

Slides:



Advertisements
Presentaciones similares
DR. RAMON ZATARAIN CABADA
Advertisements

Autómata finito Determinista
Introducción ¿Qué es un Algoritmo?
Filminas Tercera Semana CI-1322 Autómatas y Compiladores Elaborado por: Sergio Pastrana Espinoza A33888.
Gramáticas, lenguajes y reconocedores
Analizador Sintáctico
Conceptos básicos Def. Un símbolo es cualquier carácter imprimible.
Autómatas de pila (Pushdown automata)
Gramáticas.
Diseño de Autómatas Finitos
Autómatas Finitos.
Diseño de AFN’s.
Autómata Finito Un autómata finito (AF) es un modelo de computación muy restringido, sin embargo tiene una gran aplicación en reconocimiento de patrones.
TIPOS DE GRAMATICAS JERARQUIAS DE CHOMSKY
Tema 2.- Gramáticas independientes de contexto.
APLICACIONES DE AUTOMATAS Y EXPRESIONES REGULARES
Expresiones regulares
Tema 2 Autómatas finitos 1. Autómata finito determinista
Tema 1.- Lenguajes. Gramáticas
Autómatas finitos y expresiones regulares
EJERCICIOS DE EXPRESIONES REGULARES Y AUTOMATAS
Lenguajes Regulares Curso de Compiladores Manuel E. Bermúdez, Ph.D.
Ciencias de la Computación I
5. Propiedades de Cierre de los lenguajes regulares
Tema 1.- Lenguajes. Gramáticas
Tema 2 Lenguajes Formales.
Introducción a la Teoría de Lenguajes Preparado por Manuel E. Bermúdez, Ph.D. Profesor Asociado University of Florida Curso de Compiladores.
Programación de sistemas
2º curso Ingeniería Técnica en Informática de Sistemas UNED
Lenguajes Independientes del Contexto
Autómatas de Pila Teoría del Autómata.
2º curso Ingeniería Técnica en Informática de Sistemas UNED
Tema 2 Análisis Léxico.
Teoría de lenguajes y compiladores
Autómatas Finitos Es un diagrama de transiciones que permite identificar cadenas que pertenecen a un lenguaje. Puede ser determinista o no determinista.
Lenguajes regulares Teoría del Autómata.
Ejemplo de AFN Ej. Diseña un AFN que acepte todas las cadenas que contengan dos ceros consecutivos o dos unos consecutivos. Solución AFN q4 1 q2 q1 q0.
Teoría de lenguajes y compiladores Analizadores lexicográficos
Teoría de Autómatas I 2º curso Ingeniería Técnica en Informática de Sistemas UNED.
MÁQUINAS DE TURING Teoría del Autómata.
COMPUTABILIDAD Y COMPLEJIDAD 1. Conceptos básicos (revisión). 2. Gramáticas independientes de contexto. 3. Propiedades de los lenguajes independientes.
Teoría de lenguajes y compiladores
Tomado de Sudkamp: Languages and Machines Cap. 6.
Teorema de Nerode. Minimización de AFDs
Lenguajes Formales y Autómatas
UNIVERSIDAD VALLE DEL MOMBOY FACULTAD DE INGENIERIA ESCUELA DE COMPUTACIÓN CATEDRA: EDUMATICA Br: JENNY CORONADO C.I
1 AFDAFN AF Gramáticas lineales derecha Expresiones regulares Tema 2 Método de los AF Método de las derivadas Sistemas de Ecuaciones Tema 1.
Teoría de lenguajes y compiladores
MATRICES.
I.- ESTUDIO DE LOS LENGUAJES DE PROGRAMACIÓN.
Autómatas y Compiladores. Tercera Semana. Ricardo Vargas Del Valle A35469.
Lenguajes y Autómatas Alfabeto.- es un conjunto finito no vacío cuyos elementos se denominan símbolos Longitud de una palabra.- Es el número de símbolos.
Unidad 3 Analizador Sintáctico
Simulación de un AFD Conversión de un AFND a un AFD.
IV. GRAMÁTICAS DISTRIBUIDAS Y TABLAS DE SÍMBOLOS
Teoría de Autómatas I 2º curso Ingeniería Técnica en Informática de Sistemas UNED.
REPÚBLICA BOLIVARIANA DE VENEZUELA MINISTERIO DEL PODER POPULAR PARA LA EDUCACION SUPERIOR UNIVERSIDAD VALLE DEL MOMBOY CARVAJAL EDO. TRUJILLO ENERO 2014.
República Bolivariana de Venezuela Ministerio del Poder Popular para la Educación Superior Universidad Valle del Momboy Carvajal, Trujillo Alumnas Luzmila.
Unidad 2 Lenguajes, Expresiones Regulares, Autómatas
Sintaxis y Semántica. S.Takahashi Fases en el proceso de análisis de lenguajes Lexer Parser caracteres tokensrespuesta.
Centro Universitario Valle de México Gramáticas Libres de Contexto Dra. Maricela Quintana López Elaborado por: Autómatas y Lenguajes Formales.
Autómatas finitos (AF) Los AF constan de 5 elementos fundamentales AF=( , E, F, s,  ).  Un alfabeto (  )  Un conjunto de estados (E)  Un conjunto.
AUTÓMATAS FINITOS. TERMINOLOGÍA BÁSICA  Tabla de transición. La información de un autómata, así como los valores que puede tomar la función 5,
1 Autómatas de pila (Pushdown automata). 2 Autómata de conteo Autómata finito determinista con un contador de enteros o “bolsa” en la que se colocan o.
LENGUAJES FORMALES, AUTOMATAS Y MAQUINAS DE ESTADOS FINITOS
Computación Valeria Herskovic –
AUTOMATAS Y LENGUAJES FORMALES FASE 1
AUTOMATAS FINITOS DETERMINISTICOS
UNIDAD 3. Autómatas Finitos 3.3 Conversión de un AFND a AFD Presentan: Anahi Avila Valdez Erika F. Palma Tzidejhe Docente: Adrián Chávez 1.
Tema 2 Autómatas finitos 1. Autómata finito determinista
Transcripción de la presentación:

Tema 2 Autómatas finitos 1. Autómata finito determinista Formas de Representación de un AFD Diagrama de transiciones Tabla de transiciones 2. Autómata finito no determinista Equivalencia AFN - AFD 3. Autómata finito no determinista con transiciones vacías Equivalencia AF - AFD 4. Equivalencia Autómatas finitos-Gramáticas Regulares

Autómata finito determinista conjunto de estados finales F  Q control finito estado inicial, q0  Q A = (Q, , , q0, F) a1 a2 a3 ... an función de transición : Q   Q alfabeto conjunto de estados Extensión de  a palabras (: Q *  Q):

Formas de Representación de un AFD A = ({q0 , q1 , q2), {a, b},  , q0 , {q1}) con: (q0 ,a) = q1, (q0 , b) = q2 , (q1 ,a) = q2, (q1 ,b) = q0 , (q2,a) = q2, (q2,b) = q2 Diagrama de transiciones Tabla de transiciones a a b q0 q1 q2 q1 q2 q0 q2 q2 q2 q0 q1 b b a q2 a, b Lenguaje aceptado: L(A) = {x  *: (q0 , x)  F }

Autómata finito no determinista conjunto de estados finales F  Q estado inicial, q0  Q A = (Q, , , q0, F) función de transición : Q   2Q alfabeto conjunto de estados Extensión de  a cadenas (: Q *  2Q )

A = ({q0 , q1 , q2), {a, b, c},  , q0 , {q0, q1, q2}) con: Ejemplo de AFN A = ({q0 , q1 , q2), {a, b, c},  , q0 , {q0, q1, q2}) con: (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 }. Tabla de transiciones a b c q0 {q0, q1, q2} {q1, q2} {q2} q1  {q1, q2} {q2 } q2   {q2 } Diagrama de transiciones Lenguaje aceptado: L(A) = {x  *: (q0 , x)  F   }

Dado un lenguaje L aceptado por un AFN, existe un AFD que acepta L. Equivalencia AFN - AFD Dado un lenguaje L aceptado por un AFN, existe un AFD que acepta L. Paso de AFN a AFD a b c a,b b,c q0 q1 q2 a,b,c a b c {q0 } {q0, q1, q2} {q1, q2} {q2} {q0, q1, q2} {q0, q1, q2} {q1, q2} {q2} {q1, q2}  {q1, q2} {q2} {q2}   {q2}    

a b c {q0 } {q0, q1, q2} {q1, q2} {q2} {q0, q1, q2} {q0, q1, q2} {q1, q2} {q2} {q1, q2}  {q1, q2} {q2} {q2}   {q2} a,b,c a p1 b b a a a,b c p0 p2 b c c c p3

Autómata finito no determinista con transiciones vacías conjunto de estados finales F  Q estado inicial, q0  Q A = (Q, , , q0, F) función de transición : Q ( {}) 2Q alfabeto conjunto de estados   -clausura de un estado  Lenguaje aceptado: L(A) = {x  *: (q0 , x)  F   }

Equivalencia AF - AFD -Dado q  Q, -clausura(q) es el conjunto de estados a los que se puede llegar desde q sin consumir símbolos. -Dado P  Q -clausura(P ) =  p P -clausura(p) Extensión a cadenas de la función de transición -’(q , ) = -clausura(q) -’(q, xa) = -clausura( p  ’(q , x) (p , a) ) Dado A = (Q, , , q0, F) AF , construimos A’ = (Q, , ’, q0, F’) con F’ = F {q0} si -clausura(q0)  F   F en caso contrario Se cumple que L(A) = L(A’ )

Diagrama de transiciones Ejemplo de AF- A = ({q0 , q1 , q2 , q3), {0, 1},  , q0 , {q0}) con: Tabla de transiciones 0 1  q0   {q1} q1  {q3} {q2 } q2 {q1} {q2}  q3  {q3} {q0} Diagrama de transiciones Lenguaje aceptado: L(A) = {x  * : (q0 , x)  F   }

Equivalencia Autómatas finitos-Gramáticas Regulares Si L es un lenguaje regular, L es aceptado por un A. Finito -Dada G = (N, , P, S) lineal por la derecha con L = L(G) se construye un AF A = (Q, , , q0, F) con L(A) = L(G): Q = N  {X}, X  N; q0 = S; F ={X}. Función de transición: 1.  (A  aB) P se define B  (A, a); A,B  N; a   {} 2.  (A  a) P se define X  (A, a); A  N; a   {} 3.  a   {} se define (A, a) = 

Equivalencia Autómatas finitos-Gramáticas Regulares Si L es aceptado por un A. Finito, L es un lenguaje regular. -Sea A = (Q, , , q0, F) un AF tal que L = L(A) se construye una G = (N, , P, S) lineal por la derecha con L = L(G): N = Q ; S = q0 El conjunto de reglas de producción se construye: 1.  q’  (q, a) se define (q  aq’)  P ; q, q’  Q; a   {} 2. q F se define (q  )  P