Máquinas de turing o máquinas con cola

32
Máquinas de Turing o máquinas con cola We can only see a short distance ahead, but we can see plenty there that needs to be done.— Alan Turing Ivan Meza

Transcript of Máquinas de turing o máquinas con cola

Page 1: Máquinas de turing o máquinas con cola

Máquinas de Turing o máquinas concola

We can only see a short distance ahead, but we can see plenty there that needs to be done.—Alan Turing

Ivan Meza

Page 2: Máquinas de turing o máquinas con cola

Jerarquía de ChomskyLenguaje Gramática Máquina Ejemplo

Dependientedel contexto

Tipo 1 ( )

Autómata dedoble pila/linealcon fronteras

Independientedel contexto

Tipo 2 ( )

Autómata depila

Regular Tipo 3 ( )

Autómata finito

αV β → αγβww, anbncn

V → αw ,wr anbn

V → aA|ϵw, a∗

Page 3: Máquinas de turing o máquinas con cola

AF, AFNDAFND-ɛ

L

Verdadero

Falso

R

LLCAP, APD

APDo, ALFLDC

Page 4: Máquinas de turing o máquinas con cola

Máquinas de TuringEs una tupla (Q, Σ, Γ, , B, A, δ)q0

conjunto finito de estados alfabeto de cadenas reconocidas alfabeto de cinta, estado inicial Símbolo de espacio en blanco pero estados finales

función de transición

QΣΓ Σ ⊂ Γq0B B ∈ Γ B ∉ ΣAδQ × Γ → Q × Γ × {der, izq}

Page 5: Máquinas de turing o máquinas con cola
Page 6: Máquinas de turing o máquinas con cola

La cintaInfinitaTodo lo que no es entrada tiene un símbolo

El principio de la cinta es la posición

B[… , B, B, a, a, b, b, B, B, …]

0

Page 7: Máquinas de turing o máquinas con cola

Ejemploa b X Y B

q0 ( , X, R)q1 ( , Y , R)q3

q1 ( , a, R)q1 ( , Y , L)q2 ( , Y , R)q1

q2 ( , a, l)q2 ( , X, R)q0 ( , Y , L)q2

q3 ( , Y , R)q3 ( , B, R)q4

q4

Page 8: Máquinas de turing o máquinas con cola

¿Problema, cómo especificar la configuración?

AF Estado y símbolo de cadenaAP Estado, símbolo de cadena, símbolo pilaAPDo Estado, símbolo de cadena, símbolo pila uno y símbolo pilados

¡Cinta!

Page 9: Máquinas de turing o máquinas con cola

Recordandoa b X Y B

q0 ( , X, R)q1 ( , Y , R)q3

q1 ( , a, R)q1 ( , Y , L)q2 ( , Y , R)q1

q2 ( , a, l)q2 ( , X, R)q0 ( , Y , L)q2

q3 ( , Y , R)q3 ( , B, R)q4

q4

Page 10: Máquinas de turing o máquinas con cola

Descripción instantáneasδ(q, ) = (p, Y , L)Xi

excepción

,,

… q … ⊢ … p Y …X1X2 Xi−1 XiXi+1 Xn X1X2 Xi−2 Xi−1 Xi+1

i = 1 q … ⊢ pBY …X1X2 Xn X2 Xn

i = n, Y = B … q ⊢ pB … pX1X2 Xn−1 Xn X1X2 Xn−1

Page 11: Máquinas de turing o máquinas con cola

Descripción instantáneasδ(q, ) = (p, Y , R)Xi

excepción

,,

… q … ⊢ … p Y p …X1X2 Xi−1 XiXi+1 Xn X1X2 Xi−1 Xi+1 Xn

i = n … q ⊢ … Y pBX1X2 Xn X1X2i = 1, Y = B q … ⊢ p …X1X2 Xn X2 Xn−1

Page 12: Máquinas de turing o máquinas con cola

aabbq0⊢ X abbq1⊢ Xa bbq1⊢ X aY bq2⊢ XaY bq2⊢ X aY bq0⊢ XX Y bq0⊢ XXY bq1⊢ XX Y Yq2⊢ X XY Yq2⊢ XX Y Yq0⊢ XXY Yq3⊢ XXY Y q3

⊢ XXY Y B Bq4

Page 13: Máquinas de turing o máquinas con cola

El lenguaje aceptado por una máquinade Turing

L(T ) = {w ∈ | w αpβ, p ∈ A}Σ∗ q0 ⊢∗

A los lenguajes aceptados por las MT se les conoce comoLenguajes Recursivos Enumerables

Page 14: Máquinas de turing o máquinas con cola

q₀ q₁ q₂

q₃ q₄

