Está en la página 1de 10

GRAMÁTICAS

• GRAMÁTICA.
• GRAMÁTICA REGULAR
o EQUIVALENCIA GRAMÁTICA REGULAR Y AUTOMÁTA FINITO
• GRAMÁTICAS INDEPENDIENTES DEL CONTEXTO (GIC, GCL)
o ÁRBOL DE DERIVACIÓN. GRAMÁTICAS AMBIGUAS
o SIMPLIFICACIÓN DE GRAMÁTICAS INDEPENDIENTES DEL CONTEXTO
o PRODUCCIONES λ. NO TERMINALES ANULABLES.
o PRODUCCIONES NO GENERATIVAS, DE REDENOMINACIÓN (UNITARIAS)
o FORMA NORMAL DE CHOMSKY
o FORMA NORMAL DE GREIBACH
• PASO DE GIC A AUTÓMATA A PILA
o ALGORITMO 1
o ALGORITMO 2
• EJERCICIOS
GRAMÁTICA
DEFINICIÓN
GR=(Σ,N,S,P) =(T,N,S,P) =(VT,VN,S,P)
Σ=VT Alfabeto o conjunto de símbolos terminales. Por convenio se escribirán en minúscula.
N=VN Alfabeto o conjunto de símbolos no terminales. Por convenio se escribirán en mayúscula.
S= Símbolo inicial no terminal, llamado axioma, SN.
P= Conjunto de reglas de producción, substitución o reescritura.
EJEMPLO
GR=({S,A}{a,b,c},S,P) Siendo P:
S→A (1)
A →aAa (2)
A→bAb (3)
A →c (4)
Genera las cadenas wcwR; siendo w.
Ejemplo de cadena generada: abaacaaba. La secuencia de reglas es: (1), (2), (3), (2), (2), (4)
S→A aAa abAba  a baAaba  abaaAaa ba  abaacaaba
Gramática de tipo 0: Lenguajes recursivamente enumerables o lenguajes estructurados por frases.
Generan lenguajes recocidos por una máquina de Turing
Reglas sin restricciones (Por lo menos un símbolo no terminal en la parte izquierda)
Gramática de tipo 1: Lenguajes Sensibles al contexto.
Generan lenguajes recocidos por un autómata linealmente acotado (MT cuya longitud de cinta=kn)
Las reglas son de la forma
αAβ → αγβ. Siendo A ϵVN ; α, β , γ ϵ(VT ꓴVN)* ,pero γ no puede ser la λ.
Gramática de tipo 2: Lenguajes independientes de contexto o libres de contexto.
Generan lenguajes recocidos por un autómata con pila.
Las reglas son de la forma Forma sentencial:
Concatenación de símbolos terminales
A → γ. Siendo A ϵVN ; γ ϵ(VT ꓴVN)* . y no terminales que se derivan a partir
Gramática de tipo 3: Lenguajes regulares. del símbolo inicial S.
S=>aB=>aaB=>aaa
Generan lenguajes recocidos por un autómata finito.
Las reglas son de la forma
Lineales por la derecha A → aB|a|λ. Siendo A,B ϵVN ; a ϵVT (definición de regular según libro)
Lineales por la izquierda A → Ba|a|λ. Siendo A,B ϵVN ; a ϵVT
GRAMÁTICA REGULAR (GRAMÁTICA DE TIPO 3 O LINEAL)
DEFINICIÓN
GR=(Σ,N,S,P)
Σ=VT Alfabeto o conjunto de símbolos terminales. Por convenio se escribirán en minúscula.
N=VN Alfabeto o conjunto de símbolos no terminales. Por convenio se escribirán en mayúscula.
S= Símbolo inicial no terminal, llamado axioma, SN.
P= Conjunto de reglas de producción, substitución o reescritura.
Para que la gramática sea regular, las reglas de rescritura han de ser reglas de substitución sólo por la
derecha o sólo por la izquierda:
y (regla substitución por la derecha, Gramática lineal a la derecha) A → aB|a|λ
y (regla substitución por la izquierda, Gramática lineal a la izquierda) A → Ba|a|λ

Nota: }) más general que libro


AUTOMATA FINITO GRAMÁTICA REGULAR
• Asignamos a cada estado del autómata un símbolo no terminal (viceversa, si es el paso de GR a AF). Menos
para el estado inicial.
• Estado inicial de AF S
• Transición entre estado y asignación de regla (viceversa, si es el paso de GR a AF)
(regla substitución a la derecha), si es de aceptación H.
• Modificar las reglas ; se substituyen por H siendo H nuevo no terminal.

Recordatorio AF ER

𝐚 ( 𝐚 ∗ 𝐛 + 𝐛∗ 𝐛 ) =𝐚 ( 𝐚 ¿ ¿ ∗+ 𝐛 ∗) 𝐛 ¿
Ejemplo intuitivo AF GR

={a,b} N={S,A,B,C,D} siendo q0S;q1 A;q2 B;q3 C;q4 D

OBTENCIÓN REGLAS A PARTIR DE TRANSICIONES

S
S
C A
B
C C
Atención: esta gramática
C
no es regular.
D
Hubiera sido conveniente
quitar las transiciones λ
AF GR

={a,b} N={S,A,B,C,D} siendo


q0S; A;q2 B; C;q4 D
S

bC
B

a b a b

λ a b qo q1,q2,a3 qo Q5 C
qo qo q1,q2,a3 q1 q2 q3,q4 q1 q2 Q6 D
q1 q2,q3 q2 q3,q4 q2 q2 q4 q2 q2 q4

q2 q2 q2 q4 q3 q3,q4 q3 Q6

q3 q3 q3,q4 q4 q4

q4 q1,q2,a3 q2 q3,q4 Q5 q2 Q6
q3,q4 q3,q4 Q6 Q6
GR AF
𝐆= { 𝚺 , 𝐍 , 𝐒 , 𝐏 } q0S; q1 A; q2 B; q3 aceptación
={a,b} N={S,A,B} Estados autómata = símbolos no terminales

S →aA (1) a
A
S →bB (2)
A →aB (3) 𝒂
B →bA (4) b
B →b (5) S F

b B
S →aA (1)
S →bB (2) b
A →aB (3)
B →bA (4)
B →bF (5) Nota: Puede existir una gramática no regular
F →λ (6) que genere un lenguaje regular, entonces
F=no terminal
existirá una gramática regular equivalente a la
anterior que genere el mismo lenguaje.
Ejercicio1 : Construya un AF para el lenguaje en ∑ = {0,1} cuyas cadenas empiezan con “0” o
terminan en “1”.Obtener la expresión regular y la gramática.

Autómatas, lenguajes y gramàticas CA DENIA 9


Ejercicio2 : Obtenga un AFND-ε dado el siguiente lenguaje definido en el alfabeto Σ={a,b,c}. El
conjunto de cadenas que inician en la sub-cadena “ac” y terminan en la sub-cadena “ab”.
Obtén la gramática y la expresión regular.

Autómatas, lenguajes y gramàticas CA DENIA 10

También podría gustarte