Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Clase 11
J.F. Cardona
Universidad EAFIT
23 de agosto de 2016
Agenda
Captulo 2. Sintaxis
de lenguajes regulares e independientes de
Comparacion
contexto
Gramaticas
con expresiones regulares
Jerarqua de Chomsky
estrella
R REG
L CF
uni o n o concatenaci o n
R1 R2 REG
L1 L2 CF
complemento
R REG
L < CF
intersecci o n
R1 R2 REG
L1 L2 < CF
L R CF
Definicion.
Considere dos alfabetos: fuente y el objetivo .
alfabetica
Una transliteracion
es una funcion:
h : {}
Una transliteracion
fuente c, este es
h (c ) = .
La imagen de la cadena fuente a1 a2 . . . an , ai es la cadena
de imagenes
las imagenes
de las cadenas:
H (v .w ) = h (v ).h (w )
Transliteracion
Ejemplo
describe el manejo de ciertos
La siguiente transliteracion
caracteres
por impresoras ya obsoletas:
h (c ) = c
h (c ) = c
h (c ) =
h (stxt) =
h (etxt) =
Si c {a , b , . . . , z , 0, 1, . . . , 9};
o un espacio;
Si c es una marca de puntuacion
Si c {, , . . . , };
es
Un ejemplo de transliteracion
h (stxt the const. has value 3,14 etxt) =
the const. has value 3,14
Gramaticas
con expresiones regulares
Gramaticas
independientes de contexto extendidas
La legibilidad de las expresiones regulares son buenas para
listas y estructuras similares.
Las gramaticas
independientes de contexto son confusas
para este tipo de casos.
La idea es combinar expresiones regulares y reglas
gramaticales
en la notacion:
Gramaticas
independientes de contexto extendidas o EBNF.
es una expresion
regular.
La parte derecha de una produccion
Gramaticas
con expresiones regulares
Ejemplo
Considere una lista de declaraciones de variables:
((c | i | r )v (, v ) ; )+
por la gramatica
E AN ;
A c|i|r
N v, N | v
Gramaticas
con expresiones regulares
Definicion
Una gramatica
independiente de contexto extendida o gramatica
EBNF; G = (V , , P , S ) que contiene exactamente | V | reglas
cada una de la forma A , donde A es un non-terminal y es
una expresion regular del alfabeto V .
Gramaticas
con expresiones regulares
Derivacion
La parte derecha de una regla extendida A es una
regular, la cual genera un conjunto infinito de
expresion
reglas:
Cada una vista como la parte derecha de una regla no
extendida teniendo muchas alternativas sin limite.
Por ejemplo: A (aB )+ es el conjunto de reglas:
A aB | aBaB | . . .
Gramaticas
con expresiones regulares
Derivacion
puede ser definida para las gramaticas
La derivacion
via la nocion
de derivaciones para las
extendidas tambien,
expresiones regulares.
Esta expresion
y opcion.
operador de eleccion.
Para cualquiera (posiblemente vacas) cadenas y existe
de un paso:
una derivacion
A 0
Gramaticas
con expresiones regulares
Derivacion
de multiples
Gramaticas
con expresiones regulares
Ejemplo
La gramatica
G
E [+ | ]T ((+ | )T )
T F (( | /)F )
F (a |0 (0 E 0 )0 )
izquierda
La derivacion
E T +T T F +T T a+T T a+F T
a+aT a+aF F
a+aaF a+aaa
Gramaticas
con expresiones regulares
Ejemplo
E
F
a
Gramaticas
con expresiones regulares
Ambiguedad
en gramaticas
extendidas
Una gramatica
ambigua permanece ambigua si es escrita
En las gramaticas
EBNF una forma diferente de ambiguedad
regular es ambigua.
puede surgir si la expresion
Por ejemplo la siguiente expresion regular es ambigua:
a b | ab
Jerarqua de Chomsky
La clasificacion
acuerdo a la jerarqua de
Estan
desde el 0 al 3.
general.
Donde 0 es la gramatica
mas
Gramatica
tipo 0
Nombre
Sin restricciones
Forma de las reglas
donde , ( V )+
Familia del lenguaje
Recursivamente enumerable
Tipo de reconocedor
Maquinas
de Turing
Gramatica
tipo 1
Nombre
Sensitiva al contexto
Forma de las reglas
donde , ( V )+ y | || |.
Familia del lenguaje
Contextual o dependiente del contexto
Tipo de reconocedor
Maquinas
de Turing con complejidad del espacio limitada por la
longitud de la cadena de entrada.
Gramatica
tipo 2
Nombre
Independiente al contexto o BNF
Forma de las reglas
A
donde A es un non-terminal (A V) y ( V ) .
Familia del lenguaje
Independiente del contexto (CF) o algebraica.
Tipo de reconocedor
Automata
de pila.
Gramatica
tipo 3
Nombre
Regular o unilineal (lineal por la derecha o por la izquierda).
Forma de las reglas
Lineal por la derecha
A uB
Lineal por la izquierda
A Bu
donde A es un non-terminal (A V) y u y B (V )
Familia del lenguaje
Regular REG o racional o de estado finito.
Tipo de reconocedor
Automata
finito.
Jerarqua de Chomsky
3.CB BC
4.bB bb
5.bC bc
6.cC cc
Jerarqua de Chomsky
Ejemplo. Gramatica
tipo 1 de replica
con centro
El lenguaje L = {ycy | y {a , b }+ } contiene frases como:
aabcaab.
La gramatica:
SX a
X aXA
X bXB
XA XA 0
XB XB 0
A 0A
A 0B
B 0A
B 0B
AA 0
BA 0
AB 0
BB 0
A 0 a a
B 0 a b
A 0 a aa
A 0 b ab
B 0 a ba
B 0 b bb
Xa ca
Xb cb