Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Depende del contexto

148 views

Published on

Gramáticas dependeinte del contexto 2016-I
http://ivanvladimir.github.io/content/teach/curso_lfya_2016I.html

Published in: Education
  • Be the first to comment

  • Be the first to like this

Depende del contexto

  1. 1. Depende del contexto Avecestevasporlasramasparanotenerqueirdirectoalaraíz.Sobretodosilaraízesdolorosaypuedederribar elárbol— AlbertEspinosa Ivan Meza
  2. 2. Jerarquía de Chomsky Lenguaje Gramática Máquina Independiente de contexto Tipo 2 ( ) Autómata de pila Regular Tipo 3 ( ) Autómata finito V → α V → aA|ϵ
  3. 3. AF, AFND AFND-ɛ L Verdadero Falso R
  4. 4. AF, AFND AFND-ɛ L Verdadero Falso R LLC AP
  5. 5. Autómata de pila Es una tupla (Q, Σ, Γ, , , A, δ)q0 Z0 Un AFND- + una pilaϵ
  6. 6. Autómata de pila determinístico (APD) Es una tupla (Q, Σ, Γ, , , A, δ)q0 Z0 Para cada solo hay una trancisión Si , entonces δ(q, a, x) δ(q, ϵ, x) ≠ ∅ δ(q, a, x) = ∅
  7. 7. Autómata de pila determinístico (APD) Es una tupla (Q, Σ, Γ, , , A, δ)q0 Z0 Pero además: No más de una trancisión Si existe trancisión , no existe ningún otra más ϵ
  8. 8. Lenguaje donde x = x r
  9. 9. Lenguaje donde x = x r q₀ q₁ q₂ a,Zo/Zo b,B/εb,Z₀/BZ₀ a,B/AB ε,Z₀/Z₀ Z0 a,Z₀/AZ₀ b,B/BB b,Zo/Zo a,B/B b,B/B a,A/A b,A/A b,A/BA a,A/AA ɛ,Zo/Zo ɛ,A/A ɛ,B/B a,A/ε
  10. 10. Más de una transición posible Cuando aparece para otro símbolo ϵ No determinístico
  11. 11. Lenguaje donde xx r
  12. 12. Lenguaje donde xx r q₀ q₁ q₂ b,B/εb,Z₀/BZ₀ a,B/AB ε,Z₀/Z₀ Z0 a,Z₀/AZ₀ b,B/BB b,A/BA a,A/AA ɛ,Zo/Zo ɛ,A/A ɛ,B/B a,A/ε
  13. 13. Cuando aparece para otro símbolo ϵ No determinístico
  14. 14. Lenguaje donde xmx r
  15. 15. Lenguaje donde xx r q₀ q₁ q₂ b,B/εb,Z₀/BZ₀ a,B/AB ε,Z₀/Z₀ Z0 a,Z₀/AZ₀ b,B/BB b,A/BA a,A/AA m,Zo/Zo m,A/A m,B/B a,A/ε
  16. 16. Determinístico: APD
  17. 17. Resumen , no determinístico no determinístico determinístico x = x r xx r xmx r
  18. 18. Las gramáticas P → aP a|bP b|a|b|ϵ P → aP a|bP b|aa|bb P → aP a|bP b|m
  19. 19. Ambigüedad y no determinismo es no determinístico, pero no es ambiguo AP (x = )x r G(x = )x r No determinismo tiene que ver con el proceso, ambigüedad con la estructura
  20. 20. Usando un AP para simular un G
  21. 21. Dado , crear donde G = (V , Σ, P , S) (Q, Σ, Γ, , , A, δ)q0 Z0 y Q = { , , }q0 q1 q0 Γ = V ∪ Σ ∪ { }Z0 ∉ V ∪ ΣZ0 A = { }q2
  22. 22. Producciones Para inicial la pila y cancelar la pila δ( , ϵ, ) = {( , S })}q0 Z0 q1 Z0 δ( , ϵ, ) = {( , })}q1 Z0 q2 Z0
  23. 23. Producciones Para manejar las producciones Para todo ,A ∈ V δ( , ϵ, A) = {( , α})|A → α}q1 q1 δ( , a, a) = {( , ϵ})}q1 q1
  24. 24. q₀ q₁ q₂ ε,A/α|A∈V ε,Z₀/Z₀ Z0 ε,Zo/SZo a,a/ε |a∈Σ y A α
  25. 25. P → aP a|bP b|a|b|ϵ
  26. 26. P → aP a|bP b|a|b|ϵ q₀ q₁ q₂ ε,P/aPa ε,Z₀/Z₀ Z0 ε,Zo/PZo a,a/ε a,b/ε ε,P/bPb ε,P/a ε,P/b ε,P/ε
  27. 27. Para todo podemos crear unG(L) AP (L)
  28. 28. ¿Cual es su gramática? q₀ q₁ q₂ b,B/εb,Z₀/BZ₀ a,B/AB ε,Z₀/Z₀ Z0 a,Z₀/AZ₀ b,B/BB b,A/BA a,A/AA m,Zo/Zo m,A/A m,B/B a,A/ε
  29. 29. Pushes: Transiciones: Pop: Terminó: → aAZ0 Z0 A → aAA → mZ0 Z0 A → mA A → a → ϵZ0
  30. 30. → aAZ0 Z0 → bBZ0 Z0 A → aAA B → aAB A → bBA B → bBB → mZ0 Z0 A → mA B → mB A → a B → b → ϵZ0
  31. 31. Derivación abmba ⇒ aAZ0 Z0 ⇒ abBAZ0 ⇒ abmBAZ0 ⇒ abmbAZ0 ⇒ abmbaZ0 ⇒ abmba
  32. 32. Dado un AP podemos crear su G equivalente
  33. 33. AP (L) = G(L)
  34. 34. ¡Ahora si esta parte está completa! Lenguaje Gramática Máquina Independiente de contexto Tipo 2 ( ) Autómata de pila Regular Tipo 3 ( ) Autómata finito V → α V → aA|ϵ
  35. 35. ¿Hay algo afuera de LLC? Lemma de bombeo para LLC
  36. 36. Proponer lenguaje Escoger Proponer una cadena que dependa de Particionar en , tal que , Checar que se cumplan restricciones Checar si para todo está en el lenguaje n n w uvwxy uwx < n |vx| ≥ 0 u w y ∈ Lv i x i i
  37. 37. Proponer lenguaje , que tal Escoger , que tal Proponer una cadena que dependa de Particionar en , tal que , Caso uno en aes, Caso dos en aes y bes, Caso tres en bes y ces, Caso tres en ces, En todos los casos existe una palabra que a k b k c k n n na n b n c n w uvwxy uwx < n |vx| ≥ 0 vwx a i a i b n c n vwx a i b i c n vwx a n b i c i vwx a n b n c i c i ∉ L
  38. 38. Lenguajes dependientes del contexto
  39. 39. Sin contexto
  40. 40. Con contexto
  41. 41. Son una tupla , donde: Gramáticas libres de contexto G = (V , Σ, P , S) es otro alfabeto que denominamos símbolos no terminales (generalmente en mayúsculas) es un alfabeto que denominamos símbolos terminales es conjunto de reglas con la forma donde y que denominamos símbolo inicial V Σ P A → α alpha ∈ (Σ ∪ V ) ∗ A ∈ V S ∈ V
  42. 42. Son una tupla , donde: Gramáticas dependientes de contexto (sensitivas) G = (V , Σ, P , S) es otro alfabeto que denominamos símbolos no terminales (generalmente en mayúsculas) es un alfabeto que denominamos símbolos terminales es conjunto de reglas con la forma donde y que denominamos símbolo inicial V Σ P αAβ → αγβ α, β ∈ (Σ ∪ V ) ∗ γ ∈ (Σ ∪ V ) + A ∈ V S ∈ V
  43. 43. S S cB W B W X BX bB → → → → → → → abc aSBc W B W X BX Bc bb
  44. 44. Derivación para aaabbbccc S ⇒ aSBc ⇒ aaSBcBc ⇒ aaabcBcBc ⇒ aaabW BcBc ⇒ aaabW XcBc ⇒ aaabBXcBc ⇒ aaabbccBc
  45. 45. ⇒ aaabbccBc ⇒ aaabbcW Bc ⇒ aaabbcW Xc ⇒ aaabbcBXc ⇒ aaabbcBcc ⇒ aaabbW Bcc ⇒ aaabbW Xcc ⇒ aaabbBXcc ⇒ aaabbBccc ⇒ aaabbbccc
  46. 46. ivanvladimir@gmail.com ivanvladimir.github.io ivanvladimir Depende del contexto by is licensed under a . Creado a partir de la obra en . Ivan V. Meza Ruiz Creative Commons Reconocimiento 4.0 Internacional License http://turing.iimas.unam.mx/~ivanvladimir/slides/lfya/ldc.html

×