LENGUAJES FORMALES Y AUTÓMATAS

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

Download "LENGUAJES FORMALES Y AUTÓMATAS"

Transcripción

1 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 Curso 2006/2007

2 Temario Lección 1 Lección 2 Lección 3 Lección 4 Lección 5 Lección 6 Lección 7 Lección 8 Cadenas Lenguajes Expresiones Regulares Gramáticas Incontextuales Autómatas Finitos Autómatas de Pila La Jerarquía de Chomsky Máquinas de Turing

3 Cadenas 1. Alfabetos, símbolos y cadenas 2. Operaciones sobre cadenas

4 Alfabetos, símbolos y cadenas Alfabeto: Conjunto no vacío y finito de elementos denominados símbolos Cadena: Secuencia finita de símbolos procedentes de un alfabeto. Cadena nula (vacía): Aquella cadena que no contiene ningún símbolo. Se denota mediante λ (o ɛ) Ejemplos: Notación: Alfabeto Cadenas {a, b, c} λ, a, abc, ccccc,... {0, 1} λ, 0, , ,... ASCII λ, sin(-1238e42+y), perro, program-nada-begin-end;,... Alfabetos: Σ, Σ 1 Símbolos: a, b, c,... Cadenas:..., u, v, w, x, y, z

5 Operaciones sobre cadenas La longitud o tamaño x de una cadena x = a 1... a n, se define como x = n. La concatenación x y (o xy) de dos cadenas x = a 1... a n e y = b 1... b m se define como xy = a 1... a n b 1... b m La potencia x i con i 0 de una cadena x se define mediante x i = xx.. i.. x Ejemplos: Considerando las cadenas x = 101 e y = 11 definidas sobre {0, 1} Longitud 0 = 1, λ = 0, x = 3 Concatenación xy = 10111, yx = Potencia 0 2 = 00, (10) 3 = , x 2 = xλ = λx = x (Elemento neutro) x(yz) = (xy)z (Asociatividad) Propiedades x 0 = λ x 1 = x xy = x + y x i x j = x i+j con i, j 0 x i = i x con i 0

6 Lenguajes 1. Definición de lenguaje 2. Operaciones sobre lenguajes 3. Problemas fundamentales

7 Definición de lenguaje Universo Σ de un alfabeto Σ: Conjunto de todas las cadenas que se pueden formar con los símbolos de Σ Lenguaje L(Σ) respecto de un alfabeto Σ (o simplemente L en el caso de que Σ se sobreentienda): Cualquier subconjunto del universo, es decir, L Σ Ejemplos de lenguajes sobre Σ = {0, 1} Lenguaje universal Σ {λ, 0, 1, 00, 01, 10, 11, 000, 001,...} Lenguaje vacío Lenguaje de la cadena vacía ={} {λ} Cadenas que empiezan por 0 {0, 00, 01, 000, 001, 010, 011,...} Cadenas de longitud uno {0, 1} Cadenas con un número par de 1s {λ, 11, 011, 101, 110, 0011,...} Cadenas palindrómicas {λ, 11, 00, 010, 000, 101, 111, 0000, 1001,...}

8 Operaciones sobre lenguajes: Operaciones básicas Unión: L 1 L 2 = {x x L 1 o x L 2 } Intersección: L 1 L 2 = {x x L 1 y x L 2 } Diferencia: L 1 L 2 = {x x L 1 y x / L 2 } Complementario: L = L = Σ L Ejemplo: Sean L 1 = {0, 1, 00} y L 2 = {00, 01, 10} definidos sobre Σ = {0, 1} L 1 L 2 = {0, 1, 00, 01, 10} L 1 L 2 = {00} L 1 L 2 = {0, 1} L 1 = {λ, 01, 10, 11, 000, 001, 010, 011,...}

9 Operaciones sobre lenguajes: Basadas en la concatenación Concatenación: L 1 L 2 = L 1 L 2 = {xy x L 1 e y L 2 } Potencia: L i = L L.. i.. L (con i 0) Clausura o Cierre de Kleene: L = L 0 L 1 L 2... = i=0 Li Clausura o Cierre positivo: L + = L 1 L 2 L 3... = i=1 Li Ejemplo: Sean L 1 = {0, 1, 00} y L 2 = {00, 01, 10} definidos sobre Σ = {0, 1} L 1 L 2 = {000, 001, 010, 100, 101, 110, 0000, 0001, 0010} L 2 1 = L 1 L 1 = {00, 01, 000, 10, 11, 100, 001, 0000} L 1 = {λ, 0, 1, 00, 01, 000, 10, 11, 100,...} L + 1 = {0, 1, 00, 01, 000, 10, 11, 100,...} Propiedades L{λ} = {λ}l = L (Elemento neutro) L = L = (Elemento nulo) L 1 (L 2 L 3 ) = (L 1 L 2 )L 3 (Asociatividad) L 0 = {λ} L 1 = L L + = LL = L L L i L j = L i+j con i, j 0

10 Problemas fundamentales Representación de lenguajes: Qué notaciones son útiles para describir lenguajes (infinitos)? Notación Ejemplo Lenguaje Conjuntos {a n b n c n n 0} {λ, abc, aabbcc, aaabbbccc,...} Patrones 0+(10)* {0, 10, 1010, ,...} Autómatas {1, 001, 010, 111, ,...} Gramáticas S asb λ {λ, ab, aabb, aaabbb,...} Estudio de la pertenencia: Está incluida una cadena en el lenguaje descrito por una cierta notación? Clasificación de lenguajes: Pueden ser representados todos los lenguajes con una misma notación?

11 Expresiones regulares 1. Definición de Expresión Regular (ExpReg) 2. Lenguaje de una expresión regular 3. Propiedades algebraicas

12 Definición de Expresión Regular (ExpReg) Dado un alfabeto Σ, las expresiones regulares (expreg) se definen: 1. a Σ es una expresión regular 2. es una una expresión regular 3. λ es una una expresión regular 4. Si α y β son expresiones regulares, entonces a) α + β es una expresión regular b) α β (o αβ) es una expresión regular. c) α es una expresión regular d) (α) es una expresión regular 5. Ninguna otra expresión salvo las anteriores es una expresión regular Ejemplos: Para Σ = {0, 1} tenemos las siguientes ExpRegs 0 1λ (0 + λ) ( + 1)(1 + 0) 0 Nota: La precedencia de los operadores es (de más a menos):,, +

13 Lenguaje de una expresión regular Lenguaje Una expresión regular E representa un lenguaje L(E). Los lenguajes representados por las expresiones regulares se denominan lenguajes regulares. Denotamos la clase de los lenguajes regulares mediante LREG. Relación entre una ExpReg E y su lenguaje L(E) L(a) = {a} L( ) = L(λ) = {λ} L((α)) = L(α) L(α + β) = L(α) L(β) L(αβ) = L(α)L(β) L(α ) = L(α) Ejemplos: L(0 + λ) = L(0) L(λ) = {0, λ} L(a(b + c)) = L(a)(L(b) L(c)) = {ab, ac} L(a ) = L(a) = {a} = {λ, a, aa, aaa,...} = {a n n 0} L(aa ) = L(a)L(a) = {a}{λ, a, aa, aaa,...} = {a, aa, aaa,...} = {a n n 1} L((0 + 1) ) = (L(0) L(1)) = {0, 1} = {λ, 0, 1, 00, 01, 10, 11, 000, 0001,...}

14 Propiedades algebraicas Equivalencia Dos expresiones regulares E 1 y E 2 son equivalentes, E 1 = E 2, cuando L(E 1 ) = L(E 2 ). Propiedades de la unión, concatenación y cierre de Kleene α + β = β + α α + (β + γ) = (α + β) + γ α + = + α = α α + α = α αλ = λα = α α(βγ) = (αβ)γ α = α = = λ = λ αα = α α α α = (α ) = α α = λ + αα Propiedades distributivas α(β + γ) = αβ + αγ (α + β)γ = αγ + βγ (αβ) α = α(βα) (α β) = (α + β) β + λ (α + β ) (α + β) = (α β ) (α β) α Ejemplo: λ a + b ba + b a = λa + b ba + b a = a + b ba + b a = a + b ba + b a = a + bb a + b a = (λ + bb )a + b a = b a + b a = b a

15 Gramáticas independientes del contexto (GIC) 1. Definición de GIC 2. Derivación 3. Lenguaje de una GIC 4. Árbol sintáctico 5. Ambigüedad

16 Definición de GIC: Definición Una gramática independiente del contexto (o incontextual) GIC se define con una tupla: G = (V T, V N, S, P ) V T es el alfabeto de los símbolos terminales (token, lexema) V N es el alfabeto de los símbolos no terminales (variable, categoría) Los alfabetos V T y V N son disjuntos. Denotamos V = V T V N S V N es un no terminal distinguido denominado axioma (símbolo inicial o raíz) P V N V es un conjunto finito de pares (A, α) denominados reglas o producciones denotados A α. Ejemplos: G 0 = ({a, b}, {S, A, B}, S, {S AB, A aa, A a, B Bb, B λ}) G 1 = ({a, b}, {S}, S, {S asb, S λ})

17 Definición de GIC: Notación Salvo que se indique lo contrario usaremos el siguiente convenio en la notación: Un símbolo en V T a, b, c,... Un símbolo en V N A, B, C,... Un símbolo en V Una secuencia en V T..., X, Y, Z..., x, y, z Una secuencia en V α, β, γ,... La cadena vacía Combinación de A-reglas λ A α 1... α k Con estos convenios, la gramática G 1 = ({a, b}, {S}, S, {S asb, S λ}) puede ser descrita de forma sucinta enumerando sus producciones: G 1 = {S asb λ}

18 Derivación Dada una GIC G = (V T, V N, S, P ) definimos: Derivación directa α G β cuando α = µaν, β = µγν y A γ P Derivación (en al menos un paso) α + G β cuando existen α 1, α 2,..., α k con k > 1 tales que: α = α 1 G α 2... G α k = β Derivación (en cero o más pasos) α G β cuando α = β o α + G β Forma sentencial a todo α V que verifica S G α Sentencia a todo w V T que verifica S G w Nota: Cuando se sobreentiende la gramática G se usa la notación, + y. Ejemplo: Dado G 1 = {S asb λ} tenemos que S asb aasbb aaasbbb aaabbb S + asb asb + aaasbbb asb asb asb aaasbbb Formas sentenciales: S, aasbb, aaabbb Sentencia: aaabbbb

