Gramaticas GLC

Páginas: 18 (4331 palabras) Publicado: 2 de febrero de 2014
Teor´a de Aut´ matas y Lenguajes Formales
ı
o
Bolet´n de Autoevaluaci´ n 5: ¿C´ mo se simplifica una Gram´ tica de Contexto Libre?.
ı
o
o
a

1.

Objetivos.

El objetivo de este bolet´n es ilustrar c´ mo proceder para simplificar gram´ ticas de contexto libre
ı
o
a
y, adem´ s, proporcionar la soluci´ n a alguno de los problemas propuestos en el bolet´n para que pod´ is
a
o
ı
acomprobar si hab´ is aplicado bien este m´ todo.
e
e

2.

Idea Principal.

Una gram´ tica nos proporciona un conjunto de producciones que nos permitir´ n obtener cadenas de
a
a
un determinado lenguaje. En este juego hay pocas reglas: una producci´ n nos indica c´ mo substituir una
o
o
serie de s´mbolos auxiliares por otra cadena de s´mbolos; se empieza siempre por un s´mbolo auxiliarı
ı
ı
´
especial, el s´mbolo S, start, y el objetivo es formar cadenas formadas unicamente por s´mbolos terminaı
ı
les esto es, s´mbolos del alfabeto sobre el que construimos el lenguaje. Al substituir no hay cota sobre el
ı
n´ mero de veces que se aplica una producci´ n y tampoco hay reglas que tengan una “preferencia” sobre
u
o
otras.
Al dise˜ ar la gram´ tica nuestra principalpreocupaci´ n es asegurar que se producen todas las cadenas.
n
a
o
De hecho, puede ocurrir que en el proceso de dise˜ o se introduzcan producciones que no facilitan la
n
obtenci´ n de cadenas o que introducen pasos innecesarios en el proceso de derivaci´ n.
o
o
El objetivo al simplificar una gram´ tica de contexto libre es obtener una gram´ tica equivalente, pero
a
a
´
en la que seasegura que cada derivaci´ n es util, y que no obliga a aplicar ning´ n paso innecesario.
o
u

3.

Pasos para simplificar una Gram´ tica de Contexto Libre.
a

Cualquier lenguaje de contexto libre, L, puede ser generado por medio de una GCL, G, que cumpla
las siguientes condiciones:
1.

Cada s´mbolo (terminal o auxiliar) de G se emplea en la derivaci´ n de alguna cadena de L.
ı
o

2.Si λ ∈ L entonces en el conjunto de producciones de G no existen producciones vac´as, es decir,
ı
producciones de la forma A → λ.

3.

En el conjunto de producciones de G no existen producciones unitarias, es decir, producciones de
la forma A → B donde A, B ∈ ΣA .

Si se obtiene una gram´ tica que cumpla estas tres condiciones se puede asegurar que en cada deria
vaci´ n que se realiza seintroduce informaci´ n relevante. ¿C´ mo se puede asegurar que son ciertas en
o
o
o
nuestra gram´ tica cada una de estas tres condiciones?
a
1

1.

Podemos asegurar que “cada s´mbolo (terminal o auxiliar) de G se emplea en la derivaci´ n de
ı
o
´
alguna cadena de L” si eliminamos los s´mbolos inutiles.
ı

2.

Podemos asegurar que “si λ ∈ L entonces en el conjunto deproducciones de G no existen producciones de la forma A → λ” si eliminamos las producciones vac´as.
ı

3.

Podemos asegurar que “en el conjunto de producciones de G no existen producciones unitarias”
si eliminamos las producciones unitarias.

Estos son los tres pasos que debemos seguir para asegurar que la gram´ tica est´ simplificada. A
a
a
continuaci´ n se desarrolla cada uno de ellos.
o

3.1.Procedimiento.

Para ilustrar el procedimiento se simplificar´ la gram´ tica G = {ΣA , ΣT , S, P }, en la que ΣA =
a
a
{S, A, B, C, D, E, F, G}, ΣT = {a, b, c} y el conjunto de producciones, P , es el siguiente:
S → Aab | B | CSa | b
A → aA | Cb | a | aBAE
B → bB | aBC | F | λ
C → CG | DC
D → aCb | a
E → aaE | bB
F → aF | ab
G→F

3.1.1.

´
Eliminaci´ n de s´mbolos inutiles.


Hay que dividirlo en dos pasos y, adem´ s, el orden en que se realizan es significativo. Primero hay
a
que eliminar los s´mbolos no derivables y, despu´ s, los s´mbolos no alcanzables.
ı
e
ı

Eliminar los s´mbolos no derivables. Un s´mbolo auxiliar que nunca se podr´ substituir por un terı
ı
a
minal (o una cadena de terminales) es un s´mbolo no derivable. Y se puede eliminar de...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Gramatica
  • Gramatica
  • gramatica
  • GRAMÁTICA
  • Grámatica
  • Gramatica
  • Gramatica
  • gramatica

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS