Está en la página 1de 2

GRAMATICA

La gramtica de un lenguaje es el conjunto de reglas capaces de generar todas las posibilidades


combinatorias de ese lenguaje, ya sea ste un lenguaje formal o un lenguaje natural.

La expresin gramtica formal tiene dos sentidos:

(a) gramtica de un lenguaje formal.


(b) descripcin formal de la gramtica de un lenguaje natural.

En cuanto a (b), la descripcin formal de la gramtica de una lengua es la que explicita las reglas
combinatorias mentales a partir de frmulas lgico-matemticas. Estas reglas combinatorias que
utiliza el lenguaje natural reciben el nombre de sintaxis, y son inconscientes.

En cuanto a (a), gramtica formal se utiliza en analoga con el concepto de gramtica, usado
tradicionalmente para los lenguajes naturales. Por tanto, una gramtica formal es el conjunto de
reglas combinatorias de un lenguaje formal. Hay distintos tipos de gramticas formales que
generan lenguajes formales.
Tip Normas de produccin de
Lenguaje
o gramticas

recursivamente
0 Sin restricciones
enumerable (LRE)

dependiente del contexto


1 A
(LSC)

independiente del contexto


2 A
(LLC)

A aB
3 regular (RL)
Aa

Imaginemos una gramtica con estas dos reglas:

1. A bAc 2. A de

La idea es substituir el smbolo inicial de la izquierda por otros smbolos aplicando las reglas. El
lenguaje al cual representa esta gramtica es el conjunto de cadenas de smbolos que pueden
ser generados de esta manera: en este caso, por ejemplo:

A bAc bbAcc bbbAccc - bbbdeccc.

El elemento en maysculas es el smbolo inicial. Los elementos en minsculas son smbolos


terminales. Las cadenas de la lengua son aquellas que solo contienen elementos terminales,
como por ejemplo: bbbdeccc, de, bdec, Estas seran tres posibles realizaciones del lenguaje
cuya gramtica hemos definido con dos reglas.

LENGUAJE FORMAL

En matemticas, lgica, y las ciencias computacionales, un lenguaje formal es un conjunto de


palabras (cadenas de caracteres) de longitud finita formadas a partir de un alfabeto (conjunto de
caracteres) finito.
Informalmente, el trmino lenguaje formal se utiliza en muchos contextos (en las ciencias, en
derecho, etc.) para referirse a un modo de expresin ms cuidadoso y preciso que el habla
cotidiana. Hasta finales de la dcada de 1990, el consenso general era que un lenguaje formal,
en el sentido que trata este artculo, era en cierto modo la versin lmite de este uso antes
mencionado: un lenguaje tan formalizado que poda ser usado en forma escrita para describir
mtodos computacionales. Sin embargo, hoy en da, el punto de vista de que la naturaleza
esencial de los lenguajes naturales (sin importar su grado de formalidad en el sentido informal
antes descrito) difiere de manera importante de aquella de los verdaderos lenguajes formales
(en el sentido estricto de este artculo) gana cada vez ms adeptos.

Un posible alfabeto sera, digamos, {a, b}, y una cadena cualquiera sobre este alfabeto sera,
por ejemplo, ababba. Un lenguaje sobre este alfabeto, que incluyera esta cadena, sera: el
conjunto de todas las cadenas que contienen el mismo nmero de smbolos a que b, por
ejemplo.

La palabra vaca (esto es, la cadena de longitud cero) es permitida y frecuentemente denotada
mediante o . Mientras que el alfabeto es un conjunto finito y cada palabra tiene una longitud
tambin finita, un lenguaje puede bien incluir un nmero infinito de palabras.

Algunos ejemplos varios de lenguajes formales:

* el conjunto de todas las palabras sobre {a, b}


* el conjunto {an: n es un nmero primo}
* el conjunto de todos los programas sintcticamente vlidos en un determinado lenguaje de
programacin

También podría gustarte