19 Lenguaje de una GIC Lenguaje El lenguaje generado por una GIC G = (V T, V N, S, P ) se define mediante: Ejemplos L(G) = {w V T S G w} G 0 = {S AB, A aa a, B Bb λ} L(G 0 ) = {a n b m n 1, m 0} G 1 = {S asb, S λ} L(G 1 ) = {a n b n n 0} Los lenguajes generados por las gramáticas GIC se denomina lenguajes incontextuales o independientes del contexto. Denotaremos la clase de los lenguajes independientes del contexto con LIC. Teorema [LREG LIC] La clase de los lenguajes regulares está estrictamente contenida en la clase de los lenguajes independientes del contexto. Equivalencia Dos gramáticas GIC G 1 y G 2 son equivalentes cuando L(G 1 ) = L(G 2 ) Ejemplo: Las gramáticas G 1, G y G son equivalentes. { } S A λ G 1 = S asb λ G = A abb B A λ G = S aa λ A Sb

20 Árbol sintáctico El conjunto de los árboles sintácticos (de derivación, o de análisis) de una GIC G = (V T, V N, S, P ) incluye aquellos árboles que cumplen que: Sus nodos interiores están etiquetados con símbolos no terminales Sus nodos hojas están etiquetados con símbolos en V o con λ. Si un nodo interior está etiquetado con A y sus k 0 hijos (ordenados de izquierda a derecha) están etiquetados con X 1, X 2,..., X k V entonces A X 1 X 2... X k P. G = S AcB c A aa λ B bs b Toda derivación X G w tiene asociado un único árbol sintáctico (pero no al contrario). Derivación por la izquierda Derivación por la derecha S AcB aacb acb acbs acbc S AcB AcbS Acbc aacbc acbc

21 Ambigüedad: Definición Decimos que una GIC G = (V T, V N, S, P ) es ambigua si existe al menos una cadena w L(G) que tiene dos o más árboles sintácticos distintos. Ejemplo: Sea la gramática G = ({+,, num}, {E}, E, {E E + E E E num}). La cadena num + num + num muestra que G es ambigua puesto que: Denominamos lenguaje ambiguo a aquel que puede ser generado por una gramática ambigua. Decimos que un lenguaje es inherentemente ambiguo si toda gramática que genera dicho lenguaje es ambigua.

22 Ambigüedad: Gramática de la calculadora Existen heurísticas que permiten, en determinados casos, transformar una gramática ambigua en otra equivalente que no lo es. Ambigua (Precedencia y Asociatividad) G = ({num, +,, (, )}, {E}, E, P ) P = {E E + E E E (E) num} Versión no ambigua G = ({num, +,, (, )}, {E, T, F }, E, P ) E E + T T P = T T F F F (E) num

23 Autómatas Finitos (AF) 1. Autómatas finitos deterministas (AFD) 2. Autómatas finitos no deterministas (AFND) 3. Autómatas finitos no deterministas con λ-transiciones (λ-afnd) 4. La clase de los lenguajes aceptados por los autómatas finitos

24 Autómatas Finitos Deterministas (AFD): Definición Un autómata finito determinista AFD es una tupla M = (Σ, Q, q 0, F, δ) donde Σ es el alfabeto de la entrada Q es un conjunto finito de elementos denominados estados q 0 Q es el estado inicial F Q es el conjunto de estados finales o de aceptación δ : Q Σ Q es la función de transición Ejemplo: M 0 = ({0, 1}, {q 0, q 1 }, q 0, {q 0 }, δ) donde δ(q 0, 0) = q 0 δ(q 0, 1) = q 1 δ(q 1, 0) = q 1 δ(q 1, 1) = q 0 Tabla de transición Diagrama (Grafo) de transición M q 0 q 0 q 1 q 1 q 1 q 0

25 AFD: Lenguaje Lenguaje L(M) aceptado por un AFD: Dado un AFD M = (Σ, Q, q 0, F, δ) L(M) = {w Σ δ (q 0, w) F } donde δ : Q Σ Q es la extensión de δ a cadenas definida mediante: δ (q, λ) = q para todo q Q y a Σ δ (q, aw) = δ (δ(q, a), w) Ejemplo: L(M 0 ) lo forman las cadenas de 0s y 1s que contienen un número par de 1s 0101 L(M 0 ) δ (q 0, 0101) = q 0 F q 0 0 q0 1 q1 0 q1 1 q0 100 / L(M 0 ) δ (q 0, 100) = q 1 / F q 0 1 q1 0 q1 0 q1 Equivalencia: Dos AFDs M y M son equivalentes si y sólo si L(M ) = L(M )

26 Autómatas Finitos No Deterministas (AFND): Definición Un autómata finito no determinista AFND es una tupla M = (Σ, Q, q 0, F, δ) similar a un AFD salvo que δ : Q Σ (Q) Ejemplo: M 1 = ({0, 1}, {q 0, q 1, q 2 }, q 0, {q 2 }, δ) donde δ(q 0, 0) = {q 0, q 1 } δ(q 0, 1) = {q 0 } δ(q 1, 0) = δ(q 1, 1) = {q 2 } δ(q 2, 0) = δ(q 2, 1) = Nota: La ejecución del autómata se detiene ante transiciones que conducen a. Tabla de transición M Diagrama (Grafo) de transición q 0 q 0, q 1 q 0 q 1 q 2 q 2

27 AFND: Lenguaje Lenguaje L(M) aceptado por un AFND: Dado un AFND M = (Σ, Q, q 0, F, δ) L(M) = {w Σ δ (q 0, w) F } donde δ : Q Σ (Q) es la extensión de δ a cadenas definida δ (q, λ) = {q} δ (q, wa) = para todo q Q y a Σ p δ (q,w) δ(p, a) Ejemplo: L(M 1 ) lo forman las cadenas de 0s y 1s que acaban en L(M 1 ) δ (q 0, 10101) = {q 0, q 2 } 10 / L(M 1 ) δ (q 0, 10) = {q 0, q 1 } Equivalencia: Dos AFNDs M y M son equivalentes si y sólo si L(M ) = L(M )

