Computabilidad y Lenguajes Formales: Autómatas de Pila

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Computabilidad y Lenguajes Formales: Autómatas de Pila"

Transcripción

1 300CIG007 Computabilidad y Lenguajes Formales: Autómatas de Pila Pontificia Universidad Javeriana Cali Ingeniería de Sistemas y Computación Prof. Gloria Inés Alvarez V. Basado en [SIPSER, Chapter 2]

2 Autómatas de Pila (PushDown Autómata PDA) Un PDA se compone de dos cintas (pueden ser de longitud infinita), la primera cinta contiene la entrada (cadena que va a ser reconocida), y la segunda una pila. Son equivalentes en poder de expresión a las Gramáticas Libres de Contexto Pila x y z Entrada a a a Control de Estados b

3

4 Autómatas de Pila (PDA) Formalmente un PDA es una 7-tupla (Q,, Γ, δ, q 0, z 0, F), donde: Q es un conjunto finito de estados es el alfabeto de entrada (un conjunto finito) Γ es el alfabeto de la pila (un conjunto finito) δ : Qx ε xγ ε P(QxΓ ε ) es la función de transición q 0 Q es el estado de inicio z 0 Γ es el símbolo de inicio F Q es el conjunto de estados de aceptación (un conjunto finito)

5 Autómatas de Pila (PDA) Un PDA funciona realizando dos tipos de movimientos: Movimientos que dependen del símbolo siguiente en la cadena de entrada: δ(q, a, z) = { (p 1, γ 1 ), (p 2, γ 2 ), (p m, γ m ) } Donde q y p i, 1 i m, son estados, a, z Γ, γ i Γ*, 1 i m, tales que cuando el PDA está en el estado q, con el símbolo de entrada a, y z en el tope de la pila, para algún i, el PDA entra al estado p i, reemplaza a z por la cadena γ i, y avanza en la cadena de entrada.

6 Autómatas de Pila (PDA) Un PDA funciona realizando dos tipos de movimientos: ε-movimientos: δ(q, ε, z) = { (p 1, γ 1 ), (p 2, γ 2 ), (p m, γ m ) } Donde q y p i, 1 i m, son estados, z Γ, γ i Γ*, 1 i m, tales que cuando el PDA está en el estado q, independiente del símbolo en la cadena de entrada, con z en el tope de la pila, para algún i, el PDA puede entrar al estado p i, reemplaza a z por la cadena γ i.

7 Autómatas de Pila (PDA): Ejemplo M = (Q,, Γ, δ, q 0, $, F), donde: Q = {q0, q 1, q 2,q 3 } = { a, b, c }, Γ = { a, b, $ } δ = { (q0, ε, ε) (q 1, $), (q 1, a, ε) (q 1, a), (q 1, b, ε) (q 1, b), (q 1, c, ε) (q 2, ε), (q 2, a, a) (q 2, ε), (q 2, b, b) (q 2, ε), (q 2, ε, $) (q 3, ε) } F = {q3 } Que lenguaje reconoce este PDA? q 0 q 3 ε,ε $ ε,$ ε q 2 q1 a,ε a b,ε b c,ε ε a,a ε b,b ε

8 PDA Determinista Un PDA M = (Q,, Γ, δ, q 0, $, F), es determinista si: Para todo q Q y z Γ, siempre que δ (q, ε, z) no es vacío, entonces δ (q, a, z) es vacía para todo a No existe un q Q, z Γ, y a ε, tal que δ (q, a, z) contiene mas de un elemento. Los PDA Deterministas no son equivalentes a los PDA no deterministas, en cuanto al conjunto de lenguajes que aceptan. Ejemplo: que sucede con el lenguaje L = { ww R : w {a, b}* }?

9 Equivalencia de PDA y CFG Teorema: Un Lenguaje es Libre de Contexto (CFL) si y solo si existe algún autómata de pila que lo reconoce Lema 1: Si un Lenguaje es Libre de Contexto (CFL) entonces existe algún autómata de pila que lo reconoce Lema 2: Si un autómata de pila reconoce un lenguaje, entonces el Lenguaje es Libre de Contexto (CFL)

