Está en la página 1de 7

Ejercicio Gua para obtener FNC y FNG

Este documento tiene como fin mostrar la forma de obtener la Forma Normal de Chomsky (FNC o tambin CNF) y la Forma Normal de Greibach (FNG o tambin GNF) de una gramtica dada, mediante un ejercicio explicativo. La gramtica en cuestin del ejercicio es la siguiente: S A | BCa | aDcd | EDF A aAb | c B CD | b | ECd | Ad C Cc | Bb | AaE | D aDd | Dd | E aaEB | EFG F aFd | d Durante este ejercicio, la gramtica ir sufriendo modificaciones que en algunos casos mantendr a su lenguaje intacto y en otras lo alterar.

Forma Intermedia de Chomsky


Antes de empezar con el proceso para obtener la FNC de una gramtica, debemos dejar a dicha gramtica en un estado intermedio, al cual podemos llamar forma intermedia de Chomsky, aunque no suele llamrsele por ningn nombre. De todas formas, en este paso, lo que vamos a tratar de obtener es una gramtica libre de smbolos intiles, producciones y producciones unitarias. Cuando ya hayamos limpiado a nuestra gramtica de estas cosas, podremos empezar a obtener su FNC.

Eliminando Smbolos Intiles


En este paso, eliminaremos todos aquellos smbolos que sean intiles. Hay dos tipos de smbolos intiles: los no generadores y los no alcanzables.

Eliminando Smbolos No Generadores


Para eliminar smbolos no generadores, primero tratamos de identificar todos aquellos smbolos que sean generadores. Aquellas variables que no podamos determinar que son generadoras pasarn a ser smbolos no generadores y se eliminarn. Por definicin, todos los smbolos terminales de una gramtica son generadores, ya que se generan a s mismos. Tambin ser un smbolo generador toda aquella variable que tenga por lo menos una produccin que est conformada nicamente de smbolos generadores. El string vaco se considera un smbolo generador. Identifiquemos en nuestra gramtica nuestros smbolos generadores: A es generador, ya que tiene la produccin A c. Tambin lo es B, ya que tiene B b. C y D son generadores, ya que tienen la produccin vaca C y D , respectivamente. F tiene la produccin F d. Por ltimo, S tiene la produccin S BCa, donde tanto B, C como a son smbolos generadores, por lo tanto S es generador tambin. E no es un smbolo generador. Tiene dos producciones, es verdad. Una es E aaEB y la otra es E EFG, y en las dos hay presentes smbolos generadores, como por ejemplo a y B en la primera produccin y F en la segunda. Pero ninguna de dichas producciones est completamente compuesta por smbolos generadores. Miremos por ejemplo la segunda produccin: est presente la variable G, que no tiene ninguna produccin asociada, por lo que es incapaz de ser un smbolo generador. Descartamos esta produccin entonces. Veamos la primera produccin, tal vez descubramos algo: Mmmmh, tiene a la variable

E entre medio, la cual todava no sabemos si es generadora. Qu recursivo, eh? Pues bueno, la recursin llega hasta ah: No sabemos si E es generador y no hay ninguna otra produccin de E que nos ayude a verificar esto, as que la primera produccin no nos sirve para determinar a E como un smbolo generador, y como no podemos verificar que E es un smbolo generador, entonces lo consideramos como un smbolo NO generador. Procedemos ahora a eliminar las variables E y G de la gramtica y a todas las producciones en las que estn presentes. O sea, eliminamos S EDF , B ECd, C AaE, E aaEB y E EF. La gramtica queda como sigue: S A | BCa | aDcd A aAb | c B CD | b | Ad C Cc | Bb | D aDd | Dd | F aFd | d Puede que al lector le importe saber que no se altera el lenguaje de la gramtica cuando se eliminan los smbolos no generadores.

Eliminando Smbolos No Alcanzables


