Advertisement
juaniisuar

Untitled

Aug 3rd, 2017
362
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.04 KB | None | 0 0
  1. yo lo veo algo así:
  2.  
  3. está demostrado que se tiene el mismo poder de cómputo una máquina que sólo usa 0 (blancos) y 1 (puntitos), así que usamos eso
  4.  
  5. la configuración actual de una máquina de turing se puede representar como:
  6. s - el símbolo al que mira el cabezal
  7. e - el estado actual
  8. l - la parte de la cinta a la izquierda del cabezal (como son 0 y 1, es un número en binario)
  9. r - idem pero derecha (sería la representación binaria invertida)
  10.  
  11. esto se puede representar de forma única como un natural C:
  12. C = 2^s 3^e 5^l 7^r
  13.  
  14. notar que se puede recuperar el símbolo s de una config haciendo log(2, C),
  15. análogo para los otros (log es FR)
  16.  
  17. la máquina de turing en sí se puede representar de la forma
  18. a10, q10, a11, q11, a20, q20, ..., ak0, qk0, ak1, qk1 (k estados)
  19.  
  20. donde:
  21. ais es la accion cuando en el estado i veo al simbolo s:
  22. - 0 para escribir 0, 1 para el 1, 2 para moverme a la derecha, 3 para moverme a la izq
  23. qis el nuevo estado para ir cuando estoy en el estado i y veo el simbolo s
  24.  
  25. entonces podemos codificar a la maquina de turing M como un natural:
  26. M = 2^a10 3^q10 ...
  27.  
  28. la función que nos dice el n-ésimo primo es FR, y por lo tanto podemos recuperar el exponente con composicion FR
  29.  
  30. despues hay que definir funciones FR que modifiquen la configuracion dependiendo de la máquina
  31. por ejemplo, nuevaizquierda(l,r,s,a=3) = 2*l + s (cuando me muevo a la izquierda)
  32.  
  33. y una funcion componiendo las anteriores conf(M, X, t) que me diga la configuracion después de t pasos con una cinta X
  34.  
  35. despues una funcion done(M,X,t) que me diga si termine en el estado 0 (si estoy en otro, no haltié)
  36. para eso se fija el estado de conf(M, X, t)
  37.  
  38. con eso, podes usar un minimizador en done(M,X,t) para averiguar cuantos pasos necesitas para haltear
  39. (puede ser que no termine, es parcial)
  40.  
  41. despues usas la funcion conf en esa cantidad de pasos, y te queda la configuracion de la cinta como tupla (s,e=0,l,r)
  42. asi que la funcion FR final te quedaria algo de la onda
  43.  
  44. f(M, X) = construir_cinta( conf(M, X, minimizador_t( !done(M,X,t) ) )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement