Tipos de gramticas
Incluyen todas las gramttcasformales. Generan todos los lenguajes que pueden ser
reconocidospor una mquinade Turing.
crAB)ayp
A es un no teminal
cf, I y T son cadenasde tetminalesy no terminales.
a y B puedenservacos,pero T ha de ser distinto del vaco.
Se denominan gtamttcasdependientesdel contexto,porque,como se obsewa,A puede
ser sustituido por y si est acompaadade o por la izquierda y d. F por la derecha. Es
decir, se sustituyeun smbolo no-terminal por algo manteniendoel contexto; entonces
una
derivacin siempre produce palabras ms largas o
iguales:
rr -----+n
1.===|lrl S lrl
Estos lenguajesson todos los lenguajesque pueden ser reconocidospor los autmatas
linealesacotados.
Gramticas Tipo 2 (independientes
del conrexro,libredel contexto)
Generanlos lenguajesbresdel contexto.Estn definidaspor reglasde la forma:
A)v
A es un no terminal
T es una cadenade terminalesy no terminales.
Se denominan independientes de contexto porque A puede sustituirse por y
independientemente
de las cadenaspo las que estacompaada.
Los lenguajesindependientesde contexto constituyenla base tencaparala sintaxisde
la mayonade los lenguajesde programacin.Defrnen la sintaxisde las declaraciones,
las
proposiciones,las expresiones,etc.(esdecir, la estructurade un programa).Anlisis
sintcticode un compilador (parser).
Estos lenguajesson todos los lenguajesque pueden ser reconocidospor los autmatas
de pila.
Gramticas Tipo 3 (gramticasregulares)
Generan los lenguajesregulares.Las reglasse restringena un nico no terminal en la
parte izquierday una parte derechacompuestapor un nico terminal que puede estar
seguidoo no de un nico no terminal.Es decir,normasdel tipo:
A:)aB
A )a
Estos lenguaiesson los que pueden ser decididospor un autmata finito. Los lenguajes
regularesse utilizan para definir la estructuralxica de los lenguajesde programacin.
Definen la sintaxisde los identificadotes,nmero, cadenasy otros smbolosbsicosdel
lenguaje.Anlisislxrcode un compilador (Scanner).
Gramtica
No restringidas o
Recursivamente
enumerables.
G = { X, N, P, So }
Restricciones
o)g
a, puede contener ms de un smbolo, siempre
que exista al menos uno No Terminal.
Autmata
Mquina de Turing,
cinta puede ser infinita,
aunque los estados
sean finitos.
No existen restriccionesen p.
0 es cualquier cadena e X v N
1
Dependientes o
sensibles del
contexto.
oAB)oyB
El lado izquierdo puede contener ms de un
smbolo, siempre que exista al menos uno No
Terminal; AeN.
Autmata linealmente
acotado
Independiente o
libre del contexto.
A)p
Regulares
A)x
A)xB
A)Bx
A,BeN
xeX
A e N
S es cualquier cadena e I v N
Autmata Descendente
(Pila)
Autmata Finito
Las gramticas regulares (Tipo 3) son utilizadas por lo general en la fase de anlisis lexicogrfico de un
compilador, se le llama rastreador o scanner, en la cual se verifican los tokens vlidos de un lenguaje.
Las gramticas libres del contexto (Tipo 2) son usan con frecuencia en la fase de anlisis sintctico de un
compilador, el cual toma los tokens y reconoce si la secuenciase encuentra con la sintaxis apropiada.