Puede que, desde un principio o por producto de la eliminacin de algunos smbolos no generadores, nuestra gramtica presente smbolos no alcanzables o, dicho de otras palabras, smbolos que no son deribables (directa o indirectamente) desde el smbolo de inicio S. En nuestro ejemplo particular, nuestra querida variable F sufre de esta injusticia: ya no existe produccin que la derive desde el smbolo inicial S, pues dichas producciones se eliminaron cuando estbamos eliminando las variables no generadoras. Qu hacemos entoncs? Somos ms injustos an y la sacamos del grupo tambin. La gramtica nos queda algo as: S A | BCa | aDcd A aAb | c B CD | b | Ad C Cc | Bb | D aDd | Dd | La gramtica nos est quedando cada vez menos poblada, pero no se preocupen que pronto las producciones y las variables van a proliferar en nuestra gramtica como conejitos jvenes y enrgicos.

Eliminando Producciones
Ahora viene un paso un poco ms difcil. La eliminacin de producciones consiste principalmente en eliminar las producciones de la forma X . Cuando uno haga esto, lo que tendr que hacer es contemplar la posibilidad de que, en donde antes apareca la variable X, sta ahora podr aparecer o no aparecer, ya que en una estar jugando el papel de ser el string vaco y en la otra se estar siendo otra cosa. Ah! Ya estamos listos entonces! Bueno, no del todo: Qu pasa si una variable tiene una produccin que est compuesta de varios smbolos que pueden ser reemplazables por el string vaco? Por ejemplo, digamos que tenemos Y X1X2X3...Xn, donde todos los Xi pueden ser el string . Entonces nos quedara una cosa as: Y ..., que se puede simplificar por Y . Aqu vemos que Y tambin puede generar al string vaco. Entonces vamos a definir a los smbolos Anulables. Un smbolo anulable Y va a ser aquel que tenga entre sus producciones a la produccin Y o tambin aquel que tenga por lo menos una produccin en donde todas las variables involucradas son anulables a su vez. Viendo nuestro ejemplo, podemos identificar rpidamente a dos variables que son smbolos anulables: las variables C y D, ya que ambas tienen la produccin de la forma Y . Pero ojo, que no son las nicas variables anulables. Tambin est B que tiene la produccin B CD, la cual est compuesta enteramente por smbolos anulables. Bien, procedamos a eliminar las producciones . Cmo hacemos esto? Muy fcil: en cada produccin en la que estaban presentes uno o ms smbolos anulables, vemos todas las combinaciones en las que cada una de dichas variables pudiera estar presente o no. Por ejemplo, si tenemos la produccin

Y abX1, donde X1 es anulable, entonces se generan las producciones Y abX1 y Y ab, una en donde X1 est presente y otra en la que no. Veamos el caso para producciones con dos y tres variables anulables: Y aX1bbX2 => Y aX1bbX2 | aX1bb | abbX2 | abb Y cX1X2ddX3a => Y cX1X2ddX3a | cX1X2dda | cX1ddX3a | cX2ddX3a | cX1dda | cX2dda | cddX3a | cdda En general, si tenemos una produccin con n smbolos anulables, tendremos que reemplazar esa produccin con a lo ms 2n producciones. En nuestro caso, la gramtica quedara como sigue: S A | BCa | Ba | Ca | a | aDcd | acd A aAb | c B CD | C | D | b | Ad C Cc | c | Bb | b D aDd | ad | Dd | d Miren como de repente ha crecido nuestra querida gramtica. No han aparecido nuevas variables, pero s surgieron ms producciones. Pero esto no se detiene aqu. Ojo, que ahora s que se puede haber alterado el lenguaje. Si nuestra gramtica inicial era capaz de generar el string vaco, ahora no lo podr generar.

Eliminando Producciones Unitarias