28 AFND con λ-transiciones (λ-afnd): Definición Un autómata finito no determinista con transiciones nulas λ-afnd es una tupla M = (Σ, Q, q 0, F, δ) similar a un AFND salvo que δ : Q (Σ {λ}) (Q) Ejemplo: M 2 = ({0, 1}, {q 0, q 1, q 2 }, q 0, {q 2 }, δ) donde δ(q 0, 0) = {q 1 } δ(q 0, 1) = δ(q 0, λ) = {q 1 } δ(q 1, 0) = δ(q 1, 1) = {q 1, q 2 } δ(q 1, λ) = δ(q 2, 0) = δ(q 2, 1) = δ(q 2, λ) = {q 0 } Nota: La ejecución del autómata se detiene ante transiciones que conducen a. Tabla de transición M λ Diagrama (Grafo) de transición q 0 q 1 q 1 q 1 q 1, q 2 q 2 q 0

29 λ-afnd: Cierre λ Dado un λ-afnd M = (Σ, Q, q 0, F, δ) se define λ (S) con S Q como el menor conjunto que verifica: 1. si q S entonces q λ (S) 2. si q λ (S) entonces δ(q, λ) λ (S) Ejemplo: Dado el λ-afnd M 2 λ ({q 0 }) = {q 0, q 1 } λ ({q 1 }) = {q 1 } λ ({q 2 }) = {q 0, q 1, q 2 } λ ({q 1, q 2 }) = λ ({q 1 }) λ ({q 2 }) = {q 0, q 1, q 2 }

30 λ-afnd: Lenguaje Lenguaje L(M) aceptado por un λ-afnd: Dado un λ-afnd M = (Σ, Q, q 0, F, δ) L(M) = {w Σ δ (q 0, w) F } donde δ : Q Σ (Q) es la extensión de δ a cadenas definida δ (q, λ) = λ ({q}) δ (q, wa) = λ ( para todo q Q y a Σ p δ (q,w) δ(p, a)) Ejemplo: L(M 2 ) lo forman cadenas constituidas por secuencias no vacías de 1s precedidos opcionalmente por un L(M 1 ) δ (q 0, 0101) = {q 0, q 1, q 2 } 010 / L(M 1 ) δ (q 0, 010) = {q 1 } Equivalencia: Dos λ-afnds M y M son equivalentes si y sólo si L(M ) = L(M )

31 La clase de los lenguajes aceptados por los AFs Teorema Dado L Σ, las siguientes tres afirmaciones son equivalentes: L es aceptado por un AFD L es aceptado por un AFND L es aceptado por un λ-afnd Teorema: La clase LAF de lenguajes aceptados por los AFs es idéntica a la clase LREG de los lenguajes descritos mediante expresiones regulares. Ejemplo: Para el lenguaje {a, ab} tenemos: a + ab

32 1. Autómata de Pila (AP) Autómatas de Pila (AP) 2. Autómata de Pila Determinista (APD)

33 Autómata de Pila (AP): Definición Un autómata de pila AP es una tupla M = (Σ, Γ, Z 0, Q, q 0, F, δ) donde Σ es el alfabeto de la entrada Γ es el alfabeto de los símbolos de la pila Z 0 Γ Σ es la marca de la pila (se usa para determinar su fondo) Q conjunto finito de estados (q 0 Q es el inicial y F Q los finales) δ : Q (Σ {λ}) Γ fin (Q Γ ) es la función parcial de transición Ejemplo: M 1 = ({a, b}, {a, b, Z 0 }, Z 0, {p, q, f}, p, {f}, δ) donde δ(p, a, Z 0 ) = {(p, az 0 )} δ(p, a, a) = {(p, aa)} δ(p, b, a) = {(q, λ)} δ(q, b, a) = {(q, λ)} δ(q, λ, Z 0 ) = {(f, λ)} Nota: Las transiciones no definidas indican que el autómata se detiene.

34 AP: Configuración, movimiento y computación Dado un AP M = (Σ, Γ, Z 0, Q, q 0, F, δ) definimos: Configuración: Tupla de la forma (q, x, α) con q Q, x Σ y α Γ Movimiento M : Cambio de configuración en el autómata (q, aw, Aγ) M (p, w, βγ) si (p, β) δ(q, a, A) con a Σ {λ} Computación M : Secuencia de cero o más movimientos. Dadas dos configuraciones C y D, se cumple C M D cuando C = D o existen c 1, c 2,..., c k con k > 1 tales que: C = c 1 M c 2... M c k = D Nota: Cuando el AP M se sobreentiende se usa la notación y (p, aabb, Z 0 ) M1 (p, abb, az 0 ) M1 (p, bb, aaz 0 ) M1 (q, b, az 0 ) M1 (q, λ, Z 0 ) M1 (q, λ, λ) (p, abb, az 0 ) M 1 (p, abb, az 0 ) (p, abb, az 0 ) M 1 (q, b, az 0 )

35 AP: Lenguajes aceptados Dado un AP M = (Σ, Γ, Z 0, Q, q 0, F, δ) definimos: Por pila vacía: L V (M) = {w Σ (q 0, w, Z 0 ) M (q, λ, λ) con q Q} Por estado final: L F (M) = {w Σ (q 0, w, Z 0 ) M (q f, λ, α) con α Γ, q f F } Ejemplos: L V = L F = {a n b n n > 0} L V = y L F = a

