Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Máquinas que comen máquinas
1. Máquinas que comen máquinas
Toiterateishuman,torecursedivine.—
L.PeterDeutsch
Ivan Meza
2. Máquinas de Turing
Es 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
Σ
Γ Σ ⊂ Γ
q0
B B ∈ Γ B ∉ Σ
A
δ Q × Γ → Q × Γ × {der, izq}
3. Jerarquía de Chomsky
Lenguaje Gramática Máquina Ejemplo
Tipo 0
( )
Máquina de Turing,
APDo, AC
??
Tipo 1
( )
Autómata lineal con
fronteras
Tipo 2
( )
Autómata de pila
Tipo 3
( )
Autómata finito
/LRE LRec
α → β
LDC
αV β → αγβ
ww, a
n
b
n
c
n
LLC
V → α
w ,w
r
a
n
b
n
Lreg
V → aA|ϵ
w, a
∗
5. Las máquinas que al pasar por un estado nal terminan
aceptando la cadena, otras que no tienen una transición y
rechazan la cadena, pero de vez en cuando se pueden quedar
en un ciclo
6. Si la cadena debe ser aceptada por la MT, eventualmente
llegará al estado aceptor; si la cadena debe ser rechazada
puede llegué a una transición inexistente o se quede en un
ciclo.
7. Las autómatas nitos, autómatas de pilas, autómatas con
frontera lineal, son máquinas aceptoras: verdadero o falso
Entonces las MT contienen máquinas aceptoras
8. Codificación de una cadena
δ( , ) = ( , , )qi Xj qk Xl Dm
Asignar a cada estado , a cada símbolo de y cada dirección un
entero
Codificar cada entrada de la MT como
Separar cada codificación con doble uno ( )
Q Γ
0
i
10
j
10
k
10
l
10
m
11
11. It is possible to invent a single machine which can be used to
compute any computable sequence. If this machine is
supplied with a tape on the beginning of which is written the
S.D ["standard description" of an action table] of some
computing machine , then will compute the same
sequence as .
U
M U
M
Turing, 1936
12.
13. Es posible inventar una máquina que pueda ser usada para
computar cualquier secuencia computable. Si esta máquina
se le provee con una cinta en la que al principio se le escribe la
descripción estándar de una tabla de acción de alguna
máquina , entonces computará la misma secuencia que
U
M U
M
14. MTU: Máquina de Turing que
puede simular una MT arbitraria
Mu
15. Lenguaje aceptado
= {mw|w ∈ L(M)}Lu
El lenguaje máquinas y cadenas dónde la máquina acepta a la
cadena
19. Las máquinas de Turing que se aceptan a si mismas
= {m|m ∈ L(M)}Ld¯
20. Las máquinas en realidad son un número, como número las
podemos ordenar
Ordenadas, cada una corresponde a un número entero
Entonces,...
21. T F F T F
F F F F F
T T T T T
F T F F F
T F T F F
m0 m1 m2 m3 m4 …
M0 …
M1 …
M2 …
M3 …
M4 …
… … … … … … …
22. T F F T F
F F F F F
T T T T T
F T F F F
T F T F F
m0 m1 m2 m3 m4 …
M0 …
M1 …
M2 …
M3 …
M4 …
… … … … … … …
Md
¯ T F T F F …
23. F F F T F
F T F F F
T T F T T
F T F T F
T F T F T
m0 m1 m2 m3 m4 …
M0 …
M1 …
M2 …
M3 …
M4 …
… … … … … … …
Md F T F T T …
24. El lenguaje de las máquinas que no se aceptan a si mismas
= {m|m ∉ L(M)}Ld
25. Si es RE o Rec existe una máquina de Turing, , ¿qué pasa
con su descripción ?
Md
md
Si , quiere decir que no se acepta a si misma, pero
para eso tendría que aceptarla, que la hace una máquina
que se acepta a si misma, contradicción
∈md Ld
Md
Si , quiere decir que se acepta a si misma, pero para
eso no tendría que aceptarla, que la hace una máquina
que no se acepta a si misma, contradicción
∉md Ld
Md
27. Lenguaje Gramática Máquina Ejemplo
No RE -- --
Tipo 0
( )
Máquina de Turing,
APDo, AC
??
Tipo 1
( )
Autómata lineal con
fronteras
Tipo 2
( )
Autómata de pila
Tipo 3
( )
Autómata finito
Ld
/LRE LRec
α → β
LDC
αV β → αγβ
ww, a
n
b
n
c
n
LLC
V → α
w ,w
r
a
n
b
n
Lreg
V → aA|ϵ
w, a
∗
28. Lenguajes aceptados por máquinas aceptoras: recusivos o
decidibles
¿Las máquinas de Turing son las máquinas aceptoras?
Sabemos que las máquinas Turing tiene un límite
34. Lenguaje Gramática Máquina Ejemplo
No RE -- --
Tipo 0
( )
Máquina de Turing,
APDo, AC
/
Tipo 1
( )
Autómata lineal con
fronteras
Tipo 2
( )
Autómata de pila
Tipo 3
( )
Autómata finito
Ld
/LRE LRec
α → β
Lu
LDC
αV β → αγβ
ww, a
n
b
n
c
n
LLC
V → α
w ,w
r
a
n
b
n
Lreg
V → aA|ϵ
w, a
∗
35. Sabemos que hay MT que son decidibles: verdadero y falso
Sabemos que hay problemas para los cuales no existe MT, Ld
Sabemos que hay MT que no son decidibles: verdadero, falso
y ciclo
36. Opciones de una máquina de
Turing
¿Cuándo se acepta? Llega a estado aceptor
¿Cuándo se rechaza? Llega a estado del que no hay transición dado
el estado de la cinta
¿Otra opción? Quedarse en un ciclo infinito
38. Modelo teórico: instantáneo
Aceptar (T) Llega a estado aceptor
Rechazar (F) Se queda en estado no aceptor
Loop infinito Rechazó o loopinfinito?
39. Modelo práctico: tiempo
Aceptar (T) En algún momento llega a estado aceptor
Rechazar (F) En algún momento llega a estado no aceptor
Loop infinito No termina nunca
Ante problemas muy, muy difíciles, no sabemos si sigue
procesando o está en un loop in nito
40. Ejemplo de problema muy muy
difícil
De un conjunto de números enteros de tamaño ¿existe una
combinación del subconjuntos de ellos que sume ?
N
C
¿Cómo se diseña la MT?
42. ¿Por qué mi programa tiene un
loop?
Por diseño, loops son importantes desde lenguajes regulares
¿Por qué mi programa tiene un
loop infinito?
Un error
Por diseño, interfaz gráfica, satélites, switches, robots
43. Hecho de la computación: los loops son básicos en la
computación
Pero nos meten en problemas rápidamente
45. El lenguaje de las máquinas y cadenas que se aceptan en
pasos
n
= {mw|w ∈ L(M) en n pasos}Ln
46. Enumeremos todas las codi caciones de automatas lineales
con frontera (MT) decidibles, { , , …}M1 M2
Enumeramos todas las cadenas de Σ
∗
= { | ∉ L( )}Lf¯ xi xi Mi
Si fuera sensitivo al contexto, una de máquina aceptaría a
todas las cadenas dentro de , que va encontra de la definición.
Por lo tanto no es sensitivo al contexo.
Sin embargo, si es decidible ya que la máquina lo único que
tiene que hacer es simular a cada con (es decir, es universal),
pero no se queda trabada porque se trata de máquinas decidibles
Lf
¯ Mx
Lf
¯
Mf
¯
Mi xi
47. Lenguaje Gramática Máquina Ejemplo
No RE -- --
Tipo 0
( )
Máquina de Turing,
APDo, AC
/ ,
Tipo 1
( )
Autómata lineal con
fronteras
Tipo 2
( )
Autómata de pila
Tipo 3
( )
Autómata finito
Ld
/LRE LRec
α → β
Lu Ln Lf
¯
LDC
αV β → αγβ
ww, a
n
b
n
c
n
LLC
V → α
w ,w
r
a
n
b
n
Lreg
V → aA|ϵ
w, a
∗
48. ivanvladimir@gmail.com ivanvladimir.github.io ivanvladimir
Máquinas de Turing o máquinas con cola 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/mt.html