10 Equivalencia de PDA y CFG: Lema 1 Sea A un CFL, por definición A tiene una CFG G que lo genera, entonces es necesario convertir G en un PDA P capaz de reconocer A. P puede funcionar de la siguiente manera: Adicione a la pila un símbolo que marque el inicio ($) y el símbolo inicial de G Repita: Si en el tope de la pila esta un no terminal N, de manera aleatoria seleccione una de las reglas producción de N, N Y 1 Y 2 Y k, y sustituya en la pila N por los símbolos del lado derecho de la regla seleccionada, en orden inverso (pop N, push(y k ), push(y k-1 ), push(y 2 ), push(y 1 ) Si en el tope de la pila hay un símbolo terminal a, lea el siguiente símbolo de la cadena de entrada y comparelo con a, si coinciden haga pop de a. Si no coinciden, rechace esta rama del no-determinismo. Si en el tope de la pila está el simbolo $, entre en el estado de aceptación.

11 Equivalencia de PDA y CFG: Lema 1 Formalmente, P = (Q,, Γ, δ, q 0, $, F), se construye así: Q = { q start, q loop, q accept } δ(q start, ε, ε) = (q loop, S$), donde S es el símbolo inicial de la gramática δ(q start, ε, ε) = (q loop, S$), donde S es el símbolo inicial de la gramática δ(q loop, ε, N) = {(q loop, w) : N w es una regla de producción de G } δ(q loop,a, a) = { (q loop, ε) }, donde a δ(q loop,, ε, ε) = { (q accept, ε) }

12 Equivalencia de PDA y CFG: Lema 1: Ejemplo Dada G = (N, Σ, P, S), N = { S }, Σ = { a, b }, P = { S a S b, S a b }

13 Equivalencia de PDA y CFG: Lema 2 Si un autómata de pila reconoce un lenguaje, entonces el Lenguaje es Libre de Contexto (CFL) El automáta de pila debe cumplir las siguientes condiciones. Tiene un solo estado de aceptación qf, al cual llega si y solo si la pila esta vacía Cada transición hace un push o un pop de la pila, pero no ambos. Todo NPDA tiene un NPDA equivalente que cumple las dos condiciones.

14 Equivalencia de PDA y CFG: Lema 2 Si se crea una gramática cuyos símbolos no terminales son de la forma Apq, donde p y q Q Sea P = (Q,, Γ, δ, q 0, $, {q accept }), se construye la gramática G de la siguiente manera: El símbolo inicial es Aq 0 q accept Para todo p, q, r, s Q, t Γ, y a,b ε si δ(p,a, Ɛ) contiene (r,t), y δ(s,b,t) contiene (q, Ɛ ), agregue la regla Apq aarsb Para todo p,q,r Q agregue la regla Apq AprArq Para todo p Q agregue la regla App Ɛ

15 Pumping Lema para CFL Teorema: Si A es un Lenguaje Libre de Contexto (CFL) entonces existe un numero p (pumping length) donde, si s es alguna cadena que pertenece a A de longitud mayor o igual a p, entonces s puede ser dividido en 5 partes s = uvxyz que satisfacen las siguientes condiciones: Para todo i >= 0, uv i xy i z A, vy > 0 vxy <= p

Computabilidad y Lenguajes Formales: Autómatas Finitos

Computabilidad y Lenguajes Formales: Autómatas Finitos 300CIG007 Computabilidad y Lenguajes Formales: Autómatas Finitos Pontificia Universidad Javeriana Cali Ingeniería de Sistemas y Computación Prof. Gloria Inés Alvarez V. No Determinismo Hasta ahora cada

Más detalles

Autómatas de Pila y Lenguajes Incontextuales

Autómatas de Pila y Lenguajes Incontextuales Autómatas de Pila y Lenguajes Incontextuales Elvira Mayordomo Universidad de Zaragoza 5 de noviembre de 2012 Contenido de este tema 1. Introducción a los autómatas de pila 2. Definiciones 3. Equivalencia

Más detalles

Unidad 4. Autómatas de Pila

Unidad 4. Autómatas de Pila Unidad 4. Autómatas de Pila Una de las limitaciones de los AF es que no pueden reconocer el lenguaje {0 n 1 n } debido a que no se puede registrar para todo n con un número finito de estados. Otro lenguaje

Más detalles

Autómatas de Pila. Descripciones instantáneas o IDs. El Lenguaje de PDA. Equivalencia entre PDAs y CFGs INAOE (INAOE) 1 / 50

Autómatas de Pila. Descripciones instantáneas o IDs. El Lenguaje de PDA. Equivalencia entre PDAs y CFGs INAOE (INAOE) 1 / 50 INAOE (INAOE) 1 / 50 Contenido 1 2 3 4 (INAOE) 2 / 50 Pushdown Automata Las gramáticas libres de contexto tienen un tipo de autómata que las define llamado pushdown automata. Un pushdown automata (PDA)

Más detalles

5 Autómatas de pila 5.1 Descripción informal. 5.2 Definiciones

5 Autómatas de pila 5.1 Descripción informal. 5.2 Definiciones 1 Curso Básico de Computación 5 Autómatas de pila 5.1 Descripción informal Un autómata de pila es esencialmente un autómata finito que controla una cinta de entrada provista de una cabeza de lectura y

Más detalles

Equivalencia Entre PDA y CFL

Equivalencia Entre PDA y CFL Equivalencia Entre PDA y CFL El Lenguaje aceptado por un Autómata con Pila Universidad de Cantabria Esquema 1 Introducción 2 3 Lenguaje Aceptado por un Autómata Como en los autómatas finitos, se puede

Más detalles

MODELOS DE COMPUTACION I Preguntas Tipo Test. 1. El lema de bombeo puede usarse para demostrar que un lenguaje determinado es regular.

MODELOS DE COMPUTACION I Preguntas Tipo Test. 1. El lema de bombeo puede usarse para demostrar que un lenguaje determinado es regular. MODELOS DE COMPUTACION I Preguntas Tipo Test Indicar si son verdaderas o falsas las siguientes afirmaciones: 1. El lema de bombeo puede usarse para demostrar que un lenguaje determinado es regular. 2.

Más detalles

Autómatas Finitos Deterministicos (DFA)

Autómatas Finitos Deterministicos (DFA) Autómatas Finitos Deterministicos (DFA) Introducción a la Lógica y la Computación Fa.M.A.F., Universidad Nacional de Córdoba 26/0/6 Info útil Bibliografía: Introducción a la teoría de autómatas, lenguajes

Más detalles

El Autómata con Pila

El Autómata con Pila El Autómata con Pila Una Generalización del Autómata Finito Universidad de Cantabria Esquema 1 2 3 4 Los autómatas son abstracciones de maquinas de calcular, como hemos visto. Los más sencillos no tienen

Más detalles

Compiladores: Análisis Sintáctico. Pontificia Universidad Javeriana Cali Ingenieria de Sistemas y Computación Prof. Gloria Inés Alvarez V.

Compiladores: Análisis Sintáctico. Pontificia Universidad Javeriana Cali Ingenieria de Sistemas y Computación Prof. Gloria Inés Alvarez V. Compiladores: Análisis Sintáctico Pontificia Universidad Javeriana Cali Ingenieria de Sistemas y Computación Prof. Gloria Inés Alvarez V. Sintaxis Define la estructura del lenguaje Ejemplo: Jerarquía en

Más detalles

Temas. Objetivo. Que el estudiante logre: 1) Identificar conceptos constructivos de la Teoría de la Computabilidad. 2) Definir autómatas de pila.

Temas. Objetivo. Que el estudiante logre: 1) Identificar conceptos constructivos de la Teoría de la Computabilidad. 2) Definir autómatas de pila. 0 Temas Definición de autómata de pila Autómata de pila determinístico y no determinístico Objetivo Que el estudiante logre: 1) Identificar conceptos constructivos de la Teoría de la Computabilidad. 2)

Más detalles

Gramáticas independientes del contexto AUTÓMATAS Y LENGUAJES FORMALES LENGUAJES INDEPENDIENTES DEL CONTEXTO Y AUTÓMATAS DE PILA. Otras definiciones I