36 AP: Indeterminismo El AP de la figura es no determinista y reconoce el lenguaje ww R con w (0 + 1). El indeterminismo se debe a que el AP ignora cuando comienza el sufijo w R. De forma que o bien sigue en el estado p indicando que no se ha leido el primer símbolo de w R o bien cambia al estado q indicando que ha leido el primer símbolo de w R.

37 AP: La clase LAP Teorema: La clase de lenguajes aceptados por los AP con aceptación por estado final es la misma que la clase de los lenguajes aceptados por los AP con aceptación por pila vacía. Denotaremos a dicha clase mediante LAP. Teorema: La clase LAP es idéntica a la clase LIC de los lenguajes generados por las gramáticas independientes del contexto. Ejemplo: Para el lenguaje a m+n b n con n, m > 0 tenemos: G = S A I AI aa a aib ab

38 Autómata de Pila Determinista (APD): Definición Un autómata de pila determinista APD es una AP M = (Σ, Γ, Z 0, Q, q 0, F, δ) tal que para cada q Q, a Σ y X Γ se cumple δ(q, a, X) + δ(q, λ, X) 1 Ejemplo: El siguiente APD reconoce el lenguaje wcw R donde w {0, 1}. Estado Entrada Pila p 01c10 Z 0 p 1c10 0Z 0 p c10 10Z 0 q 10 10Z 0 q 0 0Z 0 q λ Z 0 f λ λ Se denominan lenguajes independientes del contexto deterministas a aquellos lenguajes independientes del contexto que son aceptados por algún APD. Denotamos mediante LICD la clase de los lenguajes independientes del contexto deterministas.

39 APD: La clase LAPD(F) Denotamos mediante LAPD(F) la clase de los lenguajes aceptados por los APD con aceptación por estado final. Teorema: [LAF LAPD(F)] Si un lenguaje es aceptado por un AF entonces dicho lenguaje es aceptado por un APD con aceptación por estado final. (Basta con añadir Z 0 /Z 0 a cada una de las transiciones del AFD) Teorema: [LAPD(F) LAP] Si un lenguaje es aceptado por un APD con aceptación por estado final entonces dicho lenguaje es aceptado por un AP. (Lo contrario no es cierto, puesto que el lenguaje ww R, con w {0, 1}, no puede ser aceptado mediante un APD debido a la imposibilidad de saber a priori en qué momento debe empezar el reconocimiento del sufijo w R ) Nota: A pesar de que el autómata es no determinista, podemos encontrar una gramática no ambigua para generar dicho lenguaje: G = ({0, 1}, {S}, S, {S 1S1 0S0 λ})

40 APD: La clase LAPD(V) Denotamos mediante LAPD(V) la clase de los lenguajes aceptados por los APD con aceptación por pila vacía. Teorema Dado L Σ, las siguientes dos afirmaciones son equivalentes: 1. L es aceptado por un APD por pila vacía 2. L es aceptado por un APD por estado final y L cumple la propiedad del prefijo (Un lenguaje L cumple la propiedad del prefijo (PREF) si no existen dos cadenas distintas x, y L tales que x es un prefijo de y)

41 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 sin restricciones

42 Clasificación de gramáticas Chomsky generaliza el concepto de gramática G = (V T, V N, S, P ) y propone una clasificación (jerarquía) según la forma que deben tener sus producciones: Regulares (GREG) Independientes del contexto (GIC) Dependientes del contexto (GDC) Con estructura de frase (GEF) Por la izquierda: A Ba A a Por la derecha: A ab A a A v αaβ v con αaβ v αaβ γ donde A, B V N, a V T, α, β, γ V y v V + Para cubrir el caso de la generación de λ en todos los tipos de gramáticas, se admite la inclusión de la regla S λ en GREGs, GICs y GDCs. Se verifica: El conjunto de las gramáticas GRs está estrictamente contenido en el de las GICs. El conjunto de las gramáticas GICs está estrictamente contenido en el de las GDCs. El conjunto de las gramáticas GDCs está estrictamente contenido en el de las GEFs.

43 Clasificación de lenguajes La jerarquía de Chomsky implica a su vez una jerarquía de lenguajes. Las gramáticas GREGs por la derecha o izquierda generan la misma clase de lenguajes LREG denominados regulares. Esta clase coincide con la de los lenguajes aceptados por los autómatas finitos y la de los lenguajes descritos mediante expresiones regulares. Las GICs generan la clase LIC de los lenguajes independientes del contexto. Esta clase coincide con la de los lenguajes aceptados por los autómatas de pila. Las GDCs generan la clase LDC de los lenguajes dependientes del contexto. Las GEFs generan la clase LEF de los lenguajes con estructura de frases. Esta clase de lenguajes coincide con la de los lenguajes aceptados por las máquinas de Turing. Se verifica LREG LIC LDC LEF

44 Gramáticas regulares Ejemplo: Las dos gramáticas G r y G l generan el lenguaje regular Regular por la derecha S 1A G r = A 1A 0B 0 B 0B 0 Regular por la izquierda S C0 G l = C C0 D1 1 D D1 1

