Depende del contexto

47
Depende del contexto A veces te vas por las ramas para no tener que ir directo a la raíz. Sobre todo si la raíz es dolorosa y puede derribar el árbol— Albert Espinosa Ivan Meza

Transcript of Depende del contexto

Depende del contexto

A veces te vas por las ramas para no tener que ir directo a la raíz. Sobre todo si la raíz es dolorosa y puede derribarel árbol—

Albert Espinosa

Ivan Meza

Jerarquía de ChomskyLenguaje Gramática Máquina

Independiente de contexto Tipo 2 ( )

Autómata de pila

Regular Tipo 3 ( )

Autómata finito

V → α

V → aA|ϵ

AF, AFNDAFND-ɛ

L Verdadero

FalsoR

AF, AFNDAFND-ɛ

L

Verdadero

FalsoR

LLCAP

Autómata de pilaEs una tupla (Q, Σ, Γ, , , A, δ)q0 Z0

Un AFND- + una pilaϵ

Autómata de piladeterminístico (APD)

Es una tupla (Q, Σ, Γ, , , A, δ)q0 Z0

Para cada solo hay unatrancisiónSi , entonces

δ(q, a, x)

δ(q, ϵ, x) ≠ ∅ δ(q, a, x) = ∅

Autómata de piladeterminístico (APD)

Es una tupla (Q, Σ, Γ, , , A, δ)q0 Z0

Pero además:

No más de una trancisiónSi existe trancisión , no existe ningún otramás

ϵ

Lenguaje donde x = xr

Lenguaje donde x = xr

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/Bb,B/B

a,A/Ab,A/A

b,A/BA

a,A/AAɛ,Zo/Zoɛ,A/Aɛ,B/B

a,A/ε

Más de una transición posibleCuando aparece para otrosímbolo

ϵ

No determinístico

Lenguaje donde xxr

Lenguaje donde xxr

q₀ q₁ q₂

b,B/εb,Z₀/BZ₀

a,B/AB

ε,Z₀/Z₀

Z0

a,Z₀/AZ₀

b,B/BBb,A/BA

a,A/AA

ɛ,Zo/Zoɛ,A/Aɛ,B/B

a,A/ε

Cuando aparece para otrosímbolo

ϵ

No determinístico

Lenguaje donde xmxr

Lenguaje donde xxr

q₀ q₁ q₂

b,B/εb,Z₀/BZ₀

a,B/AB

ε,Z₀/Z₀

Z0

a,Z₀/AZ₀

b,B/BBb,A/BA

a,A/AA

m,Zo/Zom,A/Am,B/B

a,A/ε

Determinístico: APD

Resumen

, nodeterminístico

no determinístico determinístico

x = xr

xxr

xmxr

Las gramáticas

P → aPa|bPb|a|b|ϵ

P → aPa|bPb|aa|bbP → aPa|bPb|m

Ambigüedad y no determinismo es no determinístico, pero no es

ambiguoAP (x = )xr G(x = )xr

No determinismo tiene que ver con el proceso, ambigüedadcon la estructura

Usando un AP para simular un G

Dado , crear donde

G = (V , Σ, P , S) (Q, Σ, Γ, , , A, δ)q0 Z0

y Q = { , , }q0 q1 q0Γ = V ∪ Σ ∪ { }Z0

∉ V ∪ ΣZ0A = { }q2

Producciones

Para inicial la pila y cancelar la pila

δ( , ϵ, ) = {( , S })}q0 Z0 q1 Z0δ( , ϵ, ) = {( , })}q1 Z0 q2 Z0

Producciones

Para manejar las producciones

Para todo , A ∈ Vδ( , ϵ, A) = {( , α})|A → α}q1 q1δ( , a, a) = {( , ϵ})}q1 q1

q₀ q₁ q₂

ε,A/α|A∈V

ε,Z₀/Z₀

Z0

ε,Zo/SZo

a,a/ε |a∈Σy A α

P → aPa|bPb|a|b|ϵ

P → aPa|bPb|a|b|ϵ

q₀ q₁ q₂

ε,P/aPa

ε,Z₀/Z₀

Z0

ε,Zo/PZo

a,a/εa,b/ε

ε,P/bPbε,P/aε,P/bε,P/ε

Para todo podemos crear un G(L) AP (L)

¿Cual es su gramática?

q₀ q₁ q₂

b,B/εb,Z₀/BZ₀

a,B/AB

ε,Z₀/Z₀

Z0

a,Z₀/AZ₀

b,B/BBb,A/BA

a,A/AA

m,Zo/Zom,A/Am,B/B

a,A/ε

Pushes:

Transiciones:

Pop:

Terminó:

→ aAZ0 Z0A → aAA

→ mZ0 Z0A → mA

A → a

→ ϵZ0

→ aAZ0 Z0→ bBZ0 Z0

A → aAAB → aABA → bBAB → bBB

→ mZ0 Z0A → mAB → mBA → aB → b

→ ϵZ0

Derivación abmba

⇒ aAZ0 Z0⇒ abBAZ0

⇒ abmBAZ0⇒ abmbAZ0⇒ abmbaZ0⇒ abmba

Dado un AP podemos crear su Gequivalente

AP (L) = G(L)

¡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|ϵ

¿Hay algo afuera de LLC?

Lemma de bombeo para LLC

Proponer lenguajeEscoger Proponer una cadena que dependa de Particionar en , tal que ,Checar que se cumplan restriccionesChecar si para todo está en ellenguaje

nn

w uvwxy uwx < n |vx| ≥ 0

u w y ∈ Lvi xi i

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

akbkck

n nnanbncn

w uvwxy uwx < n|vx| ≥ 0

vwx aiaibncn

vwx aibicn

vwx anbici

vwx anbncici

∉ L

Lenguajes dependientes del contexto

Sin contexto

Con contexto

Son una tupla , donde:

Gramáticas libres de contextoG = (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 ∈ VS ∈ V

Son una tupla , donde:

Gramáticas dependientes decontexto (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 ∈ VS ∈ V

S

S

cB

WB

WX

BX

bB

→→→→→→→

abc

aSBc

WB

WX

BX

Bc

bb

Derivación para aaabbbccc

S ⇒ aSBc⇒ aaSBcBc⇒ aaabcBcBc⇒ aaabWBcBc

⇒ aaabWXcBc⇒ aaabBXcBc⇒ aaabbccBc

⇒ aaabbccBc⇒ aaabbcWBc

⇒ aaabbcWXc⇒ aaabbcBXc⇒ aaabbcBcc⇒ aaabbWBcc

⇒ aaabbWXcc⇒ aaabbBXcc⇒ aaabbBccc⇒ aaabbbccc

[email protected] ivanvladimir.github.io ivanvladimir

Depende del contexto by is licensed under a.

Creado a partir de la obra en.

Ivan V. Meza RuizCreative Commons Reconocimiento 4.0 Internacional License

http://turing.iimas.unam.mx/~ivanvladimir/slides/lfya/ldc.html