He buscado toneladas de recursos y, aunque conceptualmente entiendo la máquina de Turing en sí misma y lo que hace, estoy un poco atascado en los lenguajes Turing Recognizable y Turing Decidible y no estoy seguro de si la idea que tengo sobre ellos es correcta o equivocado.
Mi profesor define cuatro acciones posibles que una máquina de Turing puede realizar en una cadena de entrada dada:
¿Es un lenguaje reconocible de Turing solo uno que puede colgarse o hacer un bucle? ¿Cómo determino si se puede colgar o hacer un bucle? Simplemente ejecútelo a través de la máquina y si no se detiene en el estado de rechazo (o aceptación) y no es parte del lenguaje de la MT, entonces determino que no es decidible, ¿entonces debe ser reconocible? Y luego, lo que decide es si se garantiza que el lenguaje aceptará o rechazará. ¿Qué pasa con los idiomas que no son reconocibles? ¿Qué harían? Porque parece que todos los idiomas serían reconocibles a menos que fuera posible que el idioma no estuviera en el idioma de la máquina de turing, pero de todos modos se detiene en el estado de aceptación. Lo que parece que se debe a un mal diseño de la máquina de Turing en lugar del lenguaje en sí.
Estoy luchando por entender estas dos definiciones. He estado estudiando durante horas para mi examen que es mañana y simplemente no puedo entender lo que debería ser un concepto simple. Por favor, ¿ayuda a aclarar mi confusión?
Un idioma
se dice que es recursivamente enumerable si existe una máquina de Turing
que cumplan las siguientes condiciones:
-Por cada
, simulando
en
(que denotamos
) resulta en
detener y aceptar
. -Para cada
,
no acepta
.
Tenga en cuenta que para un lenguaje recursivamente enumerable, cualquier TM que acepte no es necesario detenerse en las entradas fuera del idioma.
Si es decidible, debe existir algún TM que se detenga en todas las entradas además de las condiciones para siendo recursivamente enumerable.
¿Qué pasa con los idiomas que no son reconocibles?
No existiría tal decisor o reconocedor. Considere el siguiente lenguaje: es el ª TM y es el la cuerda en y no se detiene .
El idioma no es recursivamente enumerable. Ninguna TM puede aceptar todas las cadenas en . Para algunas TM en , puede ser posible reconocer un bucle infinito comprobando los estados y la función de transición. Sin embargo, no existe un procedimiento general para hacer esto para todas las MT en . Un argumento diagonal de Cantor prueba esto. Ver la indecidibilidad del problema de la detención.
¿Esto aclara las cosas?
André Nicolás