45 Gramáticas independientes del contexto Ejemplo: Las dos gramáticas G 1 y G 2 generan el lenguaje independiente del contexto 0 n 1 n 2 m con n, m 0. GIC en formato no estricto S AB G 1 = A 0A1 λ B 2B λ GIC en formato estricto S AB A B λ G 2 = A 0A1 01 B 2B 2 Podemos observar que la gramática G 1 no es una GIC en sentido estricito ( incluye reglas nulas asociadas a símbolos que no son el axioma). Admitiremos, sin embargo, que es una GIC debido al siguiente teorema. Teorema Si todas las reglas de una gramática G son de la forma A γ con A V N y γ V, entonces podemos obtener otra gramática GIC equivalente a G.

46 Gramáticas dependientes del contexto Ejemplo: Sea la GDC G = ({a, b, c}, {S, M}, S, P ) donde P = S amc asmc cm Mc am ab bm bb La gramática G genera el lenguaje dependiente del contexto a n b n c n con n > 0. Un ejemplo de derivación sería: S asmc aasmcmc aaamcmcmc aaammccmc aaammcmcc aaammmccc aaabmmccc aaabbmccc aaabbbccc Teorema Toda gramática GDC G pueden ser convertida en otra gramática equivalente G donde todas las reglas de G son la forma αaβ αvβ o S λ con A V N, v V + y α, β V. Es decir, reglas en donde A se sustituye por v en el contexto (α, β).

47 Gramáticas con estructura de frases Las gramáticas GEFs se caracterizan frente al resto (dejando aparte el caso S λ) en que admite reglas compresoras. Una regla compresora es aquella regla que cumple que el tamaño de su lado derecho es menor que el tamaño de su lado izquierdo. Ejemplo: Sea la GEF G = ({a, b, c}, {S, M}, S, P ) donde P = S abmsc λ bmc bc bma abm bmb bbm La gramática G genera el lenguaje a n b n c n con n 0. Un ejemplo de derivación sería: S abmsc abmabmscc abmabmcc abmabcc aabmbcc aabbmcc aabbcc

48 Máquinas de Turing 1. Modelo básico de una Máquina de Turing 2. Máquinas de Turing y computadoras 3. Lenguajes aceptados por una Máquina de Turing

49 Modelo básico de una MT: Componentes Una máquina de Turing (MT) es una tupla M = (Γ, Σ,, Q, q 0, F, δ) donde Γ es el alfabeto de la cinta infinita por ambos lados. Σ Γ es el alfabeto de la entrada Γ ( / Σ) es el símbolo espacio en blanco. Q conjunto finito de estados (q 0 Q es el inicial y F Q los finales) δ : Q Γ Q Γ {I, D} es la función parcial de transición (I y D indican si tras la lectura el movimiento es a la izquierda o a la derecha) Ejemplo: M 1 = ({a, b, }, {a, b},, {q 0, q 1 }, q 0, {q 1 }, δ) donde δ(q 0, a) = (q 0, a, D) δ(q 0, b) = (q 0, a, D) δ(q 0, ) = (q 1,, I) Tabla de transición M 1 a b q 0 q 0 ad q 0 ad q 1 I Diagrama (Grafo) de transición q 1

50 Modelo básico de una MT: Movimientos Dada una MT M = (Γ, Σ,, Q, q 0, F, δ) se define Configuración X 1... X i 1 qx i... X n con X 1,... X n Γ y q Q, indica que M está en el estado q, que el puntero de lectura se encuentra situado sobre la casilla que contiene el símbolo X i, y que todas las casilla a la izquierda (derecha) del símbolo X 1 (X n ) contienen. Movimiento M : Cambio de configuración en el autómata. Hay dos alternativas dependiendo del sentido del movimiento indicado por las directivas I o D Izquierdo: X 1... X i 1 qx i... X n M X 1... px i 1 Y... X n si δ(q, X i ) = (p, Y, I) Derecho: X 1... X i 1 qx i... X n M X 1... X i 1 Y p... X n si δ(q, X i ) = (p, Y, D) Computación M : Secuencia de cero o más movimientos. Nota: Cuando la MT M se sobreentiende se usa la notación y q 0 aaba M1 aq 0 aba M1 aaq 0 ba M1 aaaq 0 a M1 aaaaq 0 M1 aaaq 1 a aq 0 aba M 1 aq 0 aba q 0 aaba M 1 aaaq 1 a

51 Máquinas de Turing y computadoras Una función de cadena es Turing computable si existe una MT M = (Γ, Σ,, Q, q 0, F, δ) para la que q 0 w M q f u para algún q f F, cuando f(w) = u donde u, v Σ. Ejemplo: Supongamos que representamos un entero positivo n mediante una cadena a n. La siguiente MT calcula la función f(n, m) = n + m teniendo en cuenta que f será representada mediante la transformación de a n ba m en a n+m b. M a b q 0 q 0 ad q 1 ad q 1 q 1 ad q 2 I q 2 q 3 bi q 3 q 3 ai q 4 D q 4 q 0 abaa aq 0 baa aaq 1 aa aaaq 1 a aaaaq 1 aaaq 2 a aaq 3 ab aq 3 aab q 3 aaab q 3 aaab q 4 aaab

52 Lenguajes aceptados por una MT: Definición Lenguaje L(M) aceptado por una MT: Dado un MT M = (Γ, Σ,, Q, q 0, F, δ) L(M) = {w Σ q 0 w M αq f β con α, β Γ y q f F } Ejemplo: L(M) acepta el lenguaje a n con n 0. M a q 0 q 0 ad q 1 D q 1 q 0 aa aq 0 a aaq 0 aa q 1 Nota: Asumimos que no existen transiciones desde ningún estado de aceptación. Los lenguajes aceptados por las MT se denominan lenguajes recursivamente enumerables. Denotamos mediante LR.E. a la clase de los lenguajes recursivamente enumerables. Equivalencia: Decimos que dos MT M 1 y M 2 son equivalentes cuando L(M 1 ) = L(M 2 ).