Las producciones unitarias son aquellas que tienen una nica variable en su cuerpo (ojo!! va-riable!!! smbolos terminales solos no cuentan como producciones unitarias!!). Si tenemos por ejemplo una produccin Y X, la idea es reemplazar esta produccin por todas las producciones de X. Pero qu pasa si X tambin tiene producciones unitarias? Bueno, entonces primero reemplazamos esas producciones unitarias por sus correspondientes producciones. Y si X tiene la produccin unitaria X Y? Entonces ah lo que hacemos es primero poner en Y todas las producciones de X menos la produccin X Y, y luego ponemos en X todas las producciones de Y, menos la produccin Y X. Hay una forma ms general de describir este proceso, que involucra la definicin de los pares unitarios (Y,X), que se definen as: Base: El par (Y,Y) es unitario por definicin, para toda variable de una gramtica dada. Induccin: Si el par (Y,X) es unitario y la variable X tiene una produccin unitaria de la forma X Z, entonces (Y,Z) tambin es un par unitario. Ntese que los pares unitarios (X,Y) e (Y,X) son distintos. Lo que se hace a continuacin es que por cada par unitario (X,Y), agregamos a las producciones de X todas aquellas producciones de Y que NO son unitarias. En nuestra gramtica tenemos los siguientes pares unitarios: (S,S), (S,A), (A,A), (B,B), (B,C), (B,D), (C,C) y (D,D). Los ms relevantes de estos pares son (S,A), (B,C) y (B,D). Procedemos a eliminar las producciones unitarias: S aAb | c | BCa | Ba | Ca | a | aDcd | acd A aAb | c B CD | Cc | c | Bb | b | aDd | ad | Dd | d | Ad C Cc | c | Bb | b D aDd | ad | Dd | d Este tipo de modificaciones tampoco altera el lenguaje de la gramtica.

Forma Normal de Chomsky


Ya hemos dejado a nuestra gramtica inicial en una forma intermedia apta para ser modificada en una FNC. Lo que hacemos a continuacin son dos pasos:

Reemplazar Terminales por Variables


El primer paso consiste en reemplazar todos aquellos smbolos terminales que estn acompaados en alguna produccin por uno o ms smbolos. A estos terminales los reemplazamos por nuevas variables

que tendrn una nica produccin (la produccin de dicho smbolo). En nuestro caso, hay que crear 4 nuevas variables, una para cada smbolo terminal: S A1AB1 | c | BCA1 | BA1 | CA1 | a | A1DC1D1 | A1C1D1 A A1AB1 | c B CD | CC1 | c | BB1 | b | A1DD1 | A1D1 | DD1 | d | AD1 C CC1 | c | BB1 | b D A1DD1 | A1D1 | DD1 | d A1 a B1 b C1 c D1 d Este tipo de modificaciones no altera el lenguaje de la gramtica.

Reemplazar Producciones de 3 o ms Variables


El segundo paso consiste en eliminar todas las producciones con 3 o ms variables por una que contenga slo dos. Cmo hacemos esto? Supongamos que tenemos la produccin Y X, donde es un string que consta de dos o ms variables. Entonces creamos una nueva variable Z, con la produccin Z , y luego reemplazamos Y X por Y XZ. Y si tiene ms de dos variables? Supongamos que est compuesto por la variable W al principio y por al final, donde es a su vez un string que tiene dos o ms variables, entonces creamos una variable V con la produccin V y luego reemplazamos Z W por Z WV. Repetimos este proceso hasta que ya no queden producciones de 3 o ms variables en nuestra gramtiva. En nuestro caso, la gramtica queda como sigue: S A1Y1 | c | BY2 | BA1 | CA1 | a | A1Y3 | A1Y4 Y1 AB1 Y2 CA1 Y3 DY4 Y4 C1D1 A A1Y1 | c B CD | CC1 | c | BB1 | b | A1Y5 | A1D1 | DD1 | d | AD1 Y5 DD1 C CC1 | c | BB1 | b D A1Y5 | A1D1 | DD1 | d A1 a B1 b C1 c D1 d Este tipo de modificaciones no altera el lenguaje de la gramtica. Acabamos de obtener una gramtica que tiene producciones que involucran o solamente a dos variables (X YZ) o a un nico smbolo terminal (W v). Este tipo de gramticas, damas y caballeros, se denominan gramticas en la Forma Normal de Chomsky, y tienen la particularidad de que todos los rboles de derivacin que generan son completamente binarios. Esta caracterstica los hace bastante tiles para el problema de identificar si un string dado w pertenece al lenguaje de dicha gramtica.

Forma Intermedia de Greibach


