Gramáticas Libres de Contexto
|
|
|
- Antonia Ríos Ponce
- hace 7 años
- Vistas:
Transcripción
1 Gramáticas Libres de Contexto Pedro J. Álvarez Pérez-Aradros Rubén Béjar Hernández Departamento de Informática e Ingeniería de Sistemas C.P.S. Universidad de Zaragoza GramáticasLibresContrxto.ppt 29/03/2004 1
2 Gramáticas Regulares Una gramática regular es una 4-tupla G=(Σ,N,S,P), donde Σ es el alfabeto, N es una colección de símbolos no terminales, S es un símbolo no terminal llamado símbolo inicial y P es un conjunto de reglas de sustitución, llamadas producciones de la forma A w donde A N y w (Σ N) satisfaciendo: 1) w contiene un no terminal como máximo. 2) Si w contiene un no terminal, entonces es el símbolo que está en el extremo derecho de w. El lenguaje generado por la gramática se representa como L(G). GramáticasLibresContrxto.ppt 29/03/2004 2
3 Gramáticas Regulares (II) Sea L el lenguaje regular reconocido por un AFD M = (Σ, Q, s, F, δ). La gramática regular que genera el lenguaje L será G = (Σ, N, S, P) tal que: Σ = Σ N = Q S = s P = {q ap δ(q, a) = p} {q ε q F} Todas aquellas palabras que reconoce el AFD M, pueden ser generadas a partir de las producciones de G. GramáticasLibresContrxto.ppt 29/03/2004 3
4 Gramáticas Regulares (III) Ejemplo: Sea el AFD M, a b a,b q 1 q 2 q 3 a,b Cuál es la gramática G que genera L(M)? GramáticasLibresContrxto.ppt 29/03/2004 4
5 Gramáticas Regulares (IV) Sea L el lenguaje generado por la gramática regular G = (Σ, N, S, P). El AFN que reconoce el lenguaje L será M = (Σ, Q, s, F, ) tal que: Q = N {f}, siendo f un símbolo nuevo s = S F = {f} se definen: Si A σ 1... σ n B con A y B no terminales, entonces se añadirán a Q los nuevos estados q 1, q 2,...q n-1 y las transformaciones siguientes: (A, σ 1... σ n )= (q 1, σ 2... σ n )=...= (q n-1, σ n )=B Si A σ 1... σ n con A no terminal, entonces se añadirán a Q los nuevos estados q 1, q 2,...q n-1 y las transformaciones siguientes: (A, σ 1... σ n )= (q 1, σ 2... σ n )=...= (q n-1, σ n )=f GramáticasLibresContrxto.ppt 29/03/2004 5
6 Gramáticas Regulares (V) Ejemplo: Sea la gramática regular G, S ab ba ε A abas B babs Cuál el AFN que reconoce L(G)? GramáticasLibresContrxto.ppt 29/03/2004 6
7 Gramáticas Independientes del Contexto Una Gramática Independiente del Contexto (GIC) es una 4-tupla G= (Σ, N, S, P) donde Σ es el alfabeto (conjunto de terminales), N es la colección finita de los no terminales, S es un no terminal llamado símbolo inicial y P N (N Σ)* es un conjunto de producciones. El lenguaje generado por la GIC se denota L(G) y se llama Lenguaje Independiente del Contexto (LIC). Relación GR y GIC: GR GIC LR LIC GramáticasLibresContrxto.ppt 29/03/2004 7
8 Árboles de derivación o de análisis de ambigüedad En las GIC puede haber, en el lado derecho de sus producciones, más de un no terminal y además, éste puede aparecer en cualquier lugar de la cadena. P N (N Σ)* Objetivo: Realizar un gráfico de derivación, que indique de qué manera ha contribuido cada no terminal a formar la cadena final de símbolos terminales (árbol de derivación). GramáticasLibresContrxto.ppt 29/03/2004 8
9 Árboles de derivación o de análisis de ambigüedad (II) Características de los árboles de derivación: El nodo raíz se etiqueta con el símbolo inicial S. Los nodos hijo del nodo raíz se etiquetan con los símbolos que aparecen en la parte derecha de la producción del símbolo inicial. Todo nodo etiquetado con un no terminal, tiene como nodos hijos los etiquetados con los símbolos del lado derecho de la producción usada para sustituir dicho no terminal. Los nodos que no tienen hijos deben estar etiquetados con símbolos terminales. GramáticasLibresContrxto.ppt 29/03/2004 9
10 Árboles de derivación o de análisis de ambigüedad (III) Ejemplo: Sea la GIC S AB A aa a B bb b la cadena w = aabbb puede ser derivada S A B a A b B a b B Lectura de la Cadena b GramáticasLibresContrxto.ppt 29/03/
11 Árboles de derivación o de análisis de ambigüedad (IV) Otra representación proceso de derivación para la cadena w: S AB AbB AbbB Abbb aabbb aabbb S AB aab aab aabb aabbb aabbb S AB aab aabb aabbb aabbb aabbb Preguntas: Cuál sería el árbol de derivación para cada una de las derivaciones anteriores de la cadena? Qué tienen en común los tres árboles de derivación que se obtienen? GramáticasLibresContrxto.ppt 29/03/
12 Árboles de derivación o de análisis de ambigüedad (V) Ejemplo: Sea la GIC S SbS ScS a se pretende derivar la cadena w = abaca. Preguntas: Qué posibles derivaciones de la cadena w podemos realizar? Cuál es el árbol de derivación de cada una de las derivaciones previas? Cómo son los árboles de derivación obtenidos? GramáticasLibresContrxto.ppt 29/03/
13 Árboles de derivación o de análisis de ambigüedad (VI) Una gramática en la cual, para toda cadena w, todas las derivaciones de w tienen el mismo árbol de derivación, es no ambigua. En algunos casos, si la gramática es ambigua, se puede encontrar otra gramática que produzca el mismo lenguaje y no lo sea. S A B A a B a S a Gramática Ambigua Gramática No Ambigua Si todas las GIC para un lenguaje son ambiguas, se dice que el lenguaje es un Lenguaje Independiente del Contexto inherentemente ambiguo. GramáticasLibresContrxto.ppt 29/03/
14 Árboles de derivación o de análisis de ambigüedad (VII) Formas de derivar cadenas: Derivación por la izquierda: el no terminal que se expande es, siempre, el del extremo izquierdo. Para la gramática S SbS ScS a la derivación por la izquierda de la cadena w = abaca S ScS SbScS abscs abacs abaca Derivación por la derecha: el no terminal que se expande es, siempre, el del extremo derecho. Para la gramática S SbS ScS a la derivación por la derecha de la cadena w = abaca S ScS Sca SbSca Sbaca abaca GramáticasLibresContrxto.ppt 29/03/
15 Simplificación de las GIC Objetivo: Encontrar un modelo formal estándar para las producciones (forma normal). El primer paso para el desarrollo del modelo, es limpiar las gramáticas eliminado aquellas producciones y símbolos inútiles. La eliminación de éstos problemas no afecta a la capacidad de generación de las gramáticas. Ejemplo: Sea la GIC S Aa B D A aa ba B B b C abd Qué problemas podemos encontrar en esta gramática? GramáticasLibresContrxto.ppt 29/03/
16 Simplificación: Transformación 1 Objetivo transformación: Eliminar los no terminales que no deriven cadenas de terminales. Sea G=(Σ, N, S, P) una GIC. Transformamos G en G =(Σ, N, S, P ) de forma que L(G)=L(G ) y para todo A N, se obtenga A w * tal que w Σ*. Para lograrlo construimos N y P de manera iterativa: 1. Inicializar N con todos los no terminales A para los que A w, es una producción de G, con w Σ*. 2. Inicializar P con todas las producciones A w para A N y w Σ*. 3. Repetir Añadir a N todos los no terminales de A para los cuales A w, para algún w (N Σ)*, que sea una producción de P y añadirla a P. Hasta que no se puedan añadir más no terminales a N Nota: Este algoritmo trata ε como una cadena de un terminal (ε-producciones) GramáticasLibresContrxto.ppt 29/03/
17 Simplificación: Transformación 2 Objetivo transformación: Eliminar aquellos terminales y no terminales que no aparezcan en las cadenas que se deriven a partir de S. Sea G=(Σ, N, S, P) una GIC. Transformamos G en G =(Σ, N, S, P ) de forma que L(G)=L(G ) y para todo X N Σ, se tenga S αxβ * tal que α, β (N Σ )*. Para lograrlo construimos Σ, N y P de forma iterativa: 1. Inicializar N ={S}, P =φ y Σ = φ 2. Repetir Para A N, si A w es una producción de P: 1. Introducir A w en P. 2. Para todo no terminal B de w, introducir B en N 3. Para todo terminal α de w, introducir α en Σ Hasta que no se puedan añadir nuevas producciones GramáticasLibresContrxto.ppt 29/03/
18 Simplificación: Transformación 1 y 2 Problema: Dependiendo del orden en que se apliquen los dos algoritmos previos el resultado es distinto. Ejemplo: Sea la GIC S AB a A a Aplicando Algoritmo 1 y Algoritmo 2: S a Aplicando Algoritmo 2 y Algoritmo 1: S a A a GramáticasLibresContrxto.ppt 29/03/
19 Simplificación: Transformación 3 Objetivo transformación: Eliminación de las ε-producciones. Si ε L(G) entonces tales producciones no pueden ser eliminadas para que ε pueda se generada por la gramática. Si ε L(G) entonces las ε-pueden ser eliminadas. Un no terminal A es anulable si A ε. * Para eliminar las ε-producciones es crucial identificar los no terminales que son anulables. Ejemplo: Sea la GIC S aa A aa ε GramáticasLibresContrxto.ppt 29/03/
20 Simplificación: Transformación 3 (II) Sea G= (Σ, N, S, P) una GIC. El siguiente algoritmo identifica Ŋ como el conjunto de todos los no terminales anulables de G: 1. Inicializar Ŋ con todos los no terminales A de G para los que existe una producción A ε. 2. Repetir Si B w para algún w (N Σ)* y todos los símbolos de w están en Ŋ, añadir B a Ŋ Hasta que no se puedan añadir más no terminales a Ŋ GramáticasLibresContrxto.ppt 29/03/
21 Simplificación: Transformación 3 (III) Transformación para GIC donde ε L(G): Identificados los no terminales anulables, se modifican las reglas de producción con el fin de poder eliminar las ε-producciones. El nuevo conjunto P se crea a partir de: Si B X 1 X 2... X n P, entonces en P introducimos todas las producciones de la forma B Y 1 Y 2... Y n donde las Y i satisfacen: Y i = X i, si X i es no anulable Y i = X i o ε, si es anulable Y i no es ε para todo i (no se introducen en P producciones de la forma B ε) GramáticasLibresContrxto.ppt 29/03/
22 Simplificación: Transformación 3 (IV) Transformación para GIC donde ε L(G): Se pueden eliminar todas las ε-producciones de G menos una. El nuevo conjunto P se crea: 1. Eliminar todas las ε-producciones de G, transformando G en G tal que L(G )=L(G)-{ε} 2. Añadir la producción S ε que restituye ε al lenguaje generado por la gramática. GramáticasLibresContrxto.ppt 29/03/
23 Simplificación: Transformación 4 Objetivo transformación: Eliminación de las producciones unitarias o no generativas (aumentan la complejidad de las gramáticas). Las producciones de la forma A B donde A y B son no terminales, se llaman producciones unitarias o no generativas. Primera aproximación: Renombrar no terminales y añadir un paso más a la derivación. A B B w1 C lo transformaríamos a A w1 C Problema Primera Aproximación: Al eliminar producciones unitarias aparecen nuevas producciones unitarias. GramáticasLibresContrxto.ppt 29/03/
24 Simplificación: Transformación 4 (II) Sea G=(Σ, N, S, P) una GIC que no contenga ε-producciones. Construimos una GIC G =(Σ, N, S, P ) equivalente que no contenga producciones unitarias: 1. Inicializar P de forma que contenga todos los elementos de P. 2. Para cada no terminal A N obtener el conjunto Unitario(A) Unitario(A)={B N A B * usando solamente producciones unitarias} Nota: A Unitario(A) porque A A 3. Para cada A para el cual Unitario(A) {A} Para cada B Unitario(A) Para cada producción no unitaria B w de P añadir A w a P 4. Eliminar todas las producciones unitarias de P 0 GramáticasLibresContrxto.ppt 29/03/
25 Simplificación: Transformación 4 (III) Ejemplo: Sea la GIC S A Aa A B B C b C D ab D b Eliminación de las producciones unitarias o no generativas de G. GramáticasLibresContrxto.ppt 29/03/
26 Forma Normal de Chomsky Es un modelo o forma normal para las producciones. Se dice que una GIC está en Forma Normal de Chomsky, si no contiene ε-producciones y si todas las producciones son de la forma: A a, para a Σ A BC, con B y C no terminales Toda GIC puede ser transformada en un GIC en Forma Normal de Chomsky. Sea G una GIC tal que ε L(G) Sea G una GIC tal que ε L(G) GramáticasLibresContrxto.ppt 29/03/
27 Forma Normal de Chomsky (II) Sea G una GIC y ε L(G), G puede ser transformada en una GIC en F.N. de Chomsky. 1. Eliminar los símbolos inútiles, las ε-producciones y las producciones unitarias de G. 2. Para las producciones de la forma A w y w >1, donde w=x 1 X 2...X n, si X i es un terminal, llamado σ, sustituimos X i por un no terminal llamado C σ y añadimos la producción C σ σ. 3. Transformar aquellas producciones con más de dos no terminales que se encuentren en el lado derecho de la misma. Si A B 1 B 2...B n, n 2 se reemplaza por (n-1) producciones A B 1 D 1 D 1 B 2 D 2... D n-2 B n-1 B n Donde los D i son nuevos no terminales. GramáticasLibresContrxto.ppt 29/03/
28 Forma Normal de Chomsky (III) Ejemplo: Sea la GIC S ba ab A baa as a B abb bs b Transformarla a una GIC en Forma Normal de Chomsky. GramáticasLibresContrxto.ppt 29/03/
29 Forma Normal de Chomsky (IV) Sea G una GIC y ε L(G), G puede ser transformada en una GIC en F.N. de Chomsky. 1. Se obtiene la gramática en Forma Normal de Chomsky que genere el lenguaje L(G)-ε 2. Añadir a la gramática resultante la producción S ε Qué problema hay con la GIC obtenida de la transformación previa? GramáticasLibresContrxto.ppt 29/03/
30 Forma Normal de Greibach Definición: Una producción de la forma A αa con α (Ν Σ)* se conoce como recursiva por la derecha. De la misma forma, una producción de la forma A Aα se conoce como recursiva por la izquierda. Problema: Cuando hay recursividad por la izquierda, los árboles de derivación se expanden por la izquierda. Para algunas aplicaciones de las GIC no es deseable la recursividad por la izquierda. GramáticasLibresContrxto.ppt 29/03/
31 Forma Normal de Greibach (II) Definición : Una GIC está en Forma Normal de Greibach (FNG) si todas las producciones son de la forma A aα donde a es un símbolo terminal y α (Ν Σ)*. No puede tener producciones recursivas a la izquierda Cada producción requiere un símbolo del alfabeto, con lo que una GIC en FNG sólo puede generar lenguajes no vacíos y que no contengan ε GramáticasLibresContrxto.ppt 29/03/
32 Forma Normal de Greibach (III) Teorema: Todo Lenguaje LIC no vacio, que no contiene la palabra vacia ε, se puede generar por medio de una gramática GIC en forma Normal de Greibach. Toda GIC que genera un lenguaje no vacio que no contine la palabra vacia, se puede transformar en una GIC en FN de Greibach. Entonces True/False?: Una gramática regular nunca se puede poner en Forma Normal de Chomsky. Una gramática G con ε L(G) φ que esté en Forma Normal de Chomsky nunca es una gramática regular. Si se tiene una gramática cuyo conjunto de producciones es P:{S a} entonces G es regular y además está en Forma Normal de Chomsky. Toda gramática en Forma Normal de Greibach es una gramática regular. GramáticasLibresContrxto.ppt 29/03/
33 Propiedades de los LIC Objetivo: Encontrar alguna propiedad que caracterice a los LIC para poder determinar si un lenguaje es LIC. Lema de Bombeo: Sea L un LIC que no contiene ε. Entonces existe un entero k para el cual, si z L y z >k, entonces z se puede escribir como z=uvwxy con las propiedades siguientes: 1. vwx k 2. Al menos o v o x no es ε 3. uv i wx i y L para todo i 0 Ejemplo: Sea el lenguaje L={a i b j j = i 2 } Es un Lenguaje Independiente del Contexto? GramáticasLibresContrxto.ppt 29/03/
34 Propiedades de Cierre de los LIC Teorema: Si L 1 y L 2 son LIC, entonces L 1 L 2 es un LIC. Sea G 1 =(Σ 1,N 1,S 1,P 1 ) y G 2 =(Σ 2,N 2,S 2,P 2 ) dos GIC para N 1 N 2 =φ. Definimos G=(Σ,N,S,P) tal que, Σ = Σ 1 Σ 2 N = N 1 N 2 {S} S, nuevo símbolo inicial P = P 1 P 2 {(S,S 1 ), (S,S 2 )} siendo L(G) = L(G 1 ) L(G 2 ). GramáticasLibresContrxto.ppt 29/03/
35 Propiedades de Cierre de los LIC (II) Teorema: Si Les LIC, entonces L* es un LIC. Sea G=(Σ,N,S,P) una GIC. Definimos G =(Σ,N,S,P ) tal que, Σ =Σ N = N {S, T} S, nuevo símbolo inicial P = P {(S, ST), (S,ε), (T, ST), (T, ε)} siendo L(G ) = L(G)*. GramáticasLibresContrxto.ppt 29/03/
36 Propiedades de Cierre de los LIC (III) Teorema: Si L 1 y L 2 son LIC, entonces L 1 L 2 es un LIC. Ejercicio: Definir la GIC G, en función de las GIC G 1 Y G 2, que genere el lenguaje L(G)=L(G 1 )L(G 2 ). Teorema: Los LIC no son cerrados respecto de las operaciones de intersección y complementación. GramáticasLibresContrxto.ppt 29/03/
37 Autómatas de Pila Sean los LIC, L 1 = {a n b n n 0} L 2 = {wcw I w {a,b,c}*} qué problemas surgen si tratamos de reconocer estos lenguajes con un Autómata Finito? Necesitamos recordar lo que ya hemos reconocido Almacenamiento ilimitado Solución: Los Autómatas de Pila son capaces de reconocer todo lenguaje independiente del contexto. (estado actual + cima pila + símbolo de entrada) (nuevo estado actual, nueva pila) GramáticasLibresContrxto.ppt 29/03/
38 Autómatas de Pila (II) Un Autómata de Pila No Determinista (ADPND) es una 7-tupla M=(Σ, Q, Γ,, S, F, z) donde, Σ es el alfabeto de entrada Q es el conjunto finito de estados Γ es el alfabeto de la pila es la regla de transición Q x (Σ {ε}) x Γ x Q x Γ* S es el estado inicial o de partida (S Q) F es el conjunto de estados de aceptación (F Q) z es el símbolo inicial de la pila (z Γ) GramáticasLibresContrxto.ppt 29/03/
39 Autómatas de Pila (III) Algunas consideraciones: Dado que el autómata de pila es no determinista, es una regla de transición. Cuántos pares resultantes puedo tener para cada terna de entrada?. Podemos tener el par resultante (p, ε). Qué sucede?. De la definición del autómata, siempre se consume un símbolo de la pila. Qué sucede si la pila está vacía?. Qué sucede en esta transición (q, ε, a)=(p, aa)? Qué sucede en esta transición (q, σ, γ) = φ? GramáticasLibresContrxto.ppt 29/03/
40 Autómatas de Pila (IV) Ejemplo: Sea el ADPND, Σ = {a, b} Q = {q 1, q 2, q 3, q 4 } Γ = {A, B} z = A F = {q 4 } s = q 1 (a,a) (b,a) (ε,a) (a,b) (b,b) (ε,b) q 1 {(q 2,BA),(q 4,A)} φ {(q 4, ε)} φ φ φ q 2 φ φ φ {(q 2,BB)} {(q3, ε)} φ q 3 φ φ {(q 4,A)} φ {(q3, ε)} φ q 4 φ φ φ φ φ φ Qué lenguaje reconoce el autómata de pila? GramáticasLibresContrxto.ppt 29/03/
41 Autómatas de Pila (V) La Descripción Instantánea (DI) de un autómata de pila, es una configuración concreta, de las sucesivas, por las que para el autómata durante el procesamiento de una cadena. Notación: DI :: (q, w, u) donde, q es el estado actual w es los símbolos de entrada aún no leídos u es el contenido de la pila El símbolo indica el movimiento de una DI a otra, (q 1, aw, bx) (q 2, w, yx) representa el movimiento que resulta de (q 2,y) (q 1, a, b) GramáticasLibresContrxto.ppt 29/03/
42 Autómatas de Pila (VI) Sea M=(Σ, Q, Γ,, S, F, z) un ADPND. El lenguaje aceptado por M se denota L(M) y es el conjunto, L={w Σ* (S,w,z) (p,ε,u) para p F y u Γ*} Nota: La pila puede acabar vacía o no. * La conclusión a la que se debe llegar, es que los ADPND aceptan los lenguajes independientes del contexto. Dado el lenguaje, L={wcw I w {a,b}*} Cómo podría construir el ADPND que lo reconozca? GramáticasLibresContrxto.ppt 29/03/
Lenguajes 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
Tema 5: Autómatas a pila. Teoría de autómatas y lenguajes formales I
Tema 5: Autómatas a pila 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 Wesley.
Tema 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.
Gramá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:
Teoría de Lenguajes. Gramáticas incontextuales
Teoría de Lenguajes Gramáticas incontextuales José M. Sempere Departamento de Sistemas Informáticos y Computación Universidad Politécnica de Valencia Gramáticas incontextuales 1. Definiciones básicas.
1. 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
Ciencias de la Computación I
Ciencias de la Computación I Gramáticas Libres del Contexto y Lenguajes Libres del Contexto Gramáticas Formales Una gramática formal es una cuadrupla G = (N, T, P, S) N = conjunto finito de símbolos no
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
Gramá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.
Se pueden agrupar las reglas que tienen la misma parte izquierda:
GRAMÁTICA DE CONTEXTO LIBRE Gramática de contexto libre G = (V N, V T, P, S) que genera oraciones copulativas: V N = { , , , , V T = {el, la, hombre, niña,
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 )
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
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.
Computabilidad 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
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:
Examen de Teoría de Autómatas y Lenguajes Formales
Examen de Teoría de Autómatas y Lenguajes Formales TAL 16 de Septiembre de 2008 (I) CUESTIONES: (Justifique formalmente las respuestas) 1. Pronúnciese acerca de la veracidad o falsedad de los siguientes
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
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
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.
Matemáticas discretas II
Matemáticas discretas II Lenguajes y gramáticas [email protected] Carlos Andrés Delgado S. Raúl E Gutierrez de Piñerez R. Facultad de Ingeniería. Universidad del Valle Abril 2017
Lenguajes formales y autómatas
y autómatas. [email protected] Marzo, 2014 El alfabeto Un alfabeto es un conjunto finito no vacío cuyos elementos se llaman símbolos. Sea Σ = {a, b} el alfabeto que consta de los símbolos
Máquinas de Turing. Definición 2
Definición 1 La Máquina de Turing (MT) es el modelo de autómata com máxima capacidad computacional: la unidad de control puede desplazarse a izquierda o derecha y sobreescribir símbolos en la cinta de
Propiedades 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,
Conversión de Gramáticas Libres de Contexto. EQUIPO 6 Jardón Jara Micheelle Enrique Perfecto Espinosa Valeria
Conversión de Gramáticas Libres de Contexto EQUIPO 6 Jardón Jara Micheelle Enrique Perfecto Espinosa Valeria Objetivo Desarrollar el tema de Conversión de Gramáticas Libres de Contexto (GLC): Algoritmos
Tema 2 Gramáticas y Lenguajes Libres de Contexto
Tema 2 Gramáticas y Lenguajes Libres de Contexto 1. Definiciones Básicas 2. 3. Forma Normal de Chomsky 4. Autómatas de Pila 5. Propiedades de los Lenguajes Libres de Contexto 1. Definiciones básicas 1.
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,
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
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
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
TEMA 6 GRAMÁTICAS INDEPENDIENTES DEL CONTEXTO
TEMA 6 GRAMÁTICAS INDEPENDIENTES DEL CONTEXTO TEMA 6.- GRAMÁTICAS INDEPENDIENTES DEL CONTEXTO 6.1. Gramáticas independientes del contexto. 6.2. Limpieza de Gramáticas Independientes del contexto. 6.3.
autómatas finitos y lenguajes regulares LENGUAJES FORMALES Y
CONTENIDO Reconocedores [HMU2.1]. Traductores [C8]. Diagramas de Estado [HMU2.1]. Equivalencia entre AF deterministas y no deterministas [HMU2.2-2.3]. Expresiones [HMU3]. Propiedades de [HMU4]. Relación
Sea G = (V N, V T, S, P) una gramática libre de contexto, un árbol es un árbol de derivación para G si:
09:50 1 Temas Gramáticas libres de contexto Árbol de derivación Derivación más a la izquierda y más a la derecha Ambigüedad Factorización a izquierda Gramáticas propias Expresiones Regulares Objetivo Que
Jerarquía de Chomsky. 1. Clasificación de gramáticas. 2. Clasificación de lenguajes. 3. Gramáticas regulares. 5. Gramáticas dependientes del contexto
Jerarquía de Chomsky 1. Clasificación de gramáticas 2. Clasificación de lenguajes 3. Gramáticas regulares 4. Gramáticas independientes del contexto 5. Gramáticas dependientes del contexto 6. Gramáticas
TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES Práctica 5 - Simplificación de gramáticas incontextuales
TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES Práctica 5 - Simplificación de gramáticas incontextuales 1. Objetivos 2. Representación de los datos en Mathematica 3. Eliminación de símbolos inútiles 3.1. Símbolos
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
Eliminación de Símbolos Inútiles
Eliminación de Símbolos Inútiles Veremos cómo eliminar los símbolos inútiles de una gramática. Lo haremos con dos algoritmos, que son definidos en la demostración de los siguientes lemas. Lema 1 Dada una
1.-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
Proyecto 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
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
Tres versiones de Pal. Sesión 19. Una máquina para aceptar Pal El lenguaje: Tabla de transición para Pal. Más de un siguiente estado.
Tres versiones de Pal Sesión 19 Autómata de pila determinístico Pal marca = {xcx r x {0, 1} * } 0110c0110 Pal par = {xx r x {0, 1} * } 00111100 Pal = {x x = x r {0, 1} * } 00111100 001101100 Una máquina
Alfabetos y cadenas (1) Alfabetos y cadenas (2) Lenguajes. Propiedades de la concatenación:
Alfabetos y cadenas (1) 0 b b 0 1 Alfabeto: Un alfabeto Σ es un conjunto finito y no vacío de símbolos. Cadena sobre un alfabeto Σ: Es una sucesión de caracteres tomados de Σ. Cadena vacía: Cadena sin
Computabilidad y Lenguajes Formales: Autómatas de Pila
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] Autómatas
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)
Computabilidad y lenguajes formales: Sesión 17. Equivalencia entre Expresiones Regulares y Autómatas Finitos
Computabilidad y lenguajes formales: Sesión 17. Equivalencia entre Expresiones Regulares y Autómatas Finitos Prof. Gloria Inés Alvarez V. Departamento de Ciencias e Ingeniería de la Computación Pontificia
Má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
6 Propiedades de los lenguajes libres de contexto 6.1 El Lema de Bombeo para LLC
1 Curso ásico de Computación 6 Propiedades de los lenguajes libres de contexto 6.1 El Lema de ombeo para LLC El lema de ombeo para LLC nos dice que siempre existe dos subcadenas cortas muy juntas que se
Lenguajes 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
PROGRAMACIÓN II AÑO 2009 TALLER 3: TEORÍA DE LENGUAJES Y AUTÓMATAS
Licenciatura en Sistemas de Información PROGRAMACIÓN II AÑO 2009 TALLER 3: TEORÍA DE LENGUAJES Y AUTÓMATAS UNSE FCEyT 1. DESCRIPCIÓN Este taller consta de tres partes. En cada una de ellas se especifican
SSL Guia de Ejercicios
1 SSL Guia de Ejercicios INTRODUCCIÓN A LENGUAJES FORMALES 1. Dado el alfabeto = {a, b, c}, escriba las palabras del lenguaje L = {x / x }. 2. Cuál es la cardinalidad del lenguaje L = {, a, aa, aaa}? 3.
Universidad de Valladolid
Universidad de Valladolid Departamento de Informática Teoría de autómatas y lenguajes formales. 2 o I.T.Informática. Gestión. Examen de primera convocatoria. 18 de junio de 29 Apellidos, Nombre... Grupo:...
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
Teoría de Autómatas y Lenguajes Formales.
Teoría de Autómatas y Lenguajes Formales Prueba de Evaluación de Lenguajes y Gramáticas Autores: Araceli Sanchis de Miguel Agapito Ledezma Espino Jose A. Iglesias Martínez Beatriz García Jiménez Juan Manuel
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
Compiladores. 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
Nivel del ejercicio : ( ) básico, ( ) medio, ( ) avanzado.
Universidad Rey Juan Carlos Curso 2010 2011 Teoría de Autómatas y Lenguajes Formales Ingeniería Técnica en Informática de Sistemas Hoja de Problemas 10 Gramaticas Independientes del Contexto Nivel del
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
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
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
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
Víctor J. Díaz Madrigal y Fernando Enríquez de Salamanca Ros. 2.1 Límites de los lenguajes regulares Teorema de Myhill-Nerode Lema del bombeo
Guión 2.1 Límites de los lenguajes regulares Teorema de Myhill-Nerode Lema del bombeo Tma. de Myhill-Nerode: Relaciones de equivalencia Una relación de equivalencia sobre Σ es: 1. Invariante por la derecha:
Expresiones regulares, gramáticas regulares Unidad 3
Expresiones regulares, gramáticas regulares Unidad 3 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,
Introducció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
Autó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
Ciencias de la Computación I
Ciencias de la Computación I Gramáticas ensibles al Contexto y enguajes ensibles al Contexto ctubre 2009 Gramáticas Formales Una gramática formal es una cuadrupla G = (N,, P, ) N = conjunto finito de símbolos
INTRODUCCIÓN A COMPILADORES Y LENGUAJES FORMALES LENGUAJES FORMALES
Todos los derechos de propiedad intelectual de esta obra pertenecen en exclusiva a la Universidad Europea de Madrid, S.L.U. Queda terminantemente prohibida la reproducción, puesta a disposición del público
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
Lenguajes 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
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 {0n1n} debido a que no se puede registrar para todo n con un número finito de estados. Otro lenguaje
Tarea Nº 2 Introducción a la Informática Lema del Bombeo y Lenguajes de Contexto Libre
Tarea Nº 2 Introducción a la Informática Lema del Bombeo y Lenguajes de Contexto Libre Dr. Horst von Brand [email protected] Diego Candel [email protected] Lunes 24 de Abril 1º Semestre del 2006
Lenguajes y Compiladores Análisis Léxico
Facultad de Ingeniería de Sistemas Lenguajes y Compiladores Análisis Léxico 1 Análisis léxico La tarea del análisis léxico es reconocer símbolos dentro de la cadena de caracteres que es el programa fuente.
Lenguajes 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
Introducció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
Expresiones Regulares
Conjuntos Regulares y Una forma diferente de expresar un lenguaje Universidad de Cantabria Conjuntos Regulares y Esquema 1 Motivación 2 Conjuntos Regulares y 3 4 Conjuntos Regulares y Motivación El problema
Tema 3: Gramáticas Formales. Informática Teórica I
Tema 3: Gramáticas Formales Informática Teórica I Teoría de Gramáticas Formales. Bibliografía M. Alfonseca, J. Sancho y M. Martínez. Teoría de Lenguajes, Gramáticas y Autómatas, R.A.E.C., Madrid, (1998).
Generalidades sobre lenguajes.
no DSIC - UPV July 3, 2011 (DSIC - UPV) July 3, 2011 1 / 21 Definiciones: no Alfabeto Σ = {a, b, c} o Γ = {0, 1} palabra, cadena o frase Σ: x = aaba, y = 0011. Cadena vacía: λ. Longitud de una palabra:
Paré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
TEORIA DE AUTOMATAS.
TEORIA DE AUTOMATAS. RELACION DE PROBLEMAS II.. Construir un AFND capaz de aceptar una cadena u {, }, que contenga la subcadena. Construir un AFND capaz de aceptar una cadena u {, }, que contenga la subcadena.
Introducció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
17 Análisis sintáctico II Compiladores - Profr. Edgardo Adrián Franco Martínez. Gramáticas limpias y bien formadas
2 Contenido Gramáticas limpias y bien formadas Algoritmo para detectar símbolos muertos Algoritmo para detectar símbolos inaccesibles Gramáticas ambiguas Clasificación de métodos de análisis sintáctico
Teoría de la Computación Lenguajes Regulares (LR) - Propiedades
Teoría de la Computación Lenguajes Regulares (LR) - Propiedades Prof. Hilda Y. Contreras Departamento de Computación [email protected] http://webdelprofesor.ula.ve/ingenieria/hyelitza Objetivo Lenguajes
