1. Dada la siguiente gramtica G = ({S,L}, { (,)},a, ,) donde P es:: S (L)/a L L, S / S Construya la tabla SLR y realice la verificacin de cumplimiento de la siguiente entrada: ((s, a),a) S (L) (1) S a (2) L L, S (3) L S (4)
S S S (L) S a L L, S L S
I 0 : S.S S.(L) S.a
(I 0, . , S) I 1 : SS. (I 0, . , ()->I 2 : S (.L) L.L,S L.S S.(L) S.a
(I 0, . , a)I 3 : Sa. (I 2, . , ()I 2
(I 2, . , a)I 3
(I 2, . , S)I 4
(I 2, . , ()I 2 : LS. (I 2, . , L)I 5 : S(L.) LL.,S
(I 5, . , ))->I 6 : S(L). (I 5, . , ,)->I 7 : LL,.S S.(L) S.a
Pila Entrada Accin $ 0 ((s,a),a)$ d2 $ 0(2 (s,a),a)$ d2 S 0(2(2 S,a),a)$ No produce accin
Conclusin: La expresin no es aceptada. 2. Dada la gramtica : S LP ; E LP LP ; num | num E num | var | fun (E)
i) Realice las transformaciones necesarias para eliminar la recursividad por la izquierda. S LP ; E LP D LP LP ; D LP| D num E D | var | fun (E)
ii) Calcular los conjuntos de PRIMEROS y SIGUIENTES de cada no terminal. Prim(S) = {num} Sig(S) = {$} Prim(LP) = {num} Sig(LP) = {$} Prim(LP) = {;, } Sig{LP) = {$} Prim(D) = {num, (, ;, } Sig(D) = {; , )} Prim(E) = {num, var, fun} Sig(E) = { ), $ }
iii) Construir la tabla de anlisis sintctico LL(1) para esta nueva gramtica.
num var fun ( ) ; $ S S LP ; E
LP LP D LP
LP LP ; D LP LP
D D num D num D
D num E E D E var E fun (E)
3. La siguiente es una definicin informal de un Lenguaje que genera cadenas de smbolos formados por 0 y 1:
a) Las cadenas comienzan y terminan con 11. b) Luego de los dos primeros unos puede o no contener una combinacin de 0 y 1, siempre que no queden 2 unos seguidos. Ejemplo: 110001011(vlido), 111001011(no vlido). c) Los 2 unos del comienzo y los 2 unos del final no pueden estar contiguos. Ejemplo: 1111(no vlido). d) La cadena 11 es vlida.
Explicitar los elementos de una G.L.C. que defina formalmente el mismo lenguaje.