Académique Documents
Professionnel Documents
Culture Documents
-Alfabeto de cinta (): {, ,} (= Símbolo de inicio =Espacio en blanco)
(Q1, a) = (Q2, , )
Q1, ) = (T, _ , _)
Q2, a) = (Q1, , )
Q2, ) = (R, _ , _)
-Esquema:
En cinta:aa
La cabeza lectora comienza con el estado S, lee el símbolo “”, lo reescribe, se
mueve a la derecha y cambia al estado Q1, con dicho estado lee el símbolo “a”, lo
sustituye por “ ” y se mueve nuevamente a la derecha cambiando al estado Q2,
con dicho estado lee la siguiente “a”, la sustituye por otro “ ” y se mueve a la
derecha modificando su estado a Q1; finalmente, lee “ ” y cambia al estado de
aceptación (T).
En cinta:aaa
Pero en las MT no totales no ocurre igual, esto es porque “rechazar” y “no aceptar”
no son sinónimos, así que una máquina dada con una entrada dada podría entrar
en un loop, lo cual significa que se va a un ciclo infinito de estados de transición y
nunca acepta o rechaza. Todos los conjuntos que son recursivos son
1
Kozen, C., Dexter, Automata and Computability, Springer-Verlag, Nueva York, 1997, pp. 219-220.
recursivamente enumerables, pero no al revés, esto significa que no todas las MT
son equivalentes a MT totales, así que no de todas sabemos que van a detenerse.
2
Viso Gurovich, Elisa, Introducción a la Teoría de la Computación, Facultad de Ciencias, UNAM, p.277
3
Idem.
4
Kozen, op. Cit., pp.231-232
La prueba consiste en una matriz cuyo encabezado (columnas) son todas las
posibles cadenas binarias, mientras que el nombre de sus filas (izquierda)
corresponde a todas las MT posibles codificadas binariamente como se muestra a
continuación:
Todo lo que hemos analizado hasta ahora, en especial la prueba anterior, nos
muestra que no hay un algoritmo general que nos permita saber si una máquina
se parará o no se parará. Sin embargo, uno siempre puede simular una máquina
dada en una entrada dada, si la máquina se detiene, pues lo sabremos tarde o
temprano, pero si la simulación no se ha detenido, no podremos determinar si se
parará en algún momento o ha entrado en un loop infinito, es en tal sentido que
encontramos una asimetría entre el problema de determinar si una máquina se
parará con una entrada determinada y el de determinar si no se parará.
Lo anterior significa que dada una máquina de Turing M puedes construir una
máquina de Turing N que acepte cuando M acepta. Pero no hay un algoritmo para
5
Ibídem., p. 233
construir una máquina N' que acepte cuando M se va en un loop. Dicho de otra
forma, el problema de la detención (HP), al igual que el de la pertenencia (MP),
son indecidibles pero son también semidecidibles (ambos son recursivamente
enumerables), la demostración de eso sólo requiere que se hagan ciertas
adaptaciones a una MTU6. En contraste, el problema de determinar si una MT no
se detiene con alguna entrada no es semidecidible, es sólo indecidible, también
hay una prueba para esto, pero basta decir que para que el –HP (el problema de
la no detención) fuera semidecidible tendría que ser recursivamente enumerable,
pero dado que ya sabemos que HP es recursivamete enumerable, esto significaría
que ambos son recursivos; sin embargo, ya está demostrado que HP no es
recursivo.
6
Las adaptaciones son que Dadas M ∈ TM y α ∈ Σ∗: se simula M con α y se acepta (M#α) si M acepta α (en
ese caso el lenguaje aceptado es MP); se simula M con α, pero se acepta (M#α) si M termina, ya sea con
aceptación o rechazo (en tal caso el lenguaje aceptado es HP). Obtenido de las diapositivas de la clase.
7
Ibídem., p. 232.
8
Papadimitriou, H., Christos, Computational Complexity, Addison Wesley Longman, USA, 1994, p.6-7
es controversial, pues hay cómputos eficientes que no son polinomiales y
cómputos polinomiales que en la práctica no son eficientes, pero digamos que es
una convención para algunos.
No obstante, hay que señalar que también hay casos en los que la eficiencia es
menos importante y preferimos usar más tiempo y recursos porque sabemos que
eso nos llevará a la mejor decisión.
9
En realidad no existen ninguna restricción para que una MT no determinista tenga más de una cabeza, más
de una cinta o una cinta infinita en una sola dirección, esto es debido a su equivalencia con las MT
deterministas, cuya demostración no haremos en este trabajo.
10
Viso Gurovich, op., Cit., p.242
11
Papadimitriou, op., Cit. pp.45-46
12
Sin embargo, el no determinismo, tal como fue definido en los párrafos anteriores,
difícilmente puede ocurrir en la vida real, pues los seres humanos no podemos
replicarnos para recorrer simultáneamente distintas vías en la búsqueda de
soluciones, tal vez haya algunos súper humanos que puedan hacerlo, pero en
general no ocurre así; además, los humanos no tenemos un Buda que nos diga
cuál camino recorrer primero para llegar a la solución pronto, es decir, no tenemos
la garantía de que la vía de razonamiento que elegimos nos llevará a la solución
correcta, es en tal sentido que el no determinismo difícilmente haría más eficiente
el razonamiento en la vida real.
5.- Señala un lenguaje lógico que sea más expresivo que el cálculo de
proposiciones, pero menos que el cálculo de predicados. ¿Qué ventajas
puede tener el uso de este lenguaje?
12
Ibídem, p.46.
Por una parte, la lógica proposicional es la más simple de las tres, sus fórmulas
son construidas a partir de proposiciones atómicas que se evalúan como
verdaderas o falsas. Las proposiciones se combinan mediante operadores
booleanos (conjunción, negación, implicación y disyunción). En realidad, en lógica
proposicional lo relevante no es la verdad de las fórmulas individuales, sino la
forma en la que la verdad de una proposición afecta la de otras.
Por otra parte, la lógica de primer orden es la más rica de las tres, pues su
lenguaje incluye elementos que permiten razonar acerca de individuos en un
dominio dado, esto incluye funciones, predicados y cuantificación universal y
existencial sobre individuos. Mientras las proposiciones son solo verdaderas o
falsas, los predicados se evalúan como verdaderos o falsos dependiendo de los
valores dados a sus parámetros1314.
13
Bacelar Almeida, José, Rigorous Software Development, Springer, Londres, 2011, p.28.
14
Fagin, Ronald, et. Al., Reasoning About Knowledge, The Mit Press, USA, 2004.
15
Lalanda, Philiphpe, Autonomic Computing, Springer, USA, 2013, p.207
Bibliografía:
Bacelar Almeida, José, et. Al., Rigorous Software Development, Springer, Londres,
2011.
Fagin, Ronald, et. Al., Reasoning About Knowledge, The Mit Press, USA, 2004.