You are on page 1of 7

Actividad 1

Identificar la notacin formal de una gramtica.

Una gramtica formal es un conjunto de reglas para reescribir cadenas de


caracteres, junto con un smbolo inicial desde el cual debe comenzar la
reescritura. Por lo tanto, una gramtica formal generalmente se piensa como una
generadora de lenguajes. Sin embargo, a veces tambin puede ser usada como la
base para un "reconocedor": una funcin que determina si una cadena cualquiera
pertenece a un lenguaje o es gramaticalmente incorrecta.
Hay distintos tipos de gramticas formales que generan lenguajes formales (vase
la jerarqua de Chomsky). Imaginemos una gramtica con estas dos reglas:
1. A bA
2. A c
El elemento en maysculas es el smbolo inicial. Los elementos en minsculas son
los smbolos terminales. Para generar cadenas de caracteres, la idea es sustituir
el smbolo inicial de la izquierda por los smbolos de la derecha, y luego repetir el
proceso hasta que slo haya smbolos terminales. Por ejemplo:
A bA bbA bbbA bbbc
Esta gramtica da lugar a un lenguaje formal que consiste en el conjunto de todas
las cadenas de caracteres que pueden ser generadas por medio ellas. Por
ejemplo: bbbc, bbbbbbbbc, c, bc, etc.
Para comprender mejor la idea, podemos considerar un modelo de
reescritura para el espaol:
1.
2.
3.
4.
5.
6.
7.

O SUJ PRED (Oracin Sujeto Predicado)


SUJ Det N (Sujeto Determinante Nombre)
PRED V COMP (Predicado Verbo Complemento)
Det el
N nio, (hombre, anciano)
V duerme, (re, come)
COMP plcidamente, (intranquilo)

Estas reglas pueden utilizarse para generar la frase "el nio duerme
plcidamente", as:
1.
2.
3.
4.
5.
6.
7.

O (smbolo inicial)
SUJ(ETO) PRED(ICADO) (por la regla 1)
Det(erminante) N(OMBRE) PRED(ICADO) (por la regla 2)
Det(erminante) N(OMBRE) V(ERBO) COMP(LEMENTO) (por la regla 3)
el N(OMBRE) V(ERBO) COMP(LEMENTO) (por la regla 4)
el nio V(ERBO) COMP(LEMENTO) (por la regla 5)
el nio duerme COMP(LEMENTO) (por la regla 6)

8. el nio duerme plcidamente (por la regla 7)


Vemos que existen unas definiciones especiales como FRASE, SUJETO, etc. que
no aparecen en la frase final formada. Son unas entidades abstractas
denominadas "categoras sintcticas" que no son utilizables en una oracin (tienen
un papel similar al de las categoras gramaticales de las lenguas naturales). E
igualmente el mismo sistema permite derivar otras oraciones similares usando
formas las formas lxicas entre parntesis:
Det N

COMP

nio duerme
plcidamente
El hombre
re
intranquilo
anciano come
Las categoras sintcticas definen la estructura del lenguaje representando
porciones ms o menos grandes de las frases. Existe una jerarqua interna entre
las categoras sintcticas.
La categora superior sera la FRASE que representa una oracin vlida en lengua
castellana.
Por debajo de ella se encuentran sus componentes. Ninguna de estas categoras
dan lugar a frases vlidas solo la categora superior.
Al finalizar toda la jerarqua llegamos a las palabras que son las unidades mnimas
con significado que puede adoptar una frase.
Aplicando las jerarquas y sustituyendo elementos, llegamos al punto en donde
todas las categoras sintcticas se han convertido en palabras, obteniendo por
tanto una oracin vlida; como por ejemplo: El nio corre. Este proceso se llama
produccin o generacin.

Limitacin de las gramticas formales


Las ES-gramticas como la usada en los primeros modelos de gramtica
generativa requieren ciertas restricciones para ser computacionalmente tratables.
Para entender esa restriccin debe considerarse la interaccin entre un hablante y
un oyente, el primero genera una oracin o secuencia de acuerdo con las reglas
de la gramtica, el segundo para entender dicha secuencia debe analizar la
secuencia para entenderla, encontrando los elementos formantes, interpretndolos
y reconstruyendo la relacin hay entre ellos (estructura interna). Para que eso
segundo sea posible se requiere que la estructura interna tenga una estructura
suficientemente simple como poder analizar sintcticamente las secuencias con
un bajo grado de ambigedad. Pues bien computacionalmente se ha encontrado
que la clase de complejidad frente al anlisis inverso de ciertas gramticas es
excesiva. Para ES-gramticas basadas en reglas de reescritura se tiene:

Restricciones
en las reglas

Tipo de
ES-gramtica

Tipo de
lenguaje

Grado de
complejidad

tipo 3

Gramtica ES regular

lenguajes regulares

lineal

tipo 2

Gramtica ES
libre de contexto

lenguajes libres
de contexto

polinmica

tipo 1

tipo 0

Gramtica ES
lenguajes dependientes
dependiente del contexto
del contexto
Gramtica ES
no restringida

exponencial

lenguajes recursivamente
indecidible
enumerables

Gramticas formales en matemticas y lgica


