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

Slides:



Advertisements
Presentaciones similares
Autómata finito Determinista
Advertisements

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
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
Tomado de Sudkamp: Languages and Machines Cap. 7.
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
Lenguajes Regulares Curso de Compiladores Manuel E. Bermúdez, Ph.D.
Definición Formal de Autómatas Finitos Métodos de Diseño de AFDs
Tema 1.- Lenguajes. Gramáticas
Introducción a la Teoría de Lenguajes Preparado por Manuel E. Bermúdez, Ph.D. Profesor Asociado University of Florida Curso de Compiladores.
Análisis sintáctico LR: SLR (LR simple)
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.
Lenguajes Formales y Autómatas
UNIVERSIDAD VALLE DEL MOMBOY FACULTAD DE INGENIERIA ESCUELA DE COMPUTACIÓN CATEDRA: EDUMATICA Br: JENNY CORONADO C.I
Autómatas de Pila (Pushdown Automatón)
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 Educación Superior Universidad Valle del Momboy Carvajal, Trujillo Alumnas Luzmila.
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,
SEGUNDA LEY DE LA TERMODINÁMICA. PARA MAQUINAS REVERSIBLES DE CICLO INVERSO.
APANTANLLAMIENTO AB.
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
EJERCICIOS DE EXPRESIONES REGULARES Y AUTOMATAS
AUTOMATAS FINITOS DETERMINISTICOS
Grafos dirigidos: Sea G un grafo, si cada arista en G tiene una dirección entonces G se llama grafo dirigido o dígrafo y sus aristas se llaman arcos.
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.
EJERCICIOS DE EXPRESIONES REGULARES Y AUTOMATAS 1.α + (β + γ) = (α + β) + γ 2.α + β = β + α 3.α + Ø = α 4.α + α = α 5.α · λ = α 6.α · Ø = Ø 7.α · (β ·
Programación III Catedrático: Ing. Pablo Antonio de León Bautista. Código: (2014) Pre-Requisito: Post-Requisito:
EJERCICIOS DE EXPRESIONES REGULARES Y AUTOMATAS 1.α + (β + γ) = (α + β) + γ 2.α + β = β + α 3.α + Ø = α 4.α + α = α 5.α · λ = α 6.α · Ø = Ø 7.α · (β ·
¿Cómo nos comunicamos?.
AUTOMATAS GENERALIDADES AUTOR: MARIA FERNANDA DUARTE PORTUGAL C.I. : ASIGNATURA : ESTRUCTURA DISCRETA Y GRAFOS CARRERA: ING, EN SISTEMAS MAYO 2019.
INTRODUCCION A LOS AUTOMATAS Lic. Luis Enrique hernandez.
Automata de Pila
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