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?
Aplicación de autómatas: Analizador léxico 2.
 Primitivas de la construcción de Thompson Expresión regular
Conversión de autómata finito con transiciones-ε a autómata finito determinista Estados q3q3 q2q2 q0q0 q1q1 q4q4 a b c c c.
Filminas Tercera Semana CI-1322 Autómatas y Compiladores Elaborado por: Sergio Pastrana Espinoza A33888.
Gramáticas, lenguajes y reconocedores
Analizador Sintáctico
Gramáticas Libres de Contexto
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
Conversión de autómata finito con transiciones-ε y no determinista a autómata finito determinista Estados Entradas a b c q0q0 q1q1 q2q2 q3q3 q4q4 ab b.
Tema 2.- Gramáticas independientes de contexto.
Tema 3 Propiedades de los lenguajes independientes de contexto
Programas y Máquinas de Turing
Tomado de Sudkamp: Languages and Machines Cap. 7.
Expresiones regulares
Tema 1.- Lenguajes. Gramáticas
4. Máquinas de Turing 4.1. Modelo básico.
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
Definición Formal de Autómatas Finitos Métodos de Diseño de AFDs
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
Tema 2 Autómatas finitos 1. Autómata finito determinista
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.
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
I.- ESTUDIO DE LOS LENGUAJES DE PROGRAMACIÓN.
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.
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.
Unidad 2 Lenguajes, Expresiones Regulares, Autómatas
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,
LENGUAJES FORMALES, AUTOMATAS Y MAQUINAS DE ESTADOS FINITOS
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