Al igual que con la FNC, una gramtica dada debe ser llevada a una forma intermedia antes de poder transformarla a su correspondiente forma normal de Greibach. En el caso de Chomsky, la forma intermedia implicaba eliminar los smbolos intiles, las producciones y las producciones unitarias. En el caso de Greibach, la forma intermedia debe cumplir con que todas las producciones sean o strings de una o ms variables, o producciones de un solo smbolo terminal, o producciones de un smbolo terminal seguido por una o ms variables. Existen muchos mtodos para llegar a esta forma intermedia. La que recomienda la mayora de la gente es la que consiste en obtener la FNC de una gramtica. Y por qu? Porque una gramtica que est en FNC cumple con estas tres condiciones de la forma intermedia de Greibach. Realmente, cuando se han reemplazado a los smbolos terminales por variables en el proceso de formalizacin de Chomsky, ya en ese entonces tenemos una forma intermedia de Greibach. Uno podra elegir tambin esta gramtica como su forma intermedia de Greibach.

Forma Normal de Greibach


La forma normal de Greibach de una gramtica dada es aquella que slo contiene producciones de la forma Yx, donde x es un terminal y es un string conformado nicamente por variables y puede tener largo cero (o sea, puede ser el string vaco). Una vez tenemos nuestra gramtica en su forma intermedia, procedemos a aplicarle las siguientes modificaciones, para as obtener su FNG: 1. Ordenamos y enumeramos nuestras variables de tal forma que nos quede nuestro smbolo inicial S como la primera variable de la enumeracin. La gramtica nos quedara as: S Y1 Y2 Y3 Y4 B Y5 C D A A1 B1 C1 D1 X1 X11X2 | c | X6X3 | X6X11 | X8X11 | a | X11X4 | X11X5 X2 X10X12 X3 X8X11 X4 X9X5 X5 X13 X14 X6 X8X9 | X8X13 | c | X6X12 | b | X11X7 | X11X14 | X9X14 | d | X10X14 X7 X9X12 X8 X8X13 | c | X6X12 | b X9 X11X7 | X11X14 | X9X14 | d X10 X11X2 | c X11 a X12 b X13 c X14 d

Dejamos el smbolo original a la izquierda de cada lnea para que se entienda cul fue la variable enumerada que reemplaz a cada variable. Ntese que cambiamos de orden a la variable A, al ponerla por debajo de la variable D. El propsito de estas alteraciones en el orden original tienen como fin que, al proceder con la enumeracin, en las producciones resultantes quede la menor cantidad de producciones Xi Xj, en donde i sea mayor que j. 2. Eliminamos la recursin inmediata a la izquierda y la recursin a la izquierda. Qu se entiende por recursin inmediata a la izquierda? Cuando tenemos una produccin de la forma X X, decimos que X es tiene recursividad inmediara por la izquierda. Cuando tenemos por lo menos una produccin de la forma X Y, y la variable Y tiene por lo menos una produccin de la forma YX decimos que X recursividad por la izquierda. Cmo eliminamos la recursin por la izquierda? Primero reemplazamos en las producciones de X todas las apariciones de Y por aquellas producciones de Y que no sean inmediatamente recursivas a la izquierda para Y. Con esto logramos hacer que X tenga slo producciones inmediatamente recursivas por la izquierda. Luego, supongamos que X tiene las siguientes producciones: X X1 | X2 | ... | Xn | 1 | 2 | ... | m Donde las producciones j no son recursivas por la izquierda. Ahora creamos una variable auxiliar X' y realizamos las siguientes transformaciones: X 1 | 2 | ... | m | 1X' | 2X' | ... | mX' X' 1 | 2 | ... | nX' | 1X' | 2X' | ... | nX' En nuestro caso, las variables que tienen producciones inmediatamente recursivas por la izquierda son X6 , X8 y X9, debido a sus producciones X6 X6X12, X8 X8X13 y X9 X9X14. Tambin tenemos la produccin X8X6X12 que es recursiva a la izquierda para la variable X6, y las producciones X6X8X9 y X6X8X13 que son recursivas a la izquierda para la variable X8. Procedemos a dejar a ambas variables nicamente con recursividad inmediata a la izquierda: 1) Reemplazando a X8 por sus producciones no recursivas a la izquierda, las producciones X6 X8X9 | X8X13 | c | X6X12 | b | X11X7 | X11X14 | X9X14 | d | X10X14 se transforman en: X6 cX9 | X6X12X9 | bX9 | cX13 | X6X12X13 | bX13 | c | X6X12 | b | X11X7 | X11X14 | X9X14 | d | X10X14 Ntese que no reemplazamos a X8 por su produccin X8X8X13, ya que esta produccin es recursiva por la izquierda para X8.

