Lenguajes Libres del Contexto
|
|
- Gregorio Valdéz Espejo
- hace 7 años
- Vistas:
Transcripción
1 Capítulo 3 Lenguajes Libres del Contexto [LP81, cap 3] n este capítulo estudiaremos una forma de representación de lenguajes más potentes que los regulares. Los lenguajes libres del contexto (LC) son importantes porque sirven como mecanismo formal para expresar la gramática de lenguajes de programación o los semiestructurados. Por ejemplo la popular Backus-aur form es esencialmente una gramática libre del contexto. Similarmente, los Ts usados para indicar el formato permitido en documentos XML son esencialmente gramáticas que describen lenguajes LC. Los lenguajes LC también se usan en biología computacional para modelar las propiedades que se buscan en secuencias de A o proteínas. l estudio de este tipo de lenguajes deriva en la construcción semiautomática de parsers (reconocedores) eficientes, los cuales son esenciales en la construcción de compiladores e intérpretes, así como para procesar textos semiestructurados. Una herramienta conocida para esta construcción semiautomática es lex/yacc en C/Unix, y sus distintas versiones para otros ambientes. stas herramientas reciben esencialmente una especificación de un lenguaje LC y producen un programa que parsea tal lenguaje. n términos teóricos, los lenguajes LC son interesantes porque van más allá de la memoria finita sobre el pasado permitida a los regulares, pudiendo almacenar una cantidad arbitraria de información sobre el pasado, siempre que esta información se acceda en forma de pila. s interesante ver los lenguajes que resultan de esta restricción. 3.1 Gramáticas Libres del Contexto (GLCs) [LP81, sec 3.1] Una gramática libre del contexto (GLC) es una serie de reglas de derivación, producción o reescritura que indican que un cierto símbolo puede convertirse en (o reescribirse como) una secuencia de otros símbolos, los cuales a su vez pueden convertirse en otros, hasta obtener una cadena del lenguaje. s una forma particular de sistema de reescritura, restringida a que las reglas aplicables para reescribir un símbolo son independientes de lo que tiene alrededor 43
2 44 CAPÍTULO 3. LGUAJS LIBRS L COTXTO en la cadena que se está generando (de allí el nombre libre del contexto ). istinguiremos entre los símbolos terminales (los del alfabeto Σ que formarán la cadena final) y los símbolos no terminales (los que deben reescribirse como otros y no pueden aparecer en la cadena final). Una GLC tiene un símbolo inicial del que parten todas las derivaciones, y se dice que genera cualquier secuencia de símbolos terminales que se puedan obtener desde el inicial mediante reescrituras. jemplo 3.1 Consideremos las siguientes reglas de reescritura: asb ε donde S es el símbolo (no terminal) inicial, y {a, b} son los símbolos terminales. Las cadenas que se pueden generar con esta GLC forman precisamente el conjunto {a n b n, n 0}, que en el j vimos que no era regular. e modo que este mecanismo permite expresar lenguajes no regulares. Formalicemos ahora lo que es una GLC y el lenguaje que describe. efinición 3.1 Una gramática libre del contexto (GLC) es una tupla G = (V, Σ, R, S), donde 1. V es un conjunto finito de símbolos no terminales. 2. Σ es un conjunto finito de símbolos terminales, V Σ =. 3. S V es el símbolo inicial. 4. R F V (V Σ) son las reglas de derivación (conjunto finito). scribiremos las reglas de R como A G z o simplemente A z en vez de (A, z). Ahora definiremos formalmente el lenguaje descrito por una GLC. efinición 3.2 ada una GLC G = (V, Σ, R, S), la relación lleva en un paso = G (V Σ) (V Σ) se define como x, y, A z R, xay = G xzy. efinición 3.3 efinimos la relación lleva en cero o más pasos, = G, como la clausura reflexiva y transitiva de = G. scribiremos simplemente = y = cuando G sea evidente. otamos que se puede llevar en cero o más pasos a una secuencia que aún contiene no terminales. Las derivaciones que nos interesan finalmente son las que llevan del símbolo inicial a secuencias de terminales.
3 3.1. GRAMÁTICAS LIBRS L COTXTO (GLCS) 45 efinición 3.4 ada una GLC G = (V, Σ, R, S), definimos el lenguaje generado por G, L(G), como L(G) = {w Σ, S = G w}. Finalmente definimos los lenguajes libres del contexto como los expresables con una GLC. efinición 3.5 Un lenguaje L es libre del contexto (LC) si existe una GLC G tal que L = L(G). jemplo 3.2 Cómo podrían describirse las secuencias de paréntesis bien balanceados? (donde nunca se han cerrado más paréntesis de los que se han abierto, y al final los números coinciden). Una GLC que lo describa es sumamente simple: (S)S ε la que formalmente se escribe como V = {S}, Σ = {(,)}, R = {(S,(S)S),(S,ε)}. Una derivación de la cadena (())() a partir de S podría ser como sigue: S = (S)S = ((S)S)S = (()S)S = (())S = (())(S)S = (())()S = (())(), y otra podría ser como sigue: S = (S)S = (S)(S)S = (S)()S = (S)() = ((S)S)() = (()S)() = (())(). sto ilustra un hecho interesante: existen distintas derivaciones para una misma cadena, producto de aplicar las reglas en distinto orden. Observación 3.1 Puede el lenguaje del j. 3.2 ser regular? o, pues entonces su intersección con ( ) también lo sería, pero esa intersección es {( n ) n, n 0}, que ya sabemos que no es regular. Una herramienta muy útil para visualizar derivaciones, y que se independiza del orden en que se aplican las reglas, es el árbol de derivación. efinición 3.6 Un árbol de derivación para una gramática G = (V, Σ, R, S) es un árbol donde los hijos tienen orden y los nodos están rotulados con elementos de V ó Σ ó ε. La raíz está rotulada con S, y los nodos internos deben estar rotulados con elementos de V. Si los rótulos de los hijos de un nodo interno rotulado A son a 1...a k, k 1 y a i V Σ, debe existir una regla A a 1...a k R. Si un nodo interno rotulado A tiene un único hijo rotulado ε, debe haber una regla A ε R. iremos que el árbol genera la cadena que resulta de concatenar todos los símbolos de sus hojas, de izquierda a derecha, vistos como cadenas de largo 1 (o cero para ε).
4 46 CAPÍTULO 3. LGUAJS LIBRS L COTXTO Observar que la definición permite que un árbol de derivación tenga símbolos no terminales en sus hojas, es decir, puede representar una derivación parcial. l siguiente lema es inmediato. Lema 3.1 Si un árbol de derivación para G genera x (V Σ), entonces S = G x. Si S = G x, existe un árbol de derivación que genera x. Prueba: Muy fácil por inducción estructural sobre el árbol o por inducción sobre la longitud de la derivación, según el caso. jemplo 3.3 l árbol de derivación para la cadena del j. 3.2 es como sigue: S ( ) S S ( S ) S ( S ) S y abstrae de ambos órdenes de derivación. ε ε ε ε Sin embargo, los distintos órdenes de derivación no son los únicos responsables de que existan distintas formas de derivar una misma cadena. s posible que una misma cadena tenga dos árboles de derivación distintos. efinición 3.7 Una GLC G es ambigua si existen dos árboles de derivación distintos para G que generan una misma cadena w L(G). Generalmente ser ambigua es una propiedad indeseable para una GLC. Veamos un ejemplo de una GLC ambigua. jemplo 3.4 La siguiente GLC describe un subconjunto de expresiones aritméticas correctas. + ()
5 3.1. GRAMÁTICAS LIBRS L COTXTO (GLCS) 47 donde V = {,,}, es el símbolo inicial, y todos los demás son terminales. Por ejemplo, pertenece al lenguaje generado por esta GLC, pero tiene dos árboles de derivación distintos: + * * ado que lo normal es asignar semántica a una expresión a partir de su árbol de derivación, el valor en este ejemplo puede ser 25 ó 17 según qué arbol utilicemos para generarla. Cuando se tiene una gramática ambigua, podemos intentar desambiguarla, mediante escribir otra que genere el mismo lenguaje pero que no sea ambigua. jemplo 3.5 La siguiente GLC genera el mismo lenguaje que la del j. 3.4, pero no es ambigua. La técnica usada ha sido distinguir lo que son sumandos (o términos T) de factores (F), de modo de forzar la precedencia, +. + T T T T F 0 T F... F () 9 F Ahora el lector puede verificar que sólo permite la derivación que queremos, pues hemos obligado a que primero se consideren los sumandos y luego los factores. 2 3
6 48 CAPÍTULO 3. LGUAJS LIBRS L COTXTO 3.2 Todo Lenguaje Regular es Libre del Contexto [LP81, sec 3.2] Hemos ya mostrado (j. 3.1) que existen lenguajes LC que no son regulares. Vamos ahora a completar esta observación con algo más profundo: el conjunto de los lenguajes LC incluye al de los regulares. Teorema 3.1 Si L Σ es un lenguaje regular, entonces L es LC. Prueba: Lo demostramos por inducción estructural sobre la R que genera L. Sería más fácil usando autómatas finitos y de pila (que veremos enseguida), pero esta demostración ilustra otros hechos útiles para más adelante. 1. Si L =, la GLC G = ({S},Σ,,S) genera L. sta es una GLC sin reglas! 2. Si L = {a}, la GLC G = ({S},Σ, { a},s) genera L. 3. Si L = L 1 L 2 y tenemos (por hipótesis inductiva) GLCs G 1 = (V 1,Σ,R 1,S 1 ) y G 2 = (V 2,Σ,R 2,S 2 ) que generan L 1 y L 2 respectivamente, entonces la GLC G = (V 1 V 2 {S},Σ,R 1 R 2 { S 1, S 2 },S) genera L. 4. Si L = L 1 L 2 y tenemos GLCs G 1 = (V 1,Σ,R 1,S 1 ) y G 2 = (V 2,Σ,R 2,S 2 ) que generan L 1 y L 2 respectivamente, entonces la GLC G = (V 1 V 2 {S},Σ,R 1 R 2 { S 1 S 2 },S) genera L. 5. Si L = L 1 y tenemos una GLC G 1 = (V 1,Σ,R 1,S 1 ) que genera L 1, entonces la GLC G = (V 1 {S},Σ,R 1 { S 1 S, ε},s) genera L. jemplo 3.6 Si derivamos una GLC para (a b) a obtendremos S 1 S 2 S 4 S 6 S 4 S 1 S 3 S 1 S 4 ε S 1 ε S 6 a S 3 S 4 S 5 b S 3 S 5 S 2 a l Teo. 3.1 nos muestra cómo convertir cualquier R en una GLC. Con esto a mano, nos permitiremos escribir Rs en los lados derechos de las reglas de una GLC. jemplo 3.7 La GLC del j. 3.5 se puede escribir de la siguiente forma. + T T T T F F F () si bien, para cualquier propósito formal, deberemos antes convertirla a la forma básica.
16 Análisis sintáctico I
2 Contenido Recordando la estructura de un compilador Recordando el análisis léxico l análisis sintáctico Comparación con el análisis léxico l Rol del Parser Lenguajes de programación Gramáticas structura
Más detallesTema 4: Gramáticas independientes del contexto. Teoría de autómatas y lenguajes formales I
Tema 4: Gramáticas independientes del contexto Teoría de autómatas y lenguajes formales I Bibliografía Hopcroft, J. E., Motwani, R., y Ullman, J. D. Introducción a la Teoría de Autómatas, Lenguajes y Computación.
Más detallesLenguajes y Compiladores Aspectos Formales (Parte 1) Compiladores
Facultad de Ingeniería de Sistemas Lenguajes y Aspectos Formales (Parte 1) 1 Aspectos Formales Los compiladores traducen lenguajes que están formalmente definidos a través de reglas que permiten escribir
Más detallesGRAMATICAS 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 detallesLenguajes y Compiladores Aspectos Formales (Parte 2) Compiladores
Facultad de Ingeniería de Sistemas Lenguajes y Aspectos Formales (Parte 2) 2007 1 Derivaciones El proceso de búsqueda de un árbol sintáctico para una cadena se llama análisis sintáctico. El lenguaje generado
Más detallesInducció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 detallesComputabilidad y lenguajes formales: Sesión 19. Gramáticas Incontextuales (Context Free Grammars)
Computabilidad y lenguajes formales: Sesión 19. Gramáticas Incontextuales (Context Free Grammars) Prof. Gloria Inés Alvarez V. Departamento de Ciencias e Ingeniería de la Computación Pontificia Universidad
Más detallesIngenierí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 detalles5 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 detallesGRAMÁTICAS LIBRES DE CONTEXTO
GRAMÁTICAS LIBRES DE CONTEXTO Definición Una gramática libre de contexto (GLC) es una descripción estructural precisa de un lenguaje. Formalmente es una tupla G=, donde Vn es el conjunto
Más detallesGramáticas libres de contexto
Gramáticas libres de contexto Conceptos básicos El siguientes es un ejemplo de una gramática libre de contexto, a la cual llamaremos G1. A 0A1 A B B # Una gramática consiste de una colección de reglas
Más detallesLenguajes independientes de contexto o incontextuales
Lenguajes independientes de contexto o incontextuales Elvira Mayordomo Universidad de Zaragoza 5 de noviembre de 2012 Elvira Mayordomo (Universidad de Zaragoza)Lenguajes independientes de contexto o incontextuales5
Más detallesIntroducción. Las gramáticas definen las reglas que definen a los lenguajes Las reglas pueden tener una diversa variedad de esquemas
Gramáticas Introducción Las gramáticas definen las reglas que definen a los lenguajes Las reglas pueden tener una diversa variedad de esquemas En algunos lenguajes, una sucesión de símbolos depende del
Más detallesCiencias de la Computación I
Ciencias de la Computación I Gramáticas Regulares Expresiones Regulares Gramáticas - Intuitivamente una gramática es un conjunto de reglas para formar correctamente las frases de un lenguaje - Por ejemplo,
Más detallesConceptos básicos sobre gramáticas
Procesamiento de Lenguajes (PL) Curso 2014/2015 Conceptos básicos sobre gramáticas Gramáticas y lenguajes Gramáticas Dado un alfabeto Σ, un lenguaje es un conjunto (finito o infinito) de cadenas de símbolos
Más detallesGramáticas tipo 0 o Estructura de frase En este tipo de gramáticas no hay restricción en su producciones y tienen la forma siguiente.
Gramáticas Libres de Contexto 1. Gramáticas. Como vimos en el capítulo anterior una gramática es un conjunto finito de reglas que describen todas las secuencias de símbolos que pertenecen a un lenguaje.
Más detallesParéntesis: Una aplicación en lenguajes formales
Paréntesis: Una aplicación en lenguajes formales Vamos a ver una aplicación del Teorema de Immerman-Szelepcsényi en la área de lenguajes formales. IIC3242 Clases de Complejidad 35 / 69 Paréntesis: Una
Más detallesPropiedades de lenguajes independientes del contexto
Capítulo 12. Propiedades de lenguajes independientes del contexto 12.1. Identificación de lenguajes independientes del contexto Lema de bombeo. 12.2. Propiedades Cierre, Complemento de lenguajes, Sustitución,
Más detallesAutó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 detallesFundamentos 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 detallesLENGUAJES Y GRAMÁTICAS
LENGUAJES Y GRAMÁTICAS Orlando Arboleda Molina Escuela de Ingeniería de Sistemas y Computación de La Universidad del Valle 20 de septiembre de 2008 Contenido Lenguajes y Gramáticas Gramáticas Gramáticas
Más detallesTema 1. Introducción
Departamento de Tecnologías de la Información Tema 1 Introducción Ciencias de la Computación e Inteligencia Artificial Índice 1.1 Conceptos 1.2 Un poco de historia 1.3 Estructura de un compilador 1.4 Teoría
Más detalles1. Cadenas EJERCICIO 1
LENGUAJES FORMALES Y AUTÓMATAS CURSO 2006/2007 - BOLETÍN DE EJERCICIOS Víctor J. Díaz Madrigal y José Miguel Cañete Departamento de Lenguajes y Sistemas Informáticos 1. Cadenas La operación reversa aplicada
Más detallesINAOE. 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 detallesMáquinas de estado finito y expresiones regulares
Capítulo 3 Máquinas de estado finito y expresiones regulares En este tema definiremos y estudiaremos máquinas de estado finito, llamadas también máquinas de estado finito secuenciales o autómatas finitos.
Más detallesCapítulo 9. Introducción a los lenguajes formales. Continuar
Capítulo 9. Introducción a los lenguajes formales Continuar Introducción Un lenguaje es un conjunto de símbolos y métodos para estructurar y combinar dichos símbolos. Un lenguaje también recibe el nombre
Más detallesMODELOS 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 detallesCompiladores. Análisis Sintáctico Ascendente. Adrian Ulises Mercado Martínez. Facultad de Ingeniería, UNAM. 5 de septiembre de 2013
Compiladores Análisis Sintáctico Ascendente Adrian Ulises Mercado Martínez Facultad de Ingeniería, UNAM 5 de septiembre de 2013 Adrian Ulises Mercado Martínez (FI,UNAM) Compiladores 5/07/2013 1 / 34 Índice
Más detallesTIPOS DE GRAMATICAS JERARQUIAS DE CHOMSKY
TIPOS DE GRAMATICAS JERARQUIAS DE CHOMSKY Para el estudio de este tema es necesario analizar dos tipos de gramáticas de la clasificación de Chomsky, las regulares y las independientes de contexto, las
Más detallesGramáticas independientes del contexto TEORÍA DE LA COMPUTACIÓN LENGUAJES INDEPENDIENTES DEL CONTEXTO Y AUTÓMATAS DE PILA. Otras definiciones I
Gramáticas independientes del contexto TEORÍ DE L COMPUTCIÓN 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 detallesTeorí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 detallesProcesadores 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 detallesMáquinas de Turing, recordatorio y problemas
Máquinas de Turing, recordatorio y problemas Elvira Mayordomo, Universidad de Zaragoza 5 de diciembre de 2014 1. Recordatorio de la definición de máquina de Turing Una máquina de Turing, abreviadamente
Más detallesCompiladores: 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 detallesIntroducción a la Lógica y la Computación
Introducción a la Lógica y la Computación Parte III: Lenguajes y Autómatas Clase del 12 de Noviembre de 2014 Parte III: Lenguajes y Autómatas Introducción a la Lógica y la Computación 1/11 Lenguajes Regulares
Más detalles1.-DEFINE EN QUE CONSISTEN LAS GRAMÁTICAS LIBRES DE CONTEXTO
1.-DEFINE EN QUE CONSISTEN LAS GRAMÁTICAS LIBRES DE CONTEXTO una gramática libre de contexto (o de contexto libre) es una gramática formal en la que cada regla de producción es de la forma: V w Donde V
Más detallesTeoría de Autómatas y Lenguajes Formales Equivalencia de Conjuntos Pruebas por Inducción
y Lenguajes INAOE y (INAOE) 1 / 40 Contenido y 1 2 3 4 5 6 y (INAOE) 2 / 40 Objetivo General Proporcionar al estudiante los fundamentos de la teoría de autómatas así como los de lenguajes formales. También
Más detalles18 Análisis sintáctico III Compiladores - Profr. Edgardo Adrián Franco Martínez. Clasificación de métodos de análisis sintáctico Análisis descendente
2 Contenido Clasificación de métodos de análisis sintáctico Análisis descendente Análisis descendente recursivo Análisis descendente predictivo Métodos deterministas Problemas del análisis descendente
Más detallesCompiladores: Sesión 3. Análisis léxico, expresiones regulares
Compiladores: Sesión 3. Análisis léxico, expresiones regulares Prof. Gloria Inés Alvarez V. Departamento de Ciencias e Ingeniería de la Computación Pontificia Universidad Javeriana Cali 29 de enero de
Más detallesGramá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 detallesIntroducción a la Lógica y la Computación
Introducción a la Lógica y la Computación Parte III: Lenguajes y Autómatas Clase del 7 de Noviembre de 2014 Parte III: Lenguajes y Autómatas Introducción a la Lógica y la Computación 1/20 Lenguajes Formales
Más detallesEjercicio. Usando la formulación del principio de inducción mostrada en la transparencia anterior, demuestre que: 2 2 n 1esdivisiblepor3. =2 n.
Ejercicio Usando la formulación del principio de inducción mostrada en la transparencia anterior, demuestre que: n 1esdivisiblepor3 n i=0 ( ) n i = n IIC153 Inducción 18 / 30 Inducción estructural La forma
Más detallesCoordinación de Ciencias Computacionales INAOE. Teoría de Autómatas y Lenguajes Formales. Temario detallado para examen de ingreso 2012
Coordinación de Ciencias Computacionales INAOE Teoría de Autómatas y Lenguajes Formales Temario detallado para examen de ingreso 2012 1. Autómatas 1.1. Por qué estudiar la teoría de autómatas? 1.1.1. Introducción
Más detallesTema 3: Gramáticas regulares. Teoría de autómatas y lenguajes formales I
Tema 3: Gramáticas regulares Teoría de autómatas y lenguajes formales I Bibliografía Hopcroft, J. E., Motwani, R., y Ullman, J. D. Introducción a la Teoría de Autómatas, Lenguajes y Computación. Addison
Más detallesIntroducción a la Lógica y la Computación
Introducción a la Lógica y la Computación Parte III: Lenguajes y Autómatas Clase del 4 de Noviembre de 2015 Parte III: Lenguajes y Autómatas Introducción a la Lógica y la Computación 1/21 Lenguajes Formales
Más detallesLenguajes Incontextuales
Tema 5: Gramáticas Formales Lenguajes Incontextuales Departamento de Sistemas Informáticos y Computación http://www.dsic.upv.es p.1/31 Tema 5: Gramáticas Formales Gramáticas. Tipos de Gramáticas. Jerarquía
Más detalles1. Define que es un Autómatas finitos determinanticos y cuáles son sus elementos constitutivos (explique cada uno de ellos).
Unidad 2.- Lenguajes Regulares Los lenguajes regulares sobre un alfabeto dado _ son todos los lenguajes que Se pueden formar a partir de los lenguajes básicos?, {_}, {a}, a 2 _, por medio De las operaciones
Más detallesMáquinas Secuenciales, Autómatas y Lenguajes. Tema 4: Expresiones Regulares. Luis Peña
Máquinas Secuenciales, Autómatas y Lenguajes Tema 4: Expresiones Regulares Luis Peña Sumario Tema 4: Expresiones Regulares. 1. Concepto de Expresión Regular 2. Teoremas de Equivalencia Curso 2012-2013
Más detalles3.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 detallesCurso Básico de Computación
Curso Básico de Computación Autómatas finitos y expresiones regulares Feliú Sagols Troncoso Matemáticas CINVESTAV-IPN 2010 Curso Básico de Computación (Matemáticas) Autómatas
Más detallesLenguajes 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 detallesEJERCICIOS 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 detallesAutómatas de Estados Finitos
Asignatura: Teoría de la Computación Unidad 1: Lenguajes Regulares Tema 1: Autómatas de Estados Finitos Autómatas de Estados Finitos Definición de Autómatas de estados finitos: Tipo Lenguaje Máquina Gramática
Más detallesÁRBOLES DE SINTAXIS. Los nodos no terminales (nodos interiores) están rotulados por los símbolos no terminales.
ÁRBOLES DE SINTAXIS ÁRBOL grafo dirigido acíclico. Los nodos no terminales (nodos interiores) están rotulados por los símbolos no terminales. Los nodos terminales (nodos hojas) están rotulados por los
Más detallesLas Gramáticas LL. Gramáticas con Parsing Eficiente. Universidad de Cantabria
Las (k) Las Gramáticas con Parsing Eficiente Universidad de Cantabria Outline Las (k) 1 Las (k) 2 3 Las (k) Formalizalización del Concepto LL Definición Una gramática libre de contexto G = (V, Σ, Q 0,
Más detallesClase 14: Gramáticas libres de contexto
M. en C. Edgardo Adrián Franco Martínez http://computacion.cs.cinvestav.mx/~efranco @efranco_escom edfrancom@ipn.mx 1 Contenido Gramáticas libres de contexto Propiedades de los lenguajes libres de contexto
Más detallesSintaxis y Semántica. Tema 3. Sintaxis y Semántica. Expresiones y Lenguajes Regulares. Dr. Luis A. Pineda ISBN:
Tema 3 Expresiones y Lenguajes Regulares Dr Luis A Pineda ISBN: 970-32-2972-7 Sintaxis y Semántica En us uso normal, las expresiones lingüística hacen referencia a objetos individuales, así como a sus
Más detallesInterrogació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 detallesNOTAS PARA LA MATERIA LENGUAJES DE PROGRAMACIÓN
NOTAS PARA LA MATERIA LENGUAJES DE PROGRAMACIÓN G r a m á t i c a s UNIVERSIDAD DE SONORA DEPARTAMENTO DE MATEMÁTICAS LICENCIATURA EN CIENCIAS DE LA COMPUTACIÓN Dra. María de Guadalupe Cota Ortiz Lenguaje
Más detallessup si A no es acotado.
Capítulo 6 Espacios completos 1. El teorema de Cantor En este capítulo estudiaremos más a fondo los espacios métricos completos. Lo primero que haremos es establecer la equivalencia entre completitud y
Más detallesTeorí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 detallesUNIVERSIDAD NACIONAL DE EDUCACIÓN A DISTANCIA Escuela Técnica Superior de Ingeniería Informática Procesadores de Lenguajes. Tema 3.
UNIVRSIDAD NACIONAL D DUCACIÓN A DISTANCIA scuela Técnica Superior de Ingeniería Informática Procesadores de Lenguajes Tema 3 Parte I Análisis Sintáctico Javier Vélez Reyes jvelez@lsi.uned.es Objetivos
Más detallesAutó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 detallesAUTÓ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 detallesConjuntos. 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 detallesAprendizaje Computacional y Extracción de Información
Aprendizaje Computacional y Extracción de Información Inferencia Gramatical Jose Oncina oncina@dlsi.ua.es Dep. Lenguajes y Sistemas Informáticos Universidad de Alicante 26 de septiembre de 2007 J. Oncina
Más detallesLección 5. Punto flotante
Lección 5. Punto flotante MIGUEL ANGEL UH ZAPATA 1 Análisis Numérico I Facultad de Matemáticas, UADY Agosto 2014 1 Centro de Investigación en Matemáticas, Unidad Mérida En esta lección aprenderemos lo
Más detallesTeorema de Lagrange. En esta sección demostramos algunos hechos básicos sobre grupos, que se pueden deducir de la definición
Teorema de Lagrange Capítulo 3 3.1 Introducción En este capítulo estudiaremos uno de los teoremas más importantes de toda la teoría de grupos como lo es el Teorema de Lagrange. Daremos en primer lugar
Más detallesComputabilidad 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 detallesExpresiones Regulares y Gramáticas Regulares
y Gramáticas Regulares Sistemas Lineales. Universidad de Cantabria Esquema Idea 1 Idea 2 3 Problema Idea Nos preguntamos si las expresiones regulares generan los mismos lenguajes que las gramáticas regulares.
Más detallesContenido. Capítulo 1. Teoría de conjuntos. 1. Capítulo 2. Lenguaje. 39. Capítulo 3. Lenguajes formales. 55
Contenido Capítulo 1. Teoría de conjuntos. 1 1.1 Conjuntos.... 3 1.1.1 Definiciones básicas.... 3 1.1.2 Operaciones sobre conjuntos.... 6 1.1.3 Diagrama de Venn.... 7 1.1.4 Álgebra de conjuntos.... 7 1.2
Más detallesExpresiones 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 detallesLógica - Conjuntos inductivos
Lógica - Conjuntos inductivos Matemática discreta y Lógica I Mayo de 2017 Las transparencias son tomadas del curso de Lógica del instituto de computación de Facultad de Ingeniería. Inducción - Plan Conjuntos
Más detallesEn matemáticas el concepto de conjunto es considerado primitivo y no se da una definición de este, por lo tanto la palabra CONJUNTO debe aceptarse
En matemáticas el concepto de conjunto es considerado primitivo y no se da una definición de este, por lo tanto la palabra CONJUNTO debe aceptarse lógicamente como un término no definido. Un conjunto se
Más detallesUnidad 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 {0n1n} debido a que no se puede registrar para todo n con un número finito de estados. Otro lenguaje
Más detallesINDUCCIÓN. Inducción - 2
INDUCCIÓN Inducción - 1 Inducción - Plan Conjuntos Inductivos Inducción como mecanismo primitivo para definir conjuntos Pruebas Inductivas Principios de inducción asociados a los conjuntos inductivos como
Más detallesUnidad 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 detallesExpresiones 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 detallesEl 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 detallesConjuntos y expresiones regulares. Propiedades de las expresiones regulares (1) Propiedades de las expresiones regulares (2)
César Ignacio García Osorio Área de Lenguajes y Siste mas Informáticos Universidad de Burgos Conjuntos y expresiones regulares Conjunto regular: Cualquier conjunto de cadenas que se pueda formar mediante
Más detallesNombre de la asignatura: Lenguajes y Autómatas I. Créditos: Aportación al perfil
Nombre de la asignatura: Lenguajes y Autómatas I Créditos: 2 3 5 Aportación al perfil Desarrollar, implementar y administrar software de sistemas o de aplicación que cumpla con los estándares de calidad
Más detallesÁLGEBRA MODERNA. Índice 1. El grupo de permutaciones y el grupo alternante 1
ÁLGEBRA MODERNA DANIEL LABARDINI FRAGOSO TOMÓ ESTAS NOTAS: ALEJANDRO DE LAS PEÑAS CASTAÑO FECHA: 9/MARZO/2016 Índice 1. El grupo de permutaciones y el grupo alternante 1 1. El grupo de permutaciones y
Más detallesDepartamento de Tecnologías de la Información. Tema 5. Decidibilidad. Ciencias de la Computación e Inteligencia Artificial
Departamento de Tecnologías de la Información Tema 5 Decidibilidad Ciencias de la Computación e Inteligencia Artificial Índice 5.1 Lenguajes reconocibles y decidibles 5.2 Problemas decidibles sobre lenguajes
Más detallesLas Gramáticas Formales
Definición de Las Como definir un Lenguaje Formal Universidad de Cantabria Esquema Motivación Definición de 1 Motivación 2 Definición de 3 Problema Motivación Definición de Dado un lenguaje L, se nos presenta
Más detallesPropiedades de Lenguajes Regulares
de INAOE (INAOE) 1 / 44 Contenido 1 2 3 4 (INAOE) 2 / 44 Existen diferentes herramientas que se pueden utilizar sobre los lenguajes regulares: El lema de : cualquier lenguaje regular satisface el pumping
Más detallesAlgoritmos y Estructuras de Datos III
Árboles Algoritmos y Estructuras de Datos III Árboles Definición: Un árbol es un grafo conexo sin circuitos simples. Árboles Teorema: Dado un grafo G = (V, X ) son equivalentes: 1. G es un árbol. 2. G
Más detallesAlgoritmos y Estructuras de Datos III
Árboles Algoritmos y Estructuras de Datos III Árboles Definición: Un árbol es un grafo conexo sin circuitos simples. Árboles Teorema: Dado un grafo G = (V, X ) son equivalentes: 1. G es un árbol. 2. G
Más detallesDepartamento de Tecnologías de la Información. Tema 4. Máquinas de Turing. Ciencias de la Computación e Inteligencia Artificial
Departamento de Tecnologías de la Información Tema 4 Máquinas de Turing Ciencias de la Computación e Inteligencia Artificial Índice 4.1 Límites de los autómatas 4.2 Definición de Máquina de Turing 4.3
Más detallesMinimización de Aútomatas Finitos
Minimización de Aútomatas Finitos Supongamos que para un AFD M = (Q, Σ, δ, q 0, F ) definimos la siguiente relación R M : xr M y ssi δ(q 0, x) = δ(q 0, y) Claramente, podemos notar que esta relación es
Más detallesHacia las Gramáticas Propias
Hacia las Gramáticas sin Ciclos Universidad de Cantabria Esquema 1 Introducción 2 3 Introducción Las gramáticas libres de contexto pueden presentar diferentes problemas. Ya hemos visto como eliminar los
Más detallesDemostraciones por resolución
Demostraciones por resolución A lo largo del curso, hemos prometido insistentemente que hay métodos para mecanizar demostraciones En particular, queremos un método, dado una base de conocimiento Σ y una
Más detallesClase 11: Gramáticas. Solicitado: Ejercicios 09: Gramáticas
Solicitado: Ejercicios 09: Gramáticas M. en C. Edgardo Adrián Franco Martínez http://computacion.cs.cinvestav.mx/~efranco @efranco_escom edfrancom@ipn.mx 1 Contenido Gramática Elementos de una gramática
Más detallesAnálisis y Diseño de Algoritmos
Análisis y Diseño de Algoritmos Teoría NP-Completeness DR. JESÚS A. GONZÁLEZ BERNAL CIENCIAS COMPUTACIONALES INAOE Problemas de Decisión Teoría de NP-Completeness Diseñada para aplicarse solo a problemas
Más detallesMÁQUINAS DE TURING Y LENGUAJES ESTRUCTURADOS POR FRASES
Máquinas de Turing y lenguajes estructurados por frases -1- MÁQUINAS DE TURING Y LENGUAJES ESTRUCTURADOS POR FRASES MÁQUINAS DE TURING - Son máquinas teóricas capaces de aceptar lenguajes generados por
Más detallesProyecto Intermedio Algoritmo de Earley
Fundamentos de Computación Proyecto Intermedio: Algoritmo de Earley Profesor: Dr. José Torres Jiménez Alumnos: Edna Gutiérrez Gasca Aureny Magaly Uc Miam Jorge Rodríguez Núñez Proyecto Intermedio Algoritmo
Más detalles07 Análisis léxico III
2 Contenido Lenguaje Operaciones entre lenguajes Lenguajes regulares Expresiones regulares 3 Lenguaje Un lenguaje es un conjunto de palabras (cadenas) de un determinado alfabeto Σ. Formalmente: Se llama
Más detallesTeorema de Compacidad
Teorema de Compacidad Seminario de Teoría de Modelos - FCEyN - UBA 1 de septiembre de 2011 Teorema 1 (Compacidad). Una L-teoría T es satisfacible si y solo si todo subconjunto finito de T es satisfacible.
Más detallesControla el flujo de tokens reconocidos por parte del analizador léxico. 4.2 Introduccion a las gramaticas libres de contexto y arboles de derivacion
UNIDAD IV Analisis Sintactico 4.1 Introduccion Sintaxis significa estructura del orden de las palabras en una frase. La tarea del analisis sintactico es revisar si los símbolos aparecen en el orden correcto
Más detallesConjuntos Los conjuntos se emplean en muchas áreas de las matemáticas, de modo que es importante una comprensión de los conjuntos y de su notación.
NÚMEROS REALES Conjuntos Los conjuntos se emplean en muchas áreas de las matemáticas, de modo que es importante una comprensión de los conjuntos y de su notación. Un conjunto es una colección bien definida
Más detalles300CIG007 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. Qué es un computador? Todos lo sabemos!!!
Más detalles