a/X,Rb/Y,L

Y/Y,R

Y/Y,L

B/B,R

Y/Y,R

Y/Y,R

X/X,R

a/a,R

b/b,L

Page 15: Máquinas de turing o máquinas con cola

1110

q1 q2 q3

q4 q5

1/X,R B/1,L

1/1,R

1/1,L

0/0,R

0/0,L

X/1,L

X/X,R

0/0,R

0/0,L

Page 16: Máquinas de turing o máquinas con cola

1101110

q₀

q₆ q₁ q₅ q₇ q₈

q₉

q10q11q12

1/B,R

0/0,R 1/1,L 0/0,L

1/1,L

B/B,R

B/B,R

0/B,R0/B,L

1/B,R

1/1,R

1/1,L

copia

Page 17: Máquinas de turing o máquinas con cola

MT varias cintasUna con varias cintas MT MkT

Para toda existe una equivalente L( )MkT L( )MT

Construir una que simule a MT MkT

Page 18: Máquinas de turing o máquinas con cola

MT no determinísticoLa función de transición regresa un conjuntoδ

Para toda existe una equivalente L(MN )DT L( )MT

Construir una que simule a MT MNDT

Page 19: Máquinas de turing o máquinas con cola

MT semi-infinitasLa cinta sólo existe hacia al lado derecho

[a, a, b, b, B, B, …]

Construir una que simule a semi-finitaMT MT

Page 20: Máquinas de turing o máquinas con cola

Simulando una MTProcesador: automáta finito

Memoria y disco: cinta

Page 21: Máquinas de turing o máquinas con cola

Autómata con colaEs una tupla (Q, Σ, Γ, , , A, δ)q0 Z0

conjunto finito de estados alfabeto de cadenas reconocidas alfabeto de pila estado inicial símbolo inicial de la cola

estados finales función de transición

QΣΓq0Z0AδQ × (Σ ∪ {ϵ}) × Γ → Q × Γ∗

Un AFND- + una colaϵ

Page 22: Máquinas de turing o máquinas con cola

Simulando una computadoraMultiples cintas: Memoria, contador de instrucción, dirección

de memoria, dispositivo de entrada, auxiliar

Automáta: para ejecutar instruccion, por instruacción

Page 23: Máquinas de turing o máquinas con cola

Opciones de una MTAceptar o Rechazar

Page 24: Máquinas de turing o máquinas con cola

MT que decideSiempre acepta o rechaza: Autómata con frontera lineal

Page 25: Máquinas de turing o máquinas con cola

Autómata lineal con fronteraEs una tupla (Q, Σ, Γ, , B, A, δ)q0

conjunto finito de estados alfabeto de cadenas reconocidas alfabeto de cinta, estado inicial Símbolo de espacio en blanco pero estados finales

función de transición

QΣΓ Σ ⊂ Γq0B B ∈ Γ B ∉ ΣAδQ × Γ ∪ {<, >} → Q × Γ ∪ {<, >} × {der, izq}

Restricción, no se puede ir más allá de los símbolos <, >

Page 26: Máquinas de turing o máquinas con cola

Lenguajes recursivosSon lenguajes para los cuales puede construirse una MT que

decide

El lenguaje es decidible

Page 27: Máquinas de turing o máquinas con cola

Otra opciónParar: Aceptar o rechazar

No parar

Page 28: Máquinas de turing o máquinas con cola

Lenguajes que computan parte de wEl lenguaje pares y , donde acepta a Mt w Mt w

Page 29: Máquinas de turing o máquinas con cola

Lenguajes que computan parte de wEl lenguaje de máquinas que no aceptan al lenguaje vacioMt

Page 30: Máquinas de turing o máquinas con cola

Jerarquía de ChomskyLenguaje Gramática Máquina Ejemplo

Recursivamenteenumerables

Tipo 0 ( )

Máquina deTuring

??

Dependiente delcontexto

Tipo 1 ( )

Autómata dedoblepila/lineal confronteras

Independientedel contexto

Tipo 2 ( )

Autómata depila

Regular Tipo 3 ( )

Autómatafinito

α → β

αV β → αγβww, anbncn

V → αw ,wr anbn

V → aA|ϵw, a∗

Page 31: Máquinas de turing o máquinas con cola

AF, AFNDAFND-ɛ

LR

LLCAP, APD

APDo, ALFLDC

LRE

MTVerdadero

Verdadero

Falso

Page 32: Máquinas de turing o máquinas con cola

[email protected] ivanvladimir.github.io ivanvladimir

Máquinas de Turing o máquinas con cola by islicensed under a

. Creado a partir de la obra en

.

Ivan V. Meza RuizCreative Commons Reconocimiento 4.0Internacional License

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