Sei sulla pagina 1di 6

TECNOLOGIA EN REDES Y TELECOMUNICACIONES

ALEXANDER JACOME RIVERA

ALAN TURING

15 DE AGOSTO 2010

TRC260-40
La máquina de Turing/La teoría de la
computación y la Máquina de Turing

“La disciplina Ciencias de la Computación es el estudio sistemático de los procesos


algorítmicos que describen y transforman información: teoría, análisis, diseño, eficiencia,
implementación, y aplicación“ [Denning et al.,1989].

• El punto de partida de la teoría de la computación fueron las cuestiones


fundamentales que David Hilbert (1845-1918) formuló en 1928, el
“Entscheidungsproblem‿.

• Las primeras noticias en contra surgen en 1931 con Kurt Gödel (1906-
1978) y su Teorema de Incompletitud [1931]: “Todo sistema de primer
orden consistente que contenga los teoremas de la aritmética y cuyo
conjunto de axiomas sea recursivo no es completo".

• Los resultados de Gödel prueban que no sólo no existe un algoritmo que


pueda demostrar todos los teoremas en matemáticas sino que además
no todos los resultados son demostrables.
• Alan Turing, establece la relación entre la lógica y la computación
electrónica, plantea la famosa Máquina de Turing, la cual es la base de
la Teoría de la Computación actual.

• Turing es, considerado el padre de la Teoría de la Computación.

Tabla de contenidos
[ocultar]

• 1 La Máquina de Turing
o 1.1 Funcionamiento
• 2 Computabilidad y no
Computabilidad
o 2.1 Tesis de Church-Turing

• 3 Licencia

La Máquina de Turing

• La máquina de Turing es una caja negra (tan simple como una máquina
de escribir y tan compleja como un ser humano) capaz no sólo de leer y
escribir un alfabeto de símbolos finito a partir de una cantidad finita pero
muy grande de cinta de papel, sino de modificar su propia configuración
o "estado mental".

• La máquina de Turing se convirtió en un instrumento ideal para probar si


un procedimiento es efectivamente computable o no.

Funcionamiento

• Una máquina de Turing es un dispositivo que transforma un INPUT en un


OUTPUT después de algunos pasos.

• Consiste en una cabeza de lectura/escritura que examina una dimensión


posiblemente infinita de una cinta bidireccional dividida en cuadros cada
uno de los cuales está identificado con un 0 o un 1.

• Para llevar a cabo algún algoritmo, la máquina se inicializa en algún


estado interno arbitrario. A continuación, se pone en marcha y la
máquina lee el bit que se encuentra en ese momento en su interior y
ejecuta alguna operación con ese bit (lo cambia o no, dependiendo de su
estado interno). Después se mueve hacia la derecha o hacia la izquierda,
y vuelve a procesar el siguiente bit de la misma manera. Al final se para,
dejando el resultado al lado izquierdo por ejemplo.
• Una instrucción típica podría ser: 01->11011i

• La traducción es como sigue: si la máquina se encuentra en el estado


interno 0 y lee 1 en la cinta, entonces pasará al estado interno 1101
(13), escribirá 1 y se moverá hacia la izquierda un paso (la cinta se
moverá hacia la derecha). A continuación es conveniente inventar una
notación para la secuencia del INPUT. Esta notación se llama notación
binaria expandida. Consiste en cambiar la secuencia original binaria por
otra construida de la siguiente forma: el 0 se cambia por 0 y el 1 por 10
y se ponen un cero a la izquierda y/o a la derecha del resultado si
empieza o acaba en 1 respectivamente. Así por ejemplo, el número 13
que en binario es 1101 es en binario expandido 1010010 con un cero
delante por esta última regla 01010010. Para volver al original hay que
contraer el binario expandido con la siguiente regla:

Empezamos a leer por la izquierda el binario expandido. Cuando