2) Reemplazando a X6 por sus producciones no recursivas a la izquierda, las producciones X8 X8X13 | c | X6X12 | b se transforman en: X8 X8X13 | c | X8X9X12 | X8X13X12 | cX12 | bX12 | X11X7X12 | X11X14X12 | X9X14X12 | dX12 | X10X14X12 | b Aqu tampoco reemplazamos a X6 por su produccin X6 X6X12, ya que esta produccin es recursiva por la izquierda para X6. Ahora que solamente tenemos recursividad inmediata por la izquierda, procedemos a realizar las correspondientes transformaciones: 1) Las producciones X6 cX9 | X6X12X9 | bX9 | cX13 | X6X12X13 | bX13 | c | X6X12 | b | X11X7 | X11X14 | X9X14 | d | X10X14 se transforman en: X6 cX9 | bX9 | cX13 | bX13 | c | b | X11X7 | X11X14 | X9X14 | d | X10X14 | cX9X6.1 | bX9X6.1 | cX13X6.1 | bX13X6.1 | cX6.1 | bX6.1 | X11X7X6.1 | X11X14X6.1 | X9X14X6.1 | dX6.1 | X10X14X6.1 X6.1 X12X9 | X12X13 | X12 | X12X9X6.1 | X12X13X6.1 | X12X6.1 2) Las producciones X8 X8X13 | c | X8X9X12 | X8X13X12 | cX12 | bX12 | X11X7X12 | X11X14X12 | X9X14X12 | dX12 | X10X14X12 | b se transforman en: X8 c | cX12 | bX12 | X11X7X12 | X11X14X12 | X9X14X12 | dX12 | X10X14X12 | b | cX8.1 | cX12X8.1 | bX12X8.1 | X11X7X12X8.1 | X11X14X12X8.1 | X9X14X12X8.1 | dX12X8.1 | X10X14X12X8.1 | bX8.1 X8.1 X13 | X9X12 | X13X12 | X13X8.1 | X9X12X8.1 | X13X12X8.1 3) Y las producciones X9 X11X7 | X11X14 | X9X14 | d se transforman en: X9 X11X7 | X11X14 | d | X11X7X9.1 | X11X14X9.1 | dX9.1 X9.1 X14 | X14X9.1 Nuestra gramtica, libre de recursividad por la izquierda, queda como sigue: X1 X2 X3 X4 X5 X6 X11X2 | c | X6X3 | X6X11 | X8X11 | a | X11X4 | X11X5 X10X12 X8X11 X9X5 X13 X14 cX9 | bX9 | cX13 | bX13 | c | b | X11X7 | X11X14 | X9X14 | d | X10X14 | cX9X6.1 | bX9X6.1 | cX13X6.1 | bX13X6.1 | cX6.1 | bX6.1 | X11X7X6.1 | X11X14X6.1 | X9X14X6.1 | dX6.1 | X10X14X6.1 X12X9 | X12X13 | X12 | X12X9X6.1 | X12X13X6.1 | X12X6.1 X9X12 c | cX12 | bX12 | X11X7X12 | X11X14X12 | X9X14X12 | dX12 | X10X14X12 | b | cX8.1 | cX12X8.1 | bX12X8.1 | X11X7X12X8.1 | X11X14X12X8.1 | X9X14X12X8.1 | dX12X8.1 | X10X14X12X8.1 | bX8.1 X13 | X9X12 | X13X12 | X13X8.1 | X9X12X8.1 | X13X12X8.1 X11X7 | X11X14 | d | X11X7X9.1 | X11X14X9.1 | dX9.1 X14 | X14X9.1 X11X2 | c a b c d

X6.1 X7 X8 X8.1 X9 X9.1 X10 X11 X12 X13 X14

