Post on 18-Jul-2020
UNAMGramáticas De Contexto
Sensitivo, Autómatas De Tipo Push-Down Doble
Autómatas Lineales Con FronteraForma Normal Kuroda
EQUIPO 3JACALES ROJAS HÉCTOR DANIELVELAZQUEZ ALBAÑIL IRVING G.MORELOS ALQUEZADA MARIO D.
PINA LOPEZ CRISTIAN.
GRAMÁTICAS DE CONTEXTO SENSITIVO.
3
Las gramáticas sensibles al contexto o de tipo 1, son las que generan los lenguajes sensibles al contexto
En forma general toda gramática se define mediante una cuádrupla G=(N,T, P,S).
-N es un conjunto finito de símbolos no terminales -T es un conjunto finito de símbolos terminales N∩ T=∅ -P es un conjunto finito de reglas de producción -S Símbolo distinguido o Axioma S∉ (N∪ T)
4
REGLAS DE PRODUCCIÓN.
γΑβ→γωβDondé:Α ∈ N
γ, β ∈ (N ∪ T)* ω ∈ (N ∪ T)+
5
Es decir se permite el reemplazo del no terminal A en el lado izquierdo de la producción, por la cadena ω sólo en el “contexto” γ_β.
NOTA:La gramática puede contener también la producción S→ ε , si el lenguaje que se quiere generar contiene la cadena vacía.
6
L4={an bn cn / n>0} G4=<{A,B,C}, {a,b,c}, S4, P4> donde P4 contiene las siguientes producciones: S4→ A A→ aABC A→abC CB→BC bB→bb bC→bc cC→cc
Ejemplo.Derivación de la Cadena a 3 b 3 c 3
7
8
-Creada por Sige-Yuki Kuroda.-Es una gramática que genera lenguaje tipo sensible al contexto. No
genera cadenas vacias.-En forma normal de Koruda es
1. A → a,2. A → B3. A → BC,4. AB → CD
Donde A, B, C y D son no terminales y a es terminal.
Forma Normal de Kuroda
9
Cumple con 3 axiomas:1.- Una gramática es de longitud-creciente si es equivalente a una
gramática en la forma normal Kuroda.2.- Una gramática de Forma Normal Kuroda es equivalente a una
gramática cuyas producciones están en forma 1, 2 o 3.3.- Cada lenguaje de tipo 0 puede ser generado por una gramática
cuyasproducciones están en una de las siguientes formas:1. A → a,
2. A → BC,3. AB → AC,4. A → λ.
Autómatas Del Tipo Push-Down Doble
INFORMACION.Una transición consulta el estado, el símbolo de entrada y ambas topes de la pila. La acción de una transición puede alterar alguno o todos estos componentes.La interacción entre las pilas permite que la máquina retenga una copia de la pila mientras usa la otra pila para procesar la entrada.
El PDA M de dos pilas acepta el lenguaje L = {a^i b^i c^i d^i |i≥0}.M procesa las cadenas de L de la siguiente manera:Lee "a" Push "A" en la pila uno.Lee "b" Pop "A" y Push "B" en la pila dos.Lee "c" Pop "B" y Push "C" en la pila uno.Lee "d" Pop "C". M:
Q={q_0,q_1,q_2,q_3}Σ={a,b,c,d}Γ={A,B,C}F={q_3}
δ(q_0,λ,λ,λ)={q_3,λ,λ}δ(q_0,a,λ,λ)={q_0,A,λ}δ(q_0,b,A,λ)={q_1,λ,B}δ(q_1,b,A,λ)={q_1,λ,B}δ(q_1,c,λ,B)={q_2,C,λ}δ(q_2,c,λ,B)={q_2,C,λ}
Los autómatas lineales son autómatas de pila deterministas que a lo largo de su
computación sólo hacen un ``cambio de turno''. A grandes rasgos, esto significa que
toda computación consiste de un procedimiento de empilar
consecutivamente para después pasar a desempilar.
13
Autómata Lineal
14
AUTÓMATA LINEAL CON FRONTERA
Es una tupla (Q, X, Σ, q 0, M L, M R, δ, F)
Q es un conjunto finito de estadosX es el alfabeto de cinta
Σ es el alfabeto de entrada
q 0 es el estado inicial
M L es el marcador extremo izquierdo
M R es el marcador extremo derecho donde M R ≠ M L
δ es una función de transición que mapea cada par (estado, símbolo de la cinta) a (estado, símbolo de cinta, Constant 'c') donde c puede ser 0 o 1 o -1
F es el conjunto de estados finales
Referencias× http://www.exa.unicen.edu.a
r/catedras/ccomp1/ApunteGSC.pdf
× http://delta.cs.cinvestav.mx/~gmorales/ta/node15.html
× G. E. R´ev´esz, Introduction to Formal Languages, Dover Publications (1991).
15
EQUIPO 3JACALES ROJAS HÉCTOR DANIELVELAZQUEZ ALBAÑIL IRVING G.MORELOS ALQUEZADA MARIO D.
PINA LOPEZ CRISTIAN.
GRAMÁTICAS DE CONTEXTO SENSITIVO.
17
Las gramáticas sensibles al contexto o de tipo 1, son las que generan los lenguajes sensibles al contexto
En forma general toda gramática se define mediante una cuádrupla G=(N,T, P,S).
-N es un conjunto finito de símbolos no terminales -T es un conjunto finito de símbolos terminales N∩ T=∅ -P es un conjunto finito de reglas de producción -S Símbolo distinguido o Axioma S∉ (N∪ T)
18
REGLAS DE PRODUCCIÓN.
γΑβ→γωβDondé:Α ∈ N
γ, β ∈ (N ∪ T)* ω ∈ (N ∪ T)+
19
Es decir se permite el reemplazo del no terminal A en el lado izquierdo de la producción, por la cadena ω sólo en el “contexto” γ_β.
NOTA:La gramática puede contener también la producción S→ ε , si el lenguaje que se quiere generar contiene la cadena vacía.
20
L4={an bn cn / n>0} G4=<{A,B,C}, {a,b,c}, S4, P4> donde P4 contiene las siguientes producciones: S4→ A A→ aABC A→abC CB→BC bB→bb bC→bc cC→cc
Ejemplo.Derivación de la Cadena a 3 b 3 c 3
21
22
-Creada por Sige-Yuki Kuroda.-Es una gramática que genera lenguaje tipo sensible al contexto. No
genera cadenas vacias.-En forma normal de Koruda es
1. A → a,2. A → B3. A → BC,4. AB → CD
Donde A, B, C y D son no terminales y a es terminal.
Forma Normal de Kuroda
23
Cumple con 3 axiomas:1.- Una gramática es de longitud-creciente si es equivalente a una
gramática en la forma normal Kurado.2.- Una gramática de Forma Normal Kuroda es equivalente a una
gramática cuyas producciones están en forma 1, 2 o 3.3.- Cada lenguaje de tipo 0 puede ser generado por una gramática
cuyasproducciones están en una de las siguientes formas:1. A → a,
2. A → BC,3. AB → AC,4. A → λ.
Autómatas Del Tipo Push-Down Doble
INFORMACION.Una transición consulta el estado, el símbolo de entrada y ambas topes de la pila. La acción de una transición puede alterar alguno o todos estos componentes.La interacción entre las pilas permite que la máquina retenga una copia de la pila mientras usa la otra pila para procesar la entrada.
El PDA M de dos pilas acepta el lenguaje L = {a^i b^i c^i d^i |i≥0}.M procesa las cadenas de L de la siguiente manera:Lee "a" Push "A" en la pila uno.Lee "b" Pop "A" y Push "B" en la pila dos.Lee "c" Pop "B" y Push "C" en la pila uno.Lee "d" Pop "C". M:
Q={q_0,q_1,q_2,q_3}Σ={a,b,c,d}Γ={A,B,C}F={q_3}
δ(q_0,λ,λ,λ)={q_3,λ,λ}δ(q_0,a,λ,λ)={q_0,A,λ}δ(q_0,b,A,λ)={q_1,λ,B}δ(q_1,b,A,λ)={q_1,λ,B}δ(q_1,c,λ,B)={q_2,C,λ}δ(q_2,c,λ,B)={q_2,C,λ}
Los autómatas lineales son autómatas de pila deterministas que a lo largo de su
computación sólo hacen un ``cambio de turno''. A grandes rasgos, esto significa que
toda computación consiste de un procedimiento de empilar
consecutivamente para después pasar a desempilar.
28
Autómata Lineal
29
AUTÓMATA LINEAL CON FRONTERA
Es una tupla (Q, X, Σ, q 0, M L, M R, δ, F)
Q es un conjunto finito de estadosX es el alfabeto de cinta
Σ es el alfabeto de entrada
q 0 es el estado inicial
M L es el marcador extremo izquierdo
M R es el marcador extremo derecho donde M R ≠ M L
δ es una función de transición que mapea cada par (estado, símbolo de la cinta) a (estado, símbolo de cinta, Constant 'c') donde c puede ser 0 o 1 o -1
F es el conjunto de estados finales
30
Referencias× http://www.exa.unicen.edu.a
r/catedras/ccomp1/ApunteGSC.pdf
× http://delta.cs.cinvestav.mx/~gmorales/ta/node15.html
× G. E. R´ev´esz, Introduction to Formal Languages, Dover Publications (1991).
31