Gramáticas independientes del contexto AUTÓMATAS Y LENGUAJES FORMALES LENGUAJES INDEPENDIENTES DEL CONTEXTO Y AUTÓMATAS DE PILA. Otras definiciones I Gramáticas independientes del contexto UTÓMTS Y LENGUJES FORMLES LENGUJES INDEPENDIENTES DEL CONTEXTO Y UTÓMTS DE PIL Francisco Hernández Quiroz Departamento de Matemáticas Facultad de Ciencias, UNM E-mail:

Más detalles

El Autómata con Pila: Transiciones

El Autómata con Pila: Transiciones El Autómata con Pila: Transiciones El Espacio de Configuraciones Universidad de Cantabria Esquema Introducción 1 Introducción 2 3 Transiciones Necesitamos ahora definir, paso por paso, como se comporta

Más detalles

Un autómata con pila no determinista (APND) es una septupla Q A B F en la que

Un autómata con pila no determinista (APND) es una septupla Q A B F en la que AUTÓMATAS CON PILA Un autómata con pila no determinista (APND) es una septupla Q A F en la que δ q 0 Q es un conjunto finito de estados A es un alfabeto de entrada es un alfabeto para la pila δ es la función

Más detalles

Máquinas de Turing IIC3242. IIC3242 Máquinas de Turing 1 / 45

Máquinas de Turing IIC3242. IIC3242 Máquinas de Turing 1 / 45 Máquinas de Turing IIC3242 IIC3242 Máquinas de Turing 1 / 45 Complejidad Computacional Objetivo: Medir la complejidad computacional de un problema. Vale decir: Medir la cantidad de recursos computacionales

Más detalles

Tema: Autómata de Pila

Tema: Autómata de Pila Facultad: Ingeniería Escuela: Computación Asignatura: Compiladores 1 Tema: Autómata de Pila Contenido La presente guía aborda los autómatas de pila, y se enfoca en la aplicación que se le puede dar a estas

Más detalles

6. Autómatas a Pila. Grado Ingeniería InformáDca Teoría de Autómatas y Lenguajes Formales

6. Autómatas a Pila. Grado Ingeniería InformáDca Teoría de Autómatas y Lenguajes Formales 6. Autómatas a Pila Araceli Sanchis de Miguel Agapito Ledezma Espino José A. Iglesias Mar

Más detalles

Procesadores de Lenguaje

Procesadores de Lenguaje Procesadores de Lenguaje Repaso TALF Cristina Tîrnăucă Dept. Matesco, Universidad de Cantabria Fac. Ciencias Ing. Informática Primavera de 2013 La Jerarquía de Chomsky Cuatro niveles de lenguajes formales

Más detalles

Expresiones Regulares y Derivadas Formales

Expresiones Regulares y Derivadas Formales y Derivadas Formales Las Derivadas Sucesivas. Universidad de Cantabria Esquema 1 2 3 Derivadas Sucesivas Recordemos que los lenguajes de los prefijos dan información sobre los lenguajes. Derivadas Sucesivas

Más detalles

Clase 17: Autómatas de pila

Clase 17: Autómatas de pila Solicitado: Ejercicios 14: Autómatas de pila de GLC M. en C. Edgardo Adrián Franco Martínez http://computacion.cs.cinvestav.mx/~efranco @efranco_escom edfrancom@ipn.mx 1 Contenido Autómata de pila Definición

Más detalles

Máquinas de Turing IIC3242. IIC3242 Máquinas de Turing 1 / 42

Máquinas de Turing IIC3242. IIC3242 Máquinas de Turing 1 / 42 Máquinas de Turing IIC3242 IIC3242 Máquinas de Turing 1 / 42 Complejidad Computacional Objetivo: Medir la complejidad computacional de un problema. Vale decir: Medir la cantidad de recursos computacionales

Más detalles

EJERCICIOS del TEMA 3: Lenguajes independientes del contexto

EJERCICIOS del TEMA 3: Lenguajes independientes del contexto EJERCICIOS del TEMA 3: Lenguajes independientes del contexto Sobre GICs (gramáticas independientes del contexto) 1. Sea G una gramática con las siguientes producciones: S ASB ε A aab ε B bba ba c ) d )

Más detalles

Pregunta 1 [40 puntos] Diga si las siguientes afirmaciones son verdaderas o falsas, demostrando su respuesta.

Pregunta 1 [40 puntos] Diga si las siguientes afirmaciones son verdaderas o falsas, demostrando su respuesta. Pregunta 1 [40 puntos] Diga si las siguientes afirmaciones son verdaderas o falsas, demostrando su respuesta. (a) Es posible aceptar por stack vacío el lenguaje {0 i 1 j i = j o j = 2i} con un AA determinístico.

Más detalles

Paso 1: Autómata. A 1 sin estados inútiles, que reconoce el lenguaje denotado por a a* b*

Paso 1: Autómata. A 1 sin estados inútiles, que reconoce el lenguaje denotado por a a* b* UNIVERSIDAD DE CÓRDOBA ESCUELA POLITÉCNICA SUPERIOR DEPARTAMENTO DE INFORMÁTICA Y ANÁLISIS NUMÉRICO INGENIERÍA TÉCNICA EN INFORMÁTICA DE SISTEMAS SEGUNDO CURSO, SEGUNDO CUATRIMESTRE TEORÍA DE AUTÓMATAS

Más detalles

Lenguajes (gramáticas y autómatas)

Lenguajes (gramáticas y autómatas) Lenguajes (gramáticas y autómatas) Elvira Mayordomo Universidad de Zaragoza 19 de septiembre de 2013 Elvira Mayordomo (Universidad de Zaragoza) Lenguajes (gramáticas y autómatas) 19 de septiembre de 2013

Más detalles

Autómatas Mínimos. Encontrar el autómata mínimo. Universidad de Cantabria. Introducción Minimización de Autómatas Deterministas Resultados Algoritmo

Autómatas Mínimos. Encontrar el autómata mínimo. Universidad de Cantabria. Introducción Minimización de Autómatas Deterministas Resultados Algoritmo Autómatas Mínimos Encontrar el autómata mínimo. Universidad de Cantabria Introducción Dado un lenguaje regular sabemos encontrar un autómata finito. Pero, hay autómatas más sencillos que aceptan el mismo

Más detalles

AUTÓMATAS DE PILA Y LENGUAJES INDEPENDIENTES DEL CONTEXTO