Dentro del enfoque formalista y axiomtico de las matemticas se concibi que
ciertas reas de las matemticas podan concebirse como un sistema lgicodeductivo de frmulas sujetas a restricciones de manipulacin. La gramtica
formal de esos sistemas sera el conjunto de reglas combinatorias acordes a
ciertos principios deductivos.
Un lenguaje formal en lgica o matemticas es una tripleta
donde
denota el alfabeto o conjunto de signos usados, el conjunto de reglas
explica
qu combinaciones de signos estn bien definidas y permite definir lo que es una
frmula bien formada (en ese sentido
define la morfologa de las palabras de la
lengua formal). El conjunto de frmulas bien formadas constituyen el vocabulario o
lxico, mientras el par describe el conjunto de axiomas y el conjunto de reglas de
deduccin vlidas. Estas dos ltimas permiten establecer secuencias de frmulas
bien formadas (palabras del lenguaje formal) que constituyen demostraciones
vlidas dentro del sistema formal (son de alguna manera el equivalente a la
sintaxis de la lengua formal.

http://ocw.unican.es/ensenanzas-tecnicas/teoria-de-automatas-y-lenguajesformales/material-de-clase-nuevo/nuevo/1-3_Gramaticas_formales.pdf
Universidad de cantabria

Actividad 2

Buscar la sintaxis de la construccin de los LP por medio de GCL o


utilizando notacin BNF (Backus-Naur Form).
Actividad 3

Investigar las formas normales de Chomsky.

Definicin de la Forma Normal de Chomsky


Diremos que una gramtica incontextual G=(N,T,P,S) que no genera la cadena
Vaca, est en FNC cuando todas sus reglas son de la forma:
{A BC con A,B,C N
{A a, con A,B N y a T
Teorema. Todo lenguaje incontextual L que no incluye la cadena vaca, es
generado por una gramtica en FNC. Algoritmo para la obtencin de gramticas
en FNC
Entrada: G=(N,T,P,S) (sin producciones unitarias ni vacas)
Salida: G=(N'',T,P'',S)
Mtodo:
N'=N; P'=;
Para toda regla (A ) de P hacer Si ||=1
Entonces aadir la regla a P' (*ya esta en FNC*)
Si no sea =X1X2...Xm con m > 1
Para i=1 hasta m hacer Si Xi=a
Entonces se aade a N' un nuevo no terminal Ca y se aade a P' una nueva regla
(Ca a) finsi finpara Se aade a P' una regla (A X'1X'2...X'm) con:
X'i=Xi si Xi N X'i =Ca si Xi = a fin
Si
finPara
NOTA: al finalizar el PASO 1 todas las reglas de la gramtica resultante
G'=(N',T,P',S) presentarn la forma:
Aa
A B1B2...Bm
con A N', Bi N' 1<= i<= m, a .

Diremos que esta gramtica G' est en Forma Normal de Chomsky intermedia.
(Se toma como entrada la gramtica G' resultante )
N''=N'; P''=;
Para toda regla (A ) de P' hacer
Si || < 3
Entonces aadir la regla a P'' (ya esta en FNC) Sino sea = B1B2Bm con m >2
Aadir a N' los no terminales { D1, D2, ..., Dm-2};
Ejemplo
Sea la gramtica incontextual G definida por las siguientes reglas:
S bA | aB
A bAA | aS | a
B aBB | bS | b
Tras la aplicacin del PASO 1 se obtiene la gramtica en FNC intermedia G':
S CbA | Ca
B
A CbAA | Ca
S|a
B Ca
BB | CbS | b
Ca
a
Cb b
A partir de G', tras el PASO 2 se obtiene la gramtica en FNC G'':
S CbA | Ca
B
A CbD1 | Ca
S|a
D1 AA
B Ca
D2 | CbS | b
D2 BB
Ca
a
Cb b

http://users.dsic.upv.es/asignaturas/facultad/tal/practica6.pdf

Actividad 4

Conocer la notacin de los diagramas de sintaxis

Un diagrama de sintaxis (tambin llamados diagramas de Conway) es un grafo


dirigido donde los elementos no terminales aparecen como rectngulos, y los
terminales como crculos o elipses.
Todo diagrama de sintaxis posee un origen y un destino, que no se suelen
representar explcitamente, sino que se asume que el origen se encuentra a la
izquierda del diagrama y el destino a la derecha. Cada arco con origen en " y
destino en $ representa que el smbolo " puede ir seguido del $ (pudiendo ser " y $
tanto terminales como no terminales).
De esta forma todos los posibles caminos desde el inicio del grafo hasta el final,
representan formas sentenciales vlidas. Demostraremos que los diagramas de
sintaxis permiten representar las mismas gramticas que la notacin BNF, por
induccin sobre las operaciones bsicas de BNF:

Los diagrama de sintaxis poseen patrones que se repiten constantemente por lo


tanto es de suma importancia definirlos, ya que ello facilitar el diseo de los
mismos. A continuacin se presenta un conjunto de diagramas de sintaxis con los
patrones sintcticos (o estructuras a Secuencia de smbolos sintcticas) ms
comunes:

a) Secuencia de smbolos

El segundo diagrama indica que <X> inicia con el smbolo 'a' seguido por el patrn
sintctico <Y>.
El primer diagrama indica que el patrn sintctico <X> est formada por 'a'
seguido de 'b'
http://cs.mty.itesm.mx/profesores/equiroga/files/Material_Traductores.pdf
Tecnologico de monterrey
Ing. Elda G. Quiroga, M.C.
Dra. Norma F. Roffe, PhD
Departamento de ciencias computacionales
Agosto-Diciembre 2007
http://sysop.comuv.com/progsist/U_4_2.htm