53 Lenguajes aceptados por una MT: La parada Parada Decimos que una MT M = (Γ, Σ,, Q, q 0, F, δ) para si alcanza un p Q y señala a un X Γ para el que no está definido δ(p, X). Una MT no tiene porqué pararse ante todas las cadenas de entrada. Por ejemplo, la MT M acepta el lenguaje {a, b} y sólo se para con las cadenas λ, a y b del lenguaje (a + b). M a b q 0 q 1 ad q 1 bd q 1 q 0 ai q 0 bi q 2 D q 0 a aq 1 a q 2 q 0 ab aq 1 b q 0 ab aq 1 b... q 2 Los lenguajes aceptados por una MT que paran ante cualquier cadena de entrada (pertenezca o no al lenguaje) se denominan lenguajes recursivos. Denotamos la clase de los lenguajes recursivos mediante LREC. Teorema [LDC LREC]. La clase LDC de los lenguajes dependientes del contexto está contenida de forma estricta en la clase de los lenguajes recursivos.

1. Cadenas EJERCICIO 1

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

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

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 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 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

PROGRAMACIÓN II AÑO 2009 TALLER 3: TEORÍA DE LENGUAJES Y AUTÓMATAS

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

Más detalles

Expresiones Regulares

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

Más detalles

autómatas finitos y lenguajes regulares LENGUAJES FORMALES Y

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

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

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

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

Introducción. Las gramáticas definen las reglas que definen a los lenguajes Las reglas pueden tener una diversa variedad de esquemas

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

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

SSL Guia de Ejercicios

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.

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

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

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

CONJUNTOS REGULARES. Orlando Arboleda Molina. 19 de Octubre de Escuela de Ingeniería de Sistemas y Computación de La Universidad del Valle

CONJUNTOS REGULARES. Orlando Arboleda Molina. 19 de Octubre de Escuela de Ingeniería de Sistemas y Computación de La Universidad del Valle CONJUNTOS REGULARES Orlando Arboleda Molina Escuela de Ingeniería de Sistemas y Computación de La Universidad del Valle 19 de Octubre de 2008 Contenido Expresiones regulares Teorema de Kleene Autómatas

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

Autómatas Finitos Deterministicos (DFA)

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

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

Las Gramáticas LL. Gramáticas con Parsing Eficiente. Universidad de Cantabria

Las 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 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

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

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

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

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

Sumario: Máquinas Secuenciales, Autómatas y Lenguajes Formales. Tema 1: Conceptos básicos (parte 1) Tema 1: Conceptos básicos

Sumario: Máquinas Secuenciales, Autómatas y Lenguajes Formales. Tema 1: Conceptos básicos (parte 1) Tema 1: Conceptos básicos Formales Tema 1: Conceptos básicos (parte 1) Holger Billhardt holger.billhardt@urjc.es Sumario: Tema 1: Conceptos básicos 1. Lenguajes Formales 2. Gramáticas Formales 3. Autómatas Formales 2 1 Sumario:

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

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) 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 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

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 2 Gramáticas y Lenguajes Libres de Contexto

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.

Más detalles

Tema 1: Introducción. Teoría de autómatas y lenguajes formales I

Tema 1: Introducción. Teoría de autómatas y lenguajes formales I Tema 1: Introducción 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.

Más detalles

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

Examen. 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 Examen IIC 2222 Teoría de Autómatas y Lenguajes Formales Segundo Semestre, 2003 Este examen tiene

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

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

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

Teoría de Autómatas y Lenguajes Formales.

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

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

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

Teoría de Lenguajes. Gramáticas incontextuales

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.

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

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

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

300CIG007 Computabilidad y Lenguajes Formales: Autómatas Finitos

300CIG007 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

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

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

Introducción a la Lógica y la Computación

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

Más detalles

Propiedades de lenguajes independientes del contexto

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,

Más detalles

Tema 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 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 detalles

DEFINICIONES BÁSICAS E INTRODUCCIÓN A LENGUAJES FORMALES

DEFINICIONES BÁSICAS E INTRODUCCIÓN A LENGUAJES FORMALES 1 DEFINICIONES BÁSICAS E INTRODUCCIÓN A LENGUAJES FORMALES Los LENGUAJES FORMALES están formados por PALABRAS, las palabras son CADENAS y las cadenas están constituidas por SÍMBOLOS de un ALFABETO. 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

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

Introducción a la Lógica y la Computación

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

Más detalles

Conceptos básicos sobre gramáticas

Conceptos 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 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

Computabilidad y Lenguajes Formales: Autómatas de Pila

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

Más detalles

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 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

Más detalles

Introducción a la indecidibilidad

Introducción a la indecidibilidad Introducción a la indecidibilidad José M. empere Departamento de istemas Informáticos y Computación Universidad Politécnica de Valencia Lenguajes y problemas Un problema será considerado cualquier cuestión

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

Expresiones regulares y derivadas

Expresiones regulares y derivadas Expresiones regulares y derivadas Teoría de Lenguajes 1 er cuatrimestre de 2002 1 Expresiones regulares Las expresiones regulares son expresiones que se utilizan para denotar lenguajes regulares. No sirven

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