AUTÓMATAS DE PILA Y LENGUAJES INDEPENDIENTES DEL CONTEXTO Autómatas de pila y lenguajes independientes del contexto -1- AUTÓMATAS DE PILA Y LENGUAJES INDEPENDIENTES DEL CONTEXTO AUTÓMATAS DE PILA - Son autómatas finitos con una memoria en forma de pila. - Símbolos

Más detalles

Interrogación 2. Pontificia Universidad Católica de Chile Escuela de Ingeniería Departamento de Ciencia de la Computación. Segundo Semestre, 2003

Interrogación 2. Pontificia Universidad Católica de Chile Escuela de Ingeniería Departamento de Ciencia de la Computación. Segundo Semestre, 2003 Pontificia Universidad Católica de Chile Escuela de Ingeniería Departamento de Ciencia de la Computación Interrogación 2 IIC 2222 Teoría de Autómatas y Lenguajes Formales Segundo Semestre, 2003 Esta interrogación

Más detalles

Lenguajes, Gramáticas y Autómatas Conceptos

Lenguajes, Gramáticas y Autómatas Conceptos Lenguajes, Gramáticas y Autómatas Conceptos Departamento de Informática e Ingeniería de Sistemas C.P.S. Universidad de Zaragoza Última revisión: Febrero. 2004 11/02/2004 1 Índice Alfabetos, palabras y

Más detalles

PONTIFICIA UNIVERSIDAD CATOLICA DEL ECUADOR FACULTAD DE INGENIERIA ESCUELA DE INGENIERIA DE SISTEMAS

PONTIFICIA UNIVERSIDAD CATOLICA DEL ECUADOR FACULTAD DE INGENIERIA ESCUELA DE INGENIERIA DE SISTEMAS PONTIFICIA UNIVERSIDAD CATOLICA DEL ECUADOR FACULTAD DE INGENIERIA ESCUELA DE INGENIERIA DE SISTEMAS 1. DATOS INFORMATIVOS MATERIA: DISEÑO DE LENGUAJES Y AUTOMATAS: CARRERA: INGENIERÍA DE SISTEMAS NIVEL:

Más detalles

Inducción en definiciones y demostraciones AUTÓMATAS Y LENGUAJES FORMALES PRELIMINARES MATEMÁTICOS. Números naturales. Inducción matemática

Inducción en definiciones y demostraciones AUTÓMATAS Y LENGUAJES FORMALES PRELIMINARES MATEMÁTICOS. Números naturales. Inducción matemática Inducción en definiciones y demostraciones AUTÓMATAS Y LENGUAJES FORMALES PRELIMINARES MATEMÁTICOS Francisco Hernández Quiroz Departamento de Matemáticas Facultad de Ciencias, UNAM E-mail: fhq@ciencias.unam.mx

Más detalles

Expresiones regulares, gramáticas regulares

Expresiones regulares, gramáticas regulares Expresiones regulares, gramáticas regulares Los LR en la jerarquía de Chomsky La clasificación de lenguajes en clases de lenguajes se debe a N. Chomsky, quien propuso una jerarquía de lenguajes, donde

Más detalles

Sentido de recorrido. q i

Sentido de recorrido. q i Sentido de recorrido σ Cinta Cabeza de lectura γ Pila i Unidad de control de estados Componentes básicos de un autómata con pila. σ i 1 σ i j σ i j+1 σ i p Z (a) γ l 1 γ l 2 γ l σ i 1 σ i j σ i j+1 σ i

Más detalles

Una cadena sobre Σ es cualquier secuencia de elementos de longitud finita sobre Σ.

Una cadena sobre Σ es cualquier secuencia de elementos de longitud finita sobre Σ. Alfabetos, Cadenas y Lenguajes Definición 1 Un Alfabeto es cualquier conjunto finito, no vacío. Ejemplo 1 Sea Σ = {0, 1, 2, 3,..., 9} donde 0 Σ Definición 2 Una cadena sobre Σ es cualquier secuencia de

Más detalles

Fundamentos de Ciencias de la Computación Trabajo Práctico N 2 Lenguajes Libres del Contexto y Sensibles al Contexto Segundo Cuatrimestre de 2002

Fundamentos de Ciencias de la Computación Trabajo Práctico N 2 Lenguajes Libres del Contexto y Sensibles al Contexto Segundo Cuatrimestre de 2002 Departamento de Cs. e Ingeniería de la Computación Universidad Nacional del Sur Ejercicios Fundamentos de Ciencias de la Computación Trabajo Práctico N 2 Lenguajes Libres del Contexto y Sensibles al Contexto

Más detalles

Texto: Hopcroft, J. E., Motwani, R., Ullman, J.D., Introduction to Automata Theory, Languajes, and Computation. 3rd Edition. Addison Wesley, 2007.

Texto: Hopcroft, J. E., Motwani, R., Ullman, J.D., Introduction to Automata Theory, Languajes, and Computation. 3rd Edition. Addison Wesley, 2007. Universidad de Puerto Rico Recinto de Mayagüez Facultad de Artes y Ciencias DEPARTAMENTO DE CIENCIAS MATEMÁTICAS Programa de Autómata y Lenguajes Formales Curso: Autómata y Lenguajes Formales Codificación:

Más detalles

Autómatas Deterministas. Ivan Olmos Pineda

Autómatas Deterministas. Ivan Olmos Pineda Autómatas Deterministas Ivan Olmos Pineda Introducción Los autómatas son una representación formal muy útil, que permite modelar el comportamiento de diferentes dispositivos, máquinas, programas, etc.

Más detalles

Teoría de Lenguajes y Autómatas Conceptos y teoremas fundamentales

Teoría de Lenguajes y Autómatas Conceptos y teoremas fundamentales Se prohíbe la reproducción total o parcial de este documento, excepto para uso privado de los alumnos de la asignatura Teoría de Autómatas I de la UNED y los alumnos de asignaturas equivalentes de otras

Más detalles

Procesadores de Lenguaje

Procesadores de Lenguaje Procesadores de Lenguaje Analizadores sintácticos descendentes: LL(1) Cristina Tîrnăucă Dept. Matesco, Universidad de Cantabria Fac. Ciencias Ing. Informática Primavera de 2013 Analizadores sintácticos

Más detalles

TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES Práctica 3

TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES Práctica 3 TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES Práctica 3 1. Equivalencia entre autómatas 1.1. Equivalencia entre AFD y AFN 1.1. Equivalencia entre AFD y AFλ 2. Ejercicios propuestos 1. Equivalencia entre autómatas

Más detalles

Teoría de Lenguajes. Clase Teórica 7 Autómatas de Pila y Lenguajes Independientes del Contexto Primer cuartimestre 2014

Teoría de Lenguajes. Clase Teórica 7 Autómatas de Pila y Lenguajes Independientes del Contexto Primer cuartimestre 2014 Teoría de Lenguajes Clase Teórica 7 Autómatas de Pila y Lenguajes Independientes del Contexto Primer cuartimestre 2014 aterial compilado por el Profesor Julio Jacobo, a lo largo de distintas ediciones

Más detalles

3.3 Autómatas de Pila (AP) [LP81, sec 3.3]

3.3 Autómatas de Pila (AP) [LP81, sec 3.3] 3.3. AUTÓMATAS DE PILA (AP) 49 Ejemplo 3.8 Tal como con ERs, no siempre es fácil diseñar una GLC que genere cierto lenguaje. Un ejercicio interesante es {w {a,b}, w tiene la misma cantidad de a s y b s

Más detalles

Máquinas Secuenciales, Autómatas y Lenguajes. Tema 3.1: Autómatas Finitos Deterministas

Máquinas Secuenciales, Autómatas y Lenguajes. Tema 3.1: Autómatas Finitos Deterministas Tema 3.1: Autómatas Finitos Deterministas Luis Peña luis.pena@urjc.es http://www.ia.urjc.es/cms/es/docencia/ic-msal Sumario Tema 3.1: Autómatas Finitos Deterministas. 1. Concepto de AFD 2. Equivalencia

Más detalles

Teoría de Autómatas y Lenguajes Formales. Introducción a las Gramáticas. Gramáticas incontextuales

Teoría de Autómatas y Lenguajes Formales. Introducción a las Gramáticas. Gramáticas incontextuales Teoría de utómatas y Lenguajes Formales Introducción a las ramáticas. ramáticas incontextuales José M. Sempere Departamento de Sistemas Informáticos y Computación Universidad Politécnica de Valencia Introducción

Más detalles

GRAMATICAS LIBRES DEL CONTEXTO

GRAMATICAS LIBRES DEL CONTEXTO GRMTICS LIBRES DEL CONTEXTO Estas gramáticas, conocidas también como gramáticas de tipo 2 o gramáticas independientes del contexto, son las que generan los lenguajes libres o independientes del contexto.

Más detalles

Ingeniería en Computación. Autómatas y Lenguajes Formales. Unidad de competencia IV: Conocer, utilizar y diseñar gramáticas de libre contexto

Ingeniería en Computación. Autómatas y Lenguajes Formales. Unidad de competencia IV: Conocer, utilizar y diseñar gramáticas de libre contexto Universidad Autónoma del Estado de México Centro Universitario UAEM Texcoco Departamento de Ciencias Aplicadas. Ingeniería en Computación. Autómatas y Lenguajes Formales. Unidad de competencia IV: Conocer,

Más detalles

Tema 5 Lenguajes independientes del contexto. Sintaxis

Tema 5 Lenguajes independientes del contexto. Sintaxis Tema 5 Lenguajes independientes del contexto. Sintaxis 1 Gramáticas independientes del contexto Transformación de gramáticas independientes del contexto Autómatas de pila Obtención de un autómata de pila

Más detalles

8.1 Indecibilidad 8.5 Indecibilidad en el problema de la correspondencia de Post

8.1 Indecibilidad 8.5 Indecibilidad en el problema de la correspondencia de Post 1 Curso Básico de Computación 8.1 Indecibilidad 8.5 Indecibilidad en el problema de la correspondencia de Post Los problemas indecidibles aparecen en varias áreas. En las próximas tres secciones se analizarán

Más detalles

INAOE. Gramáticas Libres de Contexto. Definición formal de CFGs. Derivaciones usando. Derivaciones. izquierda y. derecha.

INAOE. Gramáticas Libres de Contexto. Definición formal de CFGs. Derivaciones usando. Derivaciones. izquierda y. derecha. s s INAOE en s (INAOE) 1 / 67 Contenido s en s 1 s 2 3 4 5 6 7 8 en s (INAOE) 2 / 67 s s s Hemos visto que muchos lenguajes no son regulares. Por lo que necesitamos una clase más grande de lenguages Las

Más detalles

Autómatas finitos no deterministas (AFnD)

Autómatas finitos no deterministas (AFnD) Autómatas finitos no deterministas (AFnD) Elvira Mayordomo Universidad de Zaragoza 1 de octubre de 2012 Contenido de este tema Introducción y ejemplos de autómatas finitos no deterministas Definición de

Más detalles

Teoría de Lenguajes. Clase Teórica 8 Propiedades de Lenguajes Independientes de Contexto y su Lema de Pumping Primer cuartimestre 2014

Teoría de Lenguajes. Clase Teórica 8 Propiedades de Lenguajes Independientes de Contexto y su Lema de Pumping Primer cuartimestre 2014 Teoría de Lenguajes Clase Teórica 8 Propiedades de Lenguajes Independientes de Contexto y su Lema de Pumping Primer cuartimestre 2014 Estas notas están basadas en el material compilado por el Profesor

Más detalles

LENGUAJES FORMALES Y AUTÓMATAS

LENGUAJES FORMALES Y AUTÓMATAS LENGUAJES FORMALES Y AUTÓMATAS Departamento de Lenguajes y Sistemas Informáticos Escuela Técnica Superior de Ingeniería Informática Universidad de Sevilla Víctor J. Díaz Madrigal José Miguel Cañete Valdeón

Más detalles

Traductores Push Down para Gramáticas LL

Traductores Push Down para Gramáticas LL Push Down para Gramáticas LL Extensión de Autómatas Universidad de Cantabria Outline El Problema 1 El Problema 2 3 4 El Problema Podemos resolver el problema de la palabra para lenguajes generados por

Más detalles

2do. Parcial. Todos los ejercicios se entregarán en hojas separadas. El examen tipo test cuenta hasta 2 puntos sobre la nota total.

2do. Parcial. Todos los ejercicios se entregarán en hojas separadas. El examen tipo test cuenta hasta 2 puntos sobre la nota total. U.R.J.C. Ingeniera Técnica en Informática de Sistemas Teoría de Autómatas y Lenguajes Formales Junio 2009 2do. Parcial Normas : La duración del examen es de 2 horas. Todos los ejercicios se entregarán

Más detalles

Conjuntos. Un conjunto es una colección de objetos. Si a es un objeto y R es un conjunto entonces por. a R. se entiende que a pertenece a R.

Conjuntos. Un conjunto es una colección de objetos. Si a es un objeto y R es un conjunto entonces por. a R. se entiende que a pertenece a R. Conjuntos Un conjunto es una colección de objetos. Si a es un objeto y R es un conjunto entonces por se entiende que a pertenece a R. a R Normalmente, podremos definir a un conjunto de dos maneras: Por

Más detalles

El análisis descendente LL(1) 6, 7 y 13 de abril de 2011

El análisis descendente LL(1) 6, 7 y 13 de abril de 2011 6, 7 y 13 de abril de 2011 Analizadores sintácticos (repaso) Los analizadores descendentes: Corresponden a un autómata de pila determinista. Construyen un árbol sintáctico de la raíz hacia las hojas (del

Más detalles

13.3. MT para reconocer lenguajes

13.3. MT para reconocer lenguajes 13.3. MT para reconocer lenguajes Gramática equivalente a una MT Sea M=(Γ,Σ,,Q,q 0,f,F) una Máquina de Turing. L(M) es el lenguaje aceptado por la máquina M. A partir de M se puede crear una gramática

Más detalles

06 Análisis léxico II

06 Análisis léxico II 2 Contenido Alfabetos, símbolos y cadenas Operaciones con cadenas Concatenación de dos cadenas Prefijos y sufijos de una cadena Subcadena y subsecuencia Inversión de una cadena Potencia de una cadena Ejercicios

Más detalles

Tema 2. Fundamentos de la Teoría de Lenguajes Formales

Tema 2. Fundamentos de la Teoría de Lenguajes Formales Departamento de Tecnologías de la Información Tema 2. Fundamentos de la Teoría de Lenguajes Formales Ciencias de la Computación e Inteligencia Artificial Índice 2.1. Alfabeto 2.2. Palabra 2.3. Operaciones

Más detalles

Propiedades de los Lenguajes Libres de Contexto

Propiedades de los Lenguajes Libres de Contexto Propiedades de los Lenguajes Libres de Contexto 15 de junio de 2015 15 de junio de 2015 1 / 1 Contenido 15 de junio de 2015 2 / 1 Introducción Introducción Simplificación de CFG s. Esto facilita la vida,

Más detalles

Bases Formales de la Computación: Sesión 3. Modelos Ocultos de Markov

Bases Formales de la Computación: Sesión 3. Modelos Ocultos de Markov Bases Formales de la Computación: Sesión 3. Prof. Gloria Inés Alvarez V. Departamento de Ciencias e Ingeniería de la Computación Pontificia Universidad Javeriana Cali Periodo 2008-2 Contenido 1 Introducción

Más detalles

Sumario: Teoría de Autómatas y Lenguajes Formales. Capítulo 2: Lenguajes Formales. Capítulo 2: Lenguajes Formales

Sumario: Teoría de Autómatas y Lenguajes Formales. Capítulo 2: Lenguajes Formales. Capítulo 2: Lenguajes Formales Teoría de Autómatas y Lenguajes Formales Capítulo 2: Lenguajes Formales Holger Billhardt holger.billhardt@urjc.es Sumario: Capítulo 2: Lenguajes Formales 1. Concepto de Lenguaje Formal 2. Operaciones sobre

Más detalles

Capítulo 7: Expresiones Regulares

Capítulo 7: Expresiones Regulares Capítulo 7: Expresiones Regulares 7.1. Concepto de expresión regular 7.1.1. Definición 7.1.2. Lenguaje descrito 7.1.3. Propiedades 7.2. Teoremas de equivalencia 7.2.1. Obtener un AFND a partir de una expresión

Más detalles

ESCUELA: UNIVERSIDAD DEL ISTMO

ESCUELA: UNIVERSIDAD DEL ISTMO 1.-IDENTIFICACIÓN ESCUELA: UNIVERSIDAD DEL ISTMO CLAVE: 3041 GRADO: ING. EN COMPUTACIÓN, CUARTO SEMESTRE TIPO DE TEÓRICA/PRÁCTICA ANTECEDENTE CURRICULAR: 3033.- OBJETIVO GENERAL Proporcionar al alumno

Más detalles

Lenguajes y Gramáticas

Lenguajes y Gramáticas Lenguajes y Gramáticas Teoría de Lenguajes Fernando Naranjo Introduccion Se desarrollan lenguajes de programación basados en el principio de gramática formal. Se crean maquinas cada vez mas sofisticadas

Más detalles

Máquinas Secuenciales, Autómatas y Lenguajes Formales. Tema 4: Autómatas finitos deterministas. Holger Billhardt holger.billhardt@urjc.

Máquinas Secuenciales, Autómatas y Lenguajes Formales. Tema 4: Autómatas finitos deterministas. Holger Billhardt holger.billhardt@urjc. Formales Tema 4: Autómatas finitos deterministas Holger Billhardt holger.billhardt@urjc.es Sumario: Bloque 2: Autómatas Finitos 4. Autómatas Finitos Deterministas 1. Concepto y Definición 2. Autómata finito

Más detalles

Modelos Computacionales

Modelos Computacionales Análisis y Complejidad de Algoritmos Modelos Computacionales Arturo Díaz Pérez El circuito lógico La máquina de estados finitos La máquina de acceso aleatorio La máquina de Turing Compuertas Lógicas Compuerta

Más detalles

Teoría de la Computación

Teoría de la Computación Teoría de la Computación Lenguajes, autómatas, gramáticas Rodrigo De Castro Korgi Ph.D. en Matemáticas University of Illinois, U.S.A. Departamento de Matemáticas Universidad Nacional de Colombia, Bogotá

Más detalles

No todos los LRs finitos se representan mejor con ERs. Observe el siguiente ejemplo:

No todos los LRs finitos se representan mejor con ERs. Observe el siguiente ejemplo: 1 Clase 3 SSL EXPRESIONES REGULARES Para REPRESENTAR a los Lenguajes Regulares. Se construyen utilizando los caracteres del alfabeto sobre el cual se define el lenguaje, el símbolo y operadores especiales.

Más detalles

Convertir un AFND a un AFD

Convertir un AFND a un AFD Convertir un AFND a un AFD Existe una equivalencia entre los AFD y AFN, de forma que un autómata M es equivalente a un autómata M' si L(M) ) L(M'). Ejemplo: Los autómatas de la siguiente figura son equivalentes.

Más detalles

Introducción a los Autómatas Finitos

Introducción a los Autómatas Finitos Teoría de Introducción a los Un modelo de Computación. Universidad de Cantabria Esquema Introducción Teoría de 1 Introducción 2 Teoría de 3 4 5 El Problema Introducción Teoría de Nuestro objetivo en este

Más detalles

Clase 09: AFN, AFD y Construcción de Thompson

Clase 09: AFN, AFD y Construcción de Thompson Clase 09: AFN, AFD y Construcción de Thompson Solicitado: Ejercicios 07: Construcción de AFN scon Thompson M. en C. Edgardo Adrián Franco Martínez http://computacion.cs.cinvestav.mx/~efranco @efranco_escom

Más detalles

IIC2213. IIC2213 Teorías 1 / 42

IIC2213. IIC2213 Teorías 1 / 42 Teorías IIC2213 IIC2213 Teorías 1 / 42 Qué es una teoría? Una teoría es un cúmulo de información. Debe estar libre de contradicciones. Debe ser cerrada con respecto a lo que se puede deducir de ella. Inicialmente

Más detalles

Capítulo 1 Lenguajes formales 6

Capítulo 1 Lenguajes formales 6 Capítulo 1 Lenguajes formales 6 1.8. Operaciones entre lenguajes Puesto que los lenguajes sobre Σ son subconjuntos de Σ, las operaciones usuales entre conjuntos son también operaciones válidas entre lenguajes.

Más detalles

Herramientas. 1 FormaLex, Departamento de Computación, FCEyN, Universidad de Buenos Aires, Buenos Aires, Argentina

Herramientas. 1 FormaLex, Departamento de Computación, FCEyN, Universidad de Buenos Aires, Buenos Aires, Argentina 1 Sergio Mera 1 1 FormaLex, Departamento de Computación, FCEyN, Universidad de Buenos Aires, Buenos Aires, Argentina Introducción al Análisis Formal de Normas Legales, segundo cuatrimestre de 2014 (2)

Más detalles

Tema 2: Autómatas finitos

Tema 2: Autómatas finitos Tema 2: Autómatas finitos Departamento de Sistemas Informáticos y Computación DSIC - UPV http://www.dsic.upv.es p. 1 Tema 2: Autómatas finitos Autómata finito determinista (AFD). Formas de representación

Más detalles

Bases Formales de la Computación

Bases Formales de la Computación Modal Bases Formales de la Computación Pontificia Universidad Javeriana 3 de abril de 2009 Modal LÓGICAS MODALES Contenido Modal 1 Modal 2 3 Qué es la lógica Modal? Modal Variedad de diferentes sistemas

Más detalles

PROGRAMA INSTRUCCIONAL AUTOMATAS Y LENGUAJES FORMALES

PROGRAMA INSTRUCCIONAL AUTOMATAS Y LENGUAJES FORMALES UNIVERSIDAD FERMIN TORO VICE RECTORADO ACADEMICO UNIVERSIDAD FACULTAD DE INGENIERIA ESCUELA DE MANTENIMIENTO MECÁNICO ESCUELA DE TELECOMUNICACIONES ESCUELA DE ELÉCTRICA ESCUELA DE COMPUTACIÓN PROGRAMA

Más detalles

Máquinas de Estados Finitos

Máquinas de Estados Finitos Máquinas de Estados Finitos Breve Introducción Jorge Alejandro Gutiérrez Orozco Escuela Superior de Cómputo 22 de agosto de 2008 Resumen Hablaremos de algunas de las más comunes Máquinas de Estados Fintos,

Más detalles

DESARROLLO DE UN ENTORNO DE SIMULACIÓN PARA AUTÓMATAS DETERMINISTAS

DESARROLLO DE UN ENTORNO DE SIMULACIÓN PARA AUTÓMATAS DETERMINISTAS Scientia et Technica Año XV, No 42 Agosto de 2009. Universidad Tecnológica de Pereira. ISSN 0122-1701 17 DESARROLLO DE UN ENTORNO DE SIMULACIÓN PARA AUTÓMATAS DETERMINISTAS Development of a simulation

Más detalles

Algoritmic game theory - IIC3810

Algoritmic game theory - IIC3810 Algoritmic game theory - IIC3810 María Ignacia Fierro Pontificia Univesidad Católica de Chile 26 de mayo, 2016 María Ignacia Fierro (Pontificia Univesidad Católica dealgorithmic Chile) Game Theory 26 de

Más detalles

Lenguajes Regulares. Antonio Falcó. - p. 1

Lenguajes Regulares. Antonio Falcó. - p. 1 Lenguajes Regulares Antonio Falcó - p. 1 Cadenas o palabras I Una cadena o palabra es una sucesión finita de símbolos. cadena {c, a, d, e, n}. 10001 {0, 1} El conjunto de símbolos que empleamos para construir

Más detalles

Teoría de Autómatas y Lenguajes Formales. Laura M. Castro Souto

Teoría de Autómatas y Lenguajes Formales. Laura M. Castro Souto Teoría de Autómatas y Lenguajes Formales Laura M. Castro Souto Primer Cuatrimestre Curso 2000/2001 2 Índice de Tablas 3 4 ÍNDICE DE TABLAS Capítulo 0 Introducción En la asignatura de Teoría de Autómatas

Más detalles

Clase 08: Autómatas finitos

Clase 08: Autómatas finitos Solicitado: Ejercicios 06: Autómatas finitos M. en C. Edgardo Adrián Franco Martínez http://computacion.cs.cinvestav.mx/~efranco @efranco_escom edfrancom@ipn.mx 1 Contenido Autómata finito Definición formal

Más detalles

Gramáticas independientes del contexto. Tema 3: Lenguajes independientes del contexto. Derivaciones. Árbol de derivación

Gramáticas independientes del contexto. Tema 3: Lenguajes independientes del contexto. Derivaciones. Árbol de derivación Tema 3: Lenguajes independientes del contexto Gramáticas independientes de contexto (GIC) Conceptos básicos Ambigüedad Ejemplos de GICs Autómatas con pila (AP) Definición de autómata con pila Determinismo

Más detalles

Teoría de la Computabilidad

Teoría de la Computabilidad Teoría de la Computabilidad Módulo 7: Lenguajes sensibles al contexto 2016 Departamento de Cs. e Ing. de la Computación Universidad Nacional del Sur Bahía Blanca, Argentina Es este programa en Pascal sintácticamente

Más detalles

Clase 03: Alfabetos, símbolos y cadenas

Clase 03: Alfabetos, símbolos y cadenas Solicitado: Ejercicios 01: Cadenas M. en C. Edgardo Adrián Franco Martínez http://computacion.cs.cinvestav.mx/~efranco @efranco_escom edfranco@ipn.mx 1 Contenido Alfabetos, símbolos y cadenas Operaciones

Más detalles

TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES Grado en Ingeniería Informática Online, Curso Universidad Rey Juan Carlos

TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES Grado en Ingeniería Informática Online, Curso Universidad Rey Juan Carlos TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES Grado en Ingeniería Informática Online, Curso 202-203 Universidad Rey Juan Carlos GUÍA PARA LA REALIZACIÓN DE LA HOJA DE PROBLEMAS No 3 (Tema 3: Expresiones Regulares)

Más detalles

Autómatas y Lenguajes Formales. Tema 3.2: Autómatas Finitos No Deterministas. Luis Peña luis.pena@urjc.es

Autómatas y Lenguajes Formales. Tema 3.2: Autómatas Finitos No Deterministas. Luis Peña luis.pena@urjc.es Autómatas y Lenguajes Formales Tema 3.2: Autómatas Finitos No Deterministas Luis Peña luis.pena@urjc.es Sumario Tema 3.2: Autómatas Finitos No Deterministas. 1. Concepto de AFND 2. Teoremas de Equivalencia

Más detalles

Teoría de Autómatas y Compiladores [ICI-445] Capítulo 1: Lenguajes y Gramáticas Formales

Teoría de Autómatas y Compiladores [ICI-445] Capítulo 1: Lenguajes y Gramáticas Formales Teoría de Autómatas y Compiladores [ICI-445] Capítulo 1: Lenguajes y Gramáticas Formales Dr. Ricardo Soto [ricardo.soto@ucv.cl] [http://www.inf.ucv.cl/ rsoto] Escuela de Ingeniería Informática Pontificia

Más detalles

Autómatas Finitos y Lenguajes Regulares

Autómatas Finitos y Lenguajes Regulares Autómatas Finitos y Lenguajes Regulares Problema: Dado un lenguaje L definido sobre un alfabeto A y una cadena x arbitraria, determinar si x L o x L. Cadena x AUTOMATA FINITO SI NO Lenguaje Regular Autómatas

Más detalles

Lenguajes No Regulares

Lenguajes No Regulares Lenguajes No Regulares Problemas que los Autómatas No Resuelven. Universidad de Cantabria Esquema Lema del Bombeo 1 Lema del Bombeo 2 3 Introducción Todos los lenguajes no son regulares, simplemente hay

Más detalles

2: Autómatas finitos y lenguajes regulares.

2: Autómatas finitos y lenguajes regulares. 2: Autómatas finitos y lenguajes regulares. Los autómatas finitos son el modelo matemático de los sistemas que presentan las siguientes características: 1) En cada momento el sistema se encuentra en un

Más detalles

Complejidad computacional (Análisis de Algoritmos)

Complejidad computacional (Análisis de Algoritmos) Definición. Complejidad computacional (Análisis de Algoritmos) Es la rama de las ciencias de la computación que estudia, de manera teórica, la optimización de los recursos requeridos durante la ejecución

Más detalles

Introducción a los códigos compresores

Introducción a los códigos compresores Introducción a los códigos compresores Parte I de la Lección 2, Compresores sin pérdidas, de CTI Ramiro Moreno Chiral Dpt. Matemàtica (UdL) Febrero de 2010 Ramiro Moreno (Matemàtica, UdL) Introducción

Más detalles

ARITMÉTICA MODULAR. Unidad 1

ARITMÉTICA MODULAR. Unidad 1 Unidad 1 ARITMÉTICA MODULAR 9 Capítulo 1 DE LA TEORÍA DE CONJUNTOS Objetivo general Presentar y afianzar algunos conceptos de la Teoría de Conjuntos relacionados con el estudio de la matemática discreta.

Más detalles

Lenguajes Formales. 27 de octubre de 2005

Lenguajes Formales. 27 de octubre de 2005 Apuntes de Teoría de Autómatas y Lenguajes Formales Gloria Martínez Luis A. García 27 de octubre de 2005 II Índice general 3.1. El Teorema de Myhill-Nerode. Minimización de Autómatas Finitos..... 41 3.2.

Más detalles

Teoría de la Computación para Ingeniería de Sistemas: un enfoque práctico. Prof. Hilda Contreras

Teoría de la Computación para Ingeniería de Sistemas: un enfoque práctico. Prof. Hilda Contreras Teoría de la Computación para Ingeniería de Sistemas: un enfoque práctico Prof. Hilda Contreras 15 de abril de 2012 2 Índice general 1. Introducción 5 1.1. Marco histórico de la teoría de la computación..................

Más detalles

Cualquier lenguaje de contexto libre, L, puede ser generado por medio de una GCL, G, que cumpla las siguientes condiciones:

Cualquier lenguaje de contexto libre, L, puede ser generado por medio de una GCL, G, que cumpla las siguientes condiciones: Teoría de Autómatas y Lenguajes Formales Boletín de Autoevaluación 5: Cómo se simplifica una Gramática de Contexto Libre?. 1. Objetivos. El objetivo de este boletín es ilustrar cómo proceder para simplificar

Más detalles