Professional Documents
Culture Documents
Lenguajes
Lenguajes y Gramticas
Matemticas
Discretas Tenemos dos clases de lenguaje:
Natural
Lenguaje
Lenguaje Formal
Lenguajes y
Gramticas
Gramticas y Gramticas y
Lenguajes Lenguajes
Cont Lenguaje Formal
Definicin:
De acuerdo al diccionario Webster, un lenguaje es un cuerpo Sea A un conjunto finito. Un lenguaje (formal) L sobre A es un
de palabras y mtodos de combinacin de palabras utilizado, subconjunto de A*, el conjunto de todas las cadenas sobre A.
y comprendido por una comunidad de tamao considerable,
tales lenguajes se llaman Lenguajes Naturales. Por Ejemplo
Sea A = {a , b}.
a) El conjunto L de todas las cadenas sobre A que contiene un
Los Lenguajes Formales se utilizan para modelar los lenguajes
nmero impar de letras a es un lenguaje sobre A.
naturales y para comunicarse con las computadoras.
b) L es precisamente el conjunto de cadenas sobre A aceptadas
por el autmata de estado finito.
c) Una forma de definir un lenguaje es dar una lista de reglas
(gramtica) que ste debe cumplir.
Escribimos G=(N, T, P, )
1
Gramticas y Gramticas y
Lenguajes Lenguajes
Gramtica Simple Cont
Ejemplo 1:
Definicin: Sean:
Generalmente, una produccin (A,B) P se escribe: A partir del smbolo inicial se utilizan (remplazan) varias veces las
AB producciones hasta obtener una cadena de smbolos terminales (T).
A debe incluir al menos un smbolo no Terminal, mientras que B
puede constar de cualquier combinacin de smbolos terminales y El lenguaje L(G) es el conjunto de todas las cadenas que se
no terminales. obtienen.
Gramticas y Gramticas y
Lenguajes Lenguajes
Derivacin Cont
Definicin: Ejemplo 2:
Sea G=(N,T,P, ) una gramtica. Sea G la gramtica
Si es una produccion y xy (NT)*, decimos que x y se N={,S}
deriva directamente de x y y escribimos T={a,b}
P={ b , aS,S bS, S b}
xy xy G={N,T,P,}
2
Gramticas y Gramticas y
Lenguajes Gramtica BNF Lenguajes
Cont (Forma normal de Backus)
Gramticas y Gramticas y
Lenguajes Lenguajes
Cont Cont
Ejemplo 3:
Un entero se define como una cadena que consta de un signo Ejemplo 4:
opcional (+ o -) seguido de una cadena de dgitos (0 a 9). La Escriba una gramtica BNF para el conjunto de nmeros con
siguiente gramtica genera a todos los nmeros enteros.
<dgito> ::=0|1|2|3|4|5|6|7|8|9
decimales (por ej: 487.34 o 8.3)
<entero> ::=<entero con signo>|<entero sin signo> <digito>::=0|1|2|3|4|5|6|7|8|9
<entero con signo> ::=+<entero sin signo>|-<entero sin signo> <numero>::=<digito>|<digito><numero>
<entero sin signo> ::=<dgito>|<dgito><entero sin signo>
<numero decimal>::=<numero>.<numero>
3
Gramticas y Gramticas y
Lenguajes Lenguajes
Cont Tipos de Gramticas
Las gramticas se clasifican por los tipos de producciones que
Ejemplo 5: las definen.
Escriba una gramtica BNF para el conjunto de nmeros enteros
con signo. Definicin:
<digito>::=0|1|2|3|4|5|6|7|8|9
Sea G una gramtica y la cadena nula.
<numero>::=<digito><numero> | <digito> a) Si cada produccin es de la forma
<signo>::=+ | - A , donde , (N T)*, A N, (N T)*, - {}.
<numero con signo>::=<signo><numero>
Entonces G es una gramtica sensible al contexto (o de tipo 1).
Gramticas y Gramticas y
Lenguajes Lenguajes
Tipos de Gramticas Cont
En una gramtica sensible al contexto Gramtica sensible al contexto
Se puede remplazar A por si A est en el contexto de y Ejemplo 6:
La gramtica G definida por T = {a, b, c}, N = {, A, B, C, D, E}, smbolo
En una gramtica libre de contexto inicial y con producciones
Establece que podemos remplazar A por en cualquier momento. aAB, aB, A aAC, A aC, B Dc,
D b, CD CE, CE DE, DE DC, Cc Dcc,
En una gramtica regular
En la produccin CE DE podemos reemplazar C con D si C va seguida de E y
Se tienen reglas de sustitucin particularmente sencillas:
En la produccin Cc Dcc podemos reemplazar C con Dc si C va seguida de c.
Remplazamos un smbolo no terminal por
un smbolo terminal Podemos derivar DC de C, pues CD CE DE DC
un smbolo terminal seguido de un smbolo no terminal
la cadena nula La cadena a3b3c3 esta en L(G), pues tenemos
aAB aaACB aaaCCDc aaaDCCc aaaDCDcc
Observe que una gramtica regular es una gramtica libre de contexto y una aaaDDCcc aaaDDDccc aaabbbccc
gramtica libre de contexto sin producciones de la forma A es una
Se puede mostrar que L(G)= { anbncn | n =1,2,}
gramtica sensible al contexto
4
Gramticas y Gramticas y
Lenguajes Lenguajes
Cont Cont
Gramticas y Gramticas y
Lenguajes Lenguajes
Cont Cont
5
Gramticas y Gramticas y
Lenguajes Lenguajes
Gramtica de Lindenmayer Cont
Definicin 1: Definicin 2:
Sea G =(N, P, T,) una gramtica de Lindenmayer interactiva libre de
Una gramtica de Lindenmayer interactiva libre de contexto. Si
contexto consta de: = x1 xn Y existen producciones xi i
En P, para i = 1,,n, escribimos
Un conjunto finito N de smbolos no terminales.
i,,n
Un conjunto finito T de smbolos terminales, donde NT=
Un conjunto finito P de producciones A B, donde A (N Decimos que i,,n es derivable de manera directa de . Si i+1 es
T) y B (N T)*. derivable de manera directa de i para i = 1,,n-1, decimos que n
es derivable de 1 y escribimos
Un smbolo inicial N. 1 n
Gramticas y Gramticas y
Lenguajes Lenguajes
Cont Cont
Consideramos a G (N, T, P, D) como una gramtica como una instruccin para girar 60hacia a la izqui erda.
Lindenmayer interactiva libre de contexto.
Si comenzamos del lado izquierdo y el primer movimiento es horizontal y
hacia la derecha, la interpretacin de la cadena d-d++d-d produce la
Como un ejemplo de derivacin D, tenemos siguiente curva fractal
DDD++DDdd++dd
As, d d + + d d L(G).
6
Gramticas y Gramticas y
Lenguajes Lenguajes
Cont Gramticas para Expresiones
Gramticas y Gramticas y
Lenguajes Lenguajes
Cont Cont
Cont Gramtica para estructura de oraciones
La oracin siguiente es una cadena en S*, pero no tiene una G = (V, S , vo, ), donde
construccin adecuada (la disposicin de los sustantivos y los verbos no
V es un conjunto finito,
es valida).
Iba a la tienda Juan Jorge a cantar S un subconjunto de V,
v0 V- S y
La siguiente oracin tiene una construccin adecuada pero carece de es una relacin finita en V*
sentido.
Los sonidos azules se sientan y cruzan la pierna bajo la cima de la S es el conjunto de todas las palabras permitidas en el
montaa lenguaje, y
V consta de S adems de algunos otros smbolos.
En un lenguaje: El elemento vo de V es un punto de partida para las
Sintaxis: regula la construccin adecuada de las oraciones. sustituciones.
Semntica: se encarga del significado de las oraciones. Por ultimo la relacio sobre V* especifica los reemplazos
En un lenguaje de programacin lo que se ensea es la sintaxis. permisibles.
7
Gramticas y Gramticas y
Lenguajes Lenguajes
Cont Cont
Gramticas y
Lenguajes
Cont
Cont
El conjunto S contiene todas las palabras permitida en el lenguaje.
Se afirma que la oracin Julia maneja frecuentemente que esta
denotada por w, es una oracion permisible o con sintaxis correcta,
deacuerdo con las reglas de este lenguaje.
Para demostrar esto, considerese la siguiente serie de cadenas en V*.
Oracin
Sujeto predicado
Julia predicado
Julia verbo adverbio
Julia maneja adverbio
Julia maneja frecuentemente