7. Máquinas de Turing.

7. Máquinas de Turing. 7. Máquinas de Turing. Araceli Sanchis de Miguel Agapito Ledezma Espino José A. Iglesias Mar

Más detalles

Universidad de Valladolid

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:...

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

GRAMÁTICAS LIBRES DE CONTEXTO

GRAMÁ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 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

Nuestro objetivo es demostrar que autómata = lógica Qué significa esto? Queremos encontrar una lógica que defina a los lenguajes regulares

Nuestro objetivo es demostrar que autómata = lógica Qué significa esto? Queremos encontrar una lógica que defina a los lenguajes regulares Autómata = Lógica Nuestro objetivo es demostrar que autómata = lógica Qué significa esto? Queremos encontrar una lógica que defina a los lenguajes regulares Pero antes: Vamos a hacer un breve repaso sobre

Más detalles

TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES

TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES (TALF) BLOQUE II: LENGUAJES REGULARES Tema 2: Autómatas Finitos Parte 2 (de 3). Autómatas Finitos No Deterministas (AFNDs) Grado en Ingeniería Informática URJC

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

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

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

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

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

Traductores Push Down

Traductores Push Down Push Down Extensión de Autómatas Universidad de Cantabria Outline El Problema 1 El Problema 2 3 El Problema Hemos estudiado anteriormente los autómatas con pila y hemos visto su relación con los lenguajes

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

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

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

Tema 2: Los Autómatas y su Comportamiento

Tema 2: Los Autómatas y su Comportamiento Departamento de Computación Universidade da Coruña Bisimulación y procesos concurrentes Tema 2: Los Autómatas y su Comportamiento Carmen Alonso Montes carmen@dc.fi.udc.es Noelia Barreira Rodríguez noelia@dc.fi.udc.es

Más detalles

18 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

18 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 detalles

Capítulo 9. Introducción a los lenguajes formales. Continuar

Capí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 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

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

Estructuras Algebraicas

Estructuras Algebraicas Tema 1 Estructuras Algebraicas Definición 1 Sea A un conjunto no vacío Una operación binaria (u operación interna) en A es una aplicación : A A A Es decir, tenemos una regla que a cada par de elementos

Más detalles

La Ambigüedad en el Parsing

La Ambigüedad en el Parsing La en el Parsing Definición y Ejemplos Universidad de Cantabria Outline El Problema 1 El Problema 2 3 El Problema En nuestra busqueda por encontrar la estructura exploraremos como elegir una derivació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

Teoría de Lenguajes Solución 2do. Parcial Curso 2013

Teoría de Lenguajes Solución 2do. Parcial Curso 2013 Ejercicio 1 [Evaluación individual del obligatorio] Teoría de Lenguajes Solución 2do. Parcial Curso 2013 a) iv. Cuando se realiza un reduce b) ii. La gramática implementada en el archivo Sintactico.sin

Más detalles

Lenguajes Formales y Monoides

Lenguajes Formales y Monoides Universidad de Cantabria Esquema 1 2 3 La operación esencial sobre Σ es la concatenación o adjunción de palabras: : Σ Σ Σ (x, y) x y es decir, si x = x 1 x n e y = y 1 y m, entonces x y = x 1 x n y 1 y

Más detalles

Problemas de Espacios Vectoriales

Problemas de Espacios Vectoriales Problemas de Espacios Vectoriales 1. Qué condiciones tiene que cumplir un súbconjunto no vacío de un espacio vectorial para que sea un subespacio vectorial de este? Pon un ejemplo. Sean E un espacio vectorial

Más detalles

Curso Básico de Computación

Curso Básico de Computación Curso Básico de Computación 3 Propiedades de los conjuntos regulares Feliú Sagols Troncoso Matemáticas CINVESTAV-IPN 2010 Curso Básico de Computación (Matemáticas) 3 Propiedades

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

Departamento 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 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 detalles

1.-DEFINE EN QUE CONSISTEN LAS GRAMÁTICAS LIBRES DE CONTEXTO

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

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

Apuntes de Teoría de Autómatas y Lenguajes Formales. Gloria Martínez

Apuntes de Teoría de Autómatas y Lenguajes Formales. Gloria Martínez Apuntes de Teoría de Autómatas y Lenguajes Formales Gloria Martínez Luis A. García 11 de octubre de 2005 Índice general 1. Introducción 1 1.1. Alfabetos y Cadenas.............................. 1 1.2.

Más detalles

Compiladores e Intérpretes

Compiladores e Intérpretes Compiladores e Intérpretes Coordinador: Prof. Ing. Pablo Pandolfo 1 Contenido: Lenguajes Formales. Gramáticas Formales. Lenguajes Regulares. Lenguajes Incontextuales. Maquina de Turing. Proceso de compilación

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

TEORÍA DE CONJUNTOS.

TEORÍA DE CONJUNTOS. TEORÍA DE CONJUNTOS. NOCIÓN DE CONJUNTO: Concepto no definido del cual se tiene una idea subjetiva y se le asocian ciertos sinónimos tales como colección, agrupación o reunión de objetos abstractos o concretos.

Más detalles

16 Análisis sintáctico I

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 detalles

UNIVERSIDAD NACIONAL DE EDUCACIÓN A DISTANCIA Escuela Técnica Superior de Ingeniería Informática Procesadores de Lenguajes. Tema 3.

UNIVERSIDAD 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 detalles