3. En nuestro tercer paso, eliminaremos todas las producciones de la forma X i Xj, en donde i es mayor que j. Para hacer esto, reemplararemos a Xj por todas sus producciones. Si al reemplazar aparecen otras producciones de esta forma, repetimos este paso, hasta que no queden ms producciones en donde la primera variable de la produccin tenga un ndice menor al de la variable de la cabeza de la produccin. En nuestro caso, no hay ninguna produccin de este tipo, pero vamos a mostrar unas producciones de ejemplo para ilustrar el proceso: X9 X11X7 | X11X14 | d | X11X7X9.1 | X11X14X9.1 | dX9.1 X10 X11X2 | c | X9X11X6 En este ejemplo, tenemos la produccin X10 X9X11X6 en la que la variable de la izquierda de la produccin (X9) tiene un ndice menor al de la variable de la cabeza de la produccin (X 10). Reemplazando X9 por sus correspondientes producciones nos queda:

X10 X11X2 | c | X11X7X11X6 | X11X14X11X6 | dX11X6 | X11X7X9.1X11X6 | X11X14X9.1X11X6 | dX9.1X11X6 4. En el ltimo paso, reemplazamos todas las producciones en las que haya una variable al principio de la produccin (no importa el ndice que tenga) por las producciones de dicha variable que empiecen con algn smbolo terminal. Este proceso se realiza empezando por las ltimas variables de la gramtica y luego se contina el proceso de reemplazo hacia arriba hasta llegar a las producciones de la variable de inicio. En nuestra gramtica, partiramos con las producciones de la variable X10 (ya que X11, X12, X13 y X14 tienen producciones en las que slo hay involucrados smbolos terminales). La cosa nos quedara as: X10 X11X2 | c => X10 aX2 | c Luego continuaramos con X9.1: X9.1 X14 | X14X9.1 => X9.1 d | dX9.1 El proceso no presenta mayor dificultad, hasta que llegamos a X8.1, en donde aparecen las producciones X8.1 X9X12 y X8.1 X9X12X8.1, que no comienzan con X11, X12, X13 o X14. Pero no importa, ya que todas las producciones de X9 para estas alturas del proceso han sido modificadas para que empiecen con un smbolo terminal, as que reemplazamos X9 directamente con sus producciones: Esto: X8.1 X13 | X9X12 | X13X12 | X13X8.1 | X9X12X8.1 | X13X12X8.1 Queda como esto: X8.1 c | aX7X12 | aX14X12 | dX12 | aX7X9.1X12 | aX14X9.1X12 | dX9.1X12 | cX12 | cX8.1 | aX7X12X8.1 | aX14X12X8.1 | dX12X8.1 | aX7X9.1X12X8.1 | aX14X9.1X12X8.1 | dX9.1X12X8.1 | cX12X8.1 El proceso contina as sin mayores complicaciones, hasta que llegamos a la siguiente gramtica en forma normal de Greibach: X1 aX2 | c | cX9X3 | bX9X3 | cX13X3 | bX13X3 | cX3 | bX3 | aX7X3 | aX14X3 | aX7X14X3 | aX14X14X3 | dX14X3 | aX7X9.1X14X3 | aX14X9.1X14X3 | dX9.1X14X3 | dX3 | aX2X14X3 | cX14X3 | cX9X6.1X3 | bX9X6.1X3 | cX13X6.1X3 | bX13X6.1X3 | cX6.1X3 | bX6.1X3 | aX7X6.1X3 | aX14X6.1X3 | aX7X14X6.1X3 | aX14X14X6.1X3 | dX14X6.1X3 | aX7X9.1X14X6.1X3 | aX14X9.1X14X6.1X3 | dX9.1X14X6.1X3 | dX6.1X3 | aX2X14X6.1X3 | cX14X6.1X14X6.1X3 | cX9X11 | bX9X11 | cX13X11 | bX13X11 | cX11 | bX11 | aX7X11 | aX14X11 | aX7X14X11 | aX14X14X11 | dX14X11 | aX7X9.1X14X11 | aX14X9.1X14X11 | dX9.1X14X11 | dX11 | aX2X14X11 | cX14X11 | cX9X6.1X11 | bX9X6.1X11 | cX13X6.1X11 | bX13X6.1X11 | cX6.1X11 | bX6.1X11 | aX7X6.1X11 | aX14X6.1X11 | aX7X14X6.1X11 | aX14X14X6.1X11 | dX14X6.1X11 | aX7X9.1X14X6.1X11 | aX14X9.1X14X6.1X11 | dX9.1X14X6.1X11 | dX6.1X11 | aX2X14X6.1X11 | cX14X6.1X14X6.1X11 | cX11 | cX12X11 | bX12X11 | aX7X12X11 | aX14X12X11 | aX7X14X12X11 | aX14X14X12X11 | dX14X12X11 | aX7X9.1X14X12X11 | aX14X9.1X14X12X11 | dX9.1X14X12X11 | dX12X11 | aX2X14X12X11 | cX14X12X11 | bX11 | cX8.1X11 | cX12X8.1X11 | bX12X8.1X11 | aX7X12X8.1X11 | aX14X12X8.1X11 | aX14X12X8.1X11 | dX12X8.1X11 | aX2X14X12X8.1X11 | cX14X12X8.1X11 | bX8.1X11 | a | aX4 | aX5 X2 aX2X12 | cX12 X3 cX11 | cX12X11 | bX12X11 | aX7X12X11 | aX14X12X11 | aX7X14X12X11 | aX14X14X12X11 | dX14X12X11 | aX7X9.1X14X12X11 | aX14X9.1X14X12X11 | dX9.1X14X12X11 | dX12X11 | aX2X14X12X11 | cX14X12X11 | bX11 | cX8.1X11 | cX12X8.1X11 | bX12X8.1X11 | aX7X12X8.1X11 | aX14X12X8.1X11 | aX14X12X8.1X11 | dX12X8.1X11 | aX2X14X12X8.1X11 | cX14X12X8.1X11 | bX8.1X11 X4 aX7X5 | aX14X5 | dX5 | aX7X9.1X5 | aX14X9.1X5 | dX9.1X5 X5 c X14 X6 cX9 | bX9 | cX13 | bX13 | c | b | aX7 | aX14 | aX7X14 | aX14X14 | dX14 | aX7X9.1X14 | aX14X9.1X14 | dX9.1X14 | d | aX2X14 | cX14 | cX9X6.1 | bX9X6.1 | cX13X6.1 | bX13X6.1 | cX6.1 | bX6.1 | aX7X6.1 | aX14X6.1 | aX7X14X6.1 | aX14X14X6.1 | dX14X6.1 | aX7X9.1X14X6.1 | aX14X9.1X14X6.1 | dX9.1X14X6.1 | dX6.1 | aX2X14X6.1 | cX14X6.1X14X6.1 X6.1 bX9 | bX13 | b | bX9X6.1 | bX13X6.1 | bX6.1 X7 aX7X12 | aX14X12 | dX12 | aX7X9.1X12 | aX14X9.1X12 | dX9.1X12 X8 c | cX12 | bX12 | aX7X12 | aX14X12 | aX7X14X12 | aX14X14X12 | dX14X12 | aX7X9.1X14X12 | aX14X9.1X14X12 | dX9.1X14X12 | dX12 | aX2X14X12 | cX14X12 | b | cX8.1 | cX12X8.1 | bX12X8.1 | aX7X12X8.1 | aX14X12X8.1 | aX14X12X8.1 | dX12X8.1 | aX2X14X12X8.1 | cX14X12X8.1 | bX8.1 X8.1 c | aX7X12 | aX14X12 | dX12 | aX7X9.1X12 | aX14X9.1X12 | dX9.1X12 | cX12 | cX8.1 | aX7X12X8.1 | aX14X12X8.1 | dX12X8.1 | aX7X9.1X12X8.1 | aX14X9.1X12X8.1 | dX9.1X12X8.1 | cX12X8.1 X9 aX7 | aX14 | d | aX7X9.1 | aX14X9.1 | dX9.1 X9.1 d | dX9.1 X10 aX2 | c X11 a X12 b X13 c X14 d DCC/2006.04.24

También podría gustarte