Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Turing PDF
Turing PDF
Complexity 1
D.Moshkovitz
Motivacin
Nuestra meta, en este curso, es
analizar problemas y clasificarlos de
acuerdo a su complejidad .
Complexity 2
D.Moshkovitz
Motivacin
Nos hacemos preguntas como: Cunto
tiempo tarda en computarse algo?
Complexity 3
D.Moshkovitz
Motivacin
Para poder resolver estas cuestiones
debemos definir formalmente un
modelo de computacin.
Complexity 4
D.Moshkovitz
Introduccin
Objetivos:
Introducir el modelo de computacin denominado
Mquina de Turing.
Resumen:
Mquinas de Turing deterministas (MTD)
Mquinas de Turing con varias cintas (MTVC)
Mquinas de Turing no deterministas (MTND)
La tesis de Church-Turing
Complexity 5
D.Moshkovitz
Esquema de una MT
cabeza: lee/escribe
Aqu hay
una b! movimientos: izda/dcha
cinta infinita
Complexity 6
D.Moshkovitz
SIP 128-129
Definicin formal de la MT
Una mquina de Turing determinista es
una tupla formada por varios objetos.
Complexity 7
D.Moshkovitz
Definicin formal de la MT
1. Q un conjunto finito de estados.
Complexity 8
D.Moshkovitz
Definicin formal de la MT
2. - El alfabeto de entrada: un
conjunto finito de smbolos que no
contiene al smbolo blanco.
Complexity 9
D.Moshkovitz
Definicin formal de la MT
3. - el alfabeto de cinta, tal que:
y en smbolo _ est en .
Complexity 10
D.Moshkovitz
Definicin formal de la MT
4. :QQ{I,D} la funcin de
transicin.
q0 q0
Complexity 11
D.Moshkovitz
Definicin formal de la MT
5. q0Q el estado inicial
Complexity 12
D.Moshkovitz
Definicin formal de la MT
6. qsiQ el estado aceptador.
Complexity 13
D.Moshkovitz
Definicin formal de la MT
7. qnoQ el estado no aceptador.
qnoqsi.
Complexity 14
D.Moshkovitz
Definicin formal de la MT
Resumen
1. Q el conjunto de estados.
2. - el alfabeto de entrada.
3. - el alfabeto de cinta.
4. :QQ{I,D} la funcin de
transicin.
5. q0 Q el estado inicial.
6. qsiQ el estado aceptador.
7. qnoQ el estado que rechaza.
Complexity 15
D.Moshkovitz
Ejecucin de un MTD
La configuracin inicial
estado inicial
q0 cabeza: en la casilla
ms a la izda
La entrada: a partir de
la casilla ms a la izda
Complexity 16
D.Moshkovitz
Ejecucin de un MTD
Ejemplo
(q0,a)=(q0,b,D)
q0 q0
Complexity 17
D.Moshkovitz
Ejecucin de un MTD
La configuracin aceptadora
Si la ejecucin alcanza el estado
aceptador, para.
qsi
Complexity 18
D.Moshkovitz
Ejecucin de un MTD
La configuracin rechazadora
Si la ejecucin alcanza el estado que
rechaza, tambin para.
qno
Complexity 20
D.Moshkovitz
Configuraciones
Cuntas configuraciones
distintas puede alcanzar una
MT que use N casillas?
||N N |Q|
El contenido La El estado
de la cinta posicin
de la
Complexity cabeza 21
D.Moshkovitz
Construccin de una MTD para un
lenguaje
L = { anbncn | n0 }
Ejemplos:
Miembros de L: aaabbbccc
aaabbbccc
No miembros de L: aaabbcccc
aaabbcccc
Complexity 22
D.Moshkovitz
La mquina de Turing
determinista
1. Q = {q0,q1,q2,q3,q4,qsit,qno}
2. = {a,b,c}
3. = {a,b,c,_,X,Y,Z}
4. especificada mediante diagrama.
5. q0 Q el estado inicial.
6. qsiQ el estado aceptador.
7. qnoQ el estado que rechaza.
Complexity 23
D.Moshkovitz
La funcin de transicin
aa, D
YY, D bb, D
ZZ, D
q1 bY,D
aX,D q2 Las transiciones
a estado qno no se
q0 cZ,I especifican.
XX, D
__, D
q3 bb, I
YY, D
aa, I
qac YY, I
__, D q4 ZZ, I
YY, D
ZZ, D
Complexity 24
D.Moshkovitz
aa, D
Lenguaje aceptado YY, D
bb, D
ZZ, D
{ anbncn | n0 } aX,D q1 bY,D
q2
q0 XX, D cZ,I
__, D
YY, D q3 ZZ, I
bb, I
qsi __, D YY, I
q4 aa, I
YY, D
ZZ, D
Xa Y
b Zc _ _
. . .
Complexity 25
D.Moshkovitz
Modelos equivalentes
Las mquinas de Turing deterministas
tienen mucho poder de computacin.
Podemos simular con ellas otros
modelos, aparentemente ms
poderosos, con un coste polinmico.
A continuacin vemos un ejemplo.
Complexity 26
D.Moshkovitz
SIP 136-138
b b b b b _ _ ...
b a a b a _ _ ...
Complexity 27
D.Moshkovitz
Mquinas de Turing con varias cintas
1. Q el conjunto de estados.
2. - el alfabeto de entrada.
3. - el alfabeto de cinta.
4. :QkQ({I,D})k la funcin de
transicin, donde k (el nmero de cintas) es
una constante.
5. q0 Q el estado inicial.
6. qsiQ el estado aceptador.
7. qnoQ el estado que rechaza.
Complexity 28
D.Moshkovitz
Robustez del modelo
Las mquinas de Turing con varias
cintas son polinmicamente
equivalentes (en cuanto a tiempo) a
las que tienen una sola cinta.
Podemos afirmar algo mucho ms
importante sobre la robustez del
modelo de mquina de Turing:
Complexity 29
D.Moshkovitz
La Tesis de Church-Turing
Nocin
Nocin (intuitiva)
de
(intuitiva)
de algoritmos
algoritmos
Mquinas
Mquinas de
Turing
Turing
de
Complexity 30
D.Moshkovitz
Qu ms?
Definimos otro modelo de
computacin menos realista,
que puede ser simulado por las MTDs.
Sin embargo, con un coste exponencial
de tiempo.
Complexity 31
D.Moshkovitz
Mquinas de Turing no
deterministas MTND
1. Q el conjunto de estados.
2. - el alfabeto de entrada. Partes de
3. - el alfabeto de cinta. P(A)={B | BA}
4. :QP(Q{I,D}) la funcin de
transicin.
5. q0Q el estado inicial.
6. qsiQ el estado aceptador.
7. qnoQ el estado que rechaza.
Complexity 32
D.Moshkovitz
Ejecucin de un MTND
cmputo rbol de cmputo
determinista no determinista
acepta si alguna
rama alcanza la
tiempo configuracin
aceptadora
.
.
.
Nota: el tamao de un
rbol es exponencial
en su profundidad
Complexity 33
D.Moshkovitz
Descripcin alternativa
Una mquina de Turing no determinista
adivina el camino correcto y luego
comprueba que efectivamente es
correcto.
Complexity 34
D.Moshkovitz
Ejemplo
Una MTND que decide si dos vrtices de un
grafo estn conectados puede simplemente
adivinar un camino entre ellos.
A continuacin necesita verificar que
efectivamente el camino es vlido (existe).
Complexity 35
D.Moshkovitz
SIP 138-140
Complexity 36
D.Moshkovitz
Simulacin de una MTND por una MTD
...
cinta de direcciones
Complexity 37
D.Moshkovitz
Direcciones
1
computacin no
1 2 3 determinista
111
1 1 2 1
1312
1 2 1 1 2
1 1 1 2
Complexity 38
D.Moshkovitz
Simulacin
1. Escribe 1111 en la cinta de direcciones.
2. Copia la entrada en la cinta simuladora.
3. Simula la MTND: usa la eleccin dictada
por la cinta de direcciones (si es vlida).
4. Si se acepta acepta y termina.
5. Cambia la direccin por la siguiente en
orden lexicogrfico. Si no hay ms
rechaza.
6. Ir al paso 2.
Complexity 39
D.Moshkovitz
Resumen
Presentamos dos modelos de computacin:
la mquina de Turing determinista frente a
la mquina de Turing no determinista.
Complexity 40
D.Moshkovitz
Resumen
La Tesis de Church-Turing: Las mquinas de
Turing deterministas son equivalentes a
nuestra idea intuitiva de algoritmo.
Complexity 41
D.Moshkovitz