encontremos un 0 tomamos nota de cuántos 1 hay hasta llegar al
siguiente 0 y lo escribimos. Si encontramos que hay dos 0 seguidos,
apuntaríamos un 0 porque no habría ningún 1. Con el 13 se haría: el
primer 0 se encuentra en la primera posición y el siguiente 0 está en la
posición 3. Entre los dos solo hay un 1. Lo anotamos. Seguidamente hay
un 1, y después un 0, entonces apuntamos 1 porque hay un 1 entre
medias de ellos. Esto es lo que se hace sucesivamente y encontramos:
1101 que es el número original.

• Cualquier función que pueda ser considerada de "modo natural"


como computable puede ser computada por una máquina
universal de Turing.
• Si bien la conjetura no ha podido ser demostrada, hasta el momento ha
resistido todos los intentos de encontrar un contraejemplo.

Computabilidad y no Computabilidad

• Una de las cuestiones más estudiadas en la teoría de la computabilidad


ha sido la posibilidad de construir algoritmos que nos determinen si un
determinado algoritmo posee o no una determinada propiedad.
• En un principio se fueron obteniendo demostraciones individuales de la
no compatibilidades cada una de estas cuestiones, de forma que se
tenía la sensación de que casi cualquier pregunta interesante acerca de
algoritmos era no computable.
• A pesar de esto, y como consecuencia de la existencia de un programa
universal hay otras muchas cuestiones interesantes que se han
demostrado computables.
• El identificar los problemas que son computables y los que no lo son
tiene un considerable interés, pues indica el alcance y los límites de la
computabilidad, y así demuestra los límites teóricos de los ordenadores.

• Además de las cuestiones sobre algoritmos, se han encontrado


numerosos problemas menos "generales" que han resultado ser no
computables. Como ejemplo citamos:

- Décimo problema de Hilbert. Una ecuación difuntica es la ecuación de


los ceros enteros de un polinomio con coeficientes enteros. Se pregunta
si hay un procedimiento efectivo que determine si una ecuación
difuntica tiene o no solución.

• Por otro lado, son muchos los problemas interesantes que se han
demostrado computables.

• Todas las funciones construidas por recursividad primitiva o


nominalización a partir de funciones calculables resultan ser calculables
como consecuencia de los trabajos de Church y Turing.

Tesis de Church-Turing

• Existe un obstáculo importante al probar que no existe un algoritmo


para una tarea específica.

• Primero es necesario saber con exactitud qué significa algoritmo. Cada


uno de los matemáticos mencionados anteriormente había superado
este obstáculo, definiendo "algoritmo" de una manera diferente. Gödel
definió un algoritmo con una secuencia de reglas para formar funciones
matemáticas complicadas a partir de funciones matemáticas más
simples. Church utilizó un formalismo denominado calculo lambda,
mientras que Turing empleó su máquina y definió un algoritmo como
cualquier conjunto de instrucciones para su máquina simple.

• Si algo puede calcularse a partir de un algoritmo definido de una forma,


entonces también puede calcularse a partir de un algoritmo definido en
cualquiera de las otras formas. Conforme los investigadores se dieron
cada vez mas cuanta de esta equivalencia en la década de 1930, se
creyó en forma amplia en las dos proposiciones que siguen:

• Todas las definiciones razonables de “algoritmos‿ conocidas hasta el


momento son equivalentes.
• Cualquier definición razonable de “algoritmo‿ que se llegue a dar, a su
vez será equivalente a definiciones ya conocidas.
• Estas creencias han llegado a denominarse Tesis Church-Turing en
honor a dos de los primeros trabajadores que se dieron cuenta de la
naturaleza fundamental del concepto que habían definido juntos. Hasta
el momento, no ha surgido evidencia en contra y se acepta ampliamente
la Tesis de Church-Turing.

FUENTES

http://es.wikipedia.org/wiki/Alan_Turing
http://www.dma.eui.upm.es/historia_informatica/Doc/Personajes/AlanTuring.ht
m
http://campusvirtual.unex.es/cala/epistemowikia/index.php?title=La_m
%C3%A1quina_de_Turing/Turing_y_la_Inteligencia_Artificial

Conclusión.

Con esta máquina comenzó la ciencia de la inteligencia artificial.

Potrebbero piacerti anche