Documente Academic
Documente Profesional
Documente Cultură
Contenido
Un problema
Modelos de Computacin
Tesis de Church-Turing
Cmo resolvemos el problema?
Gua de viaje por la T. Computabilidad
Verificacin de programas
Complejidad computacional
Un problema en el
trabajo
Jefe, a m no me sale
Bueno, Sr. Prez, no se preocupe
Primera cuestin
Matemtico
Rompi el cdigo enigma
Mquinas de Turing
Test de Turing
La mquina enigma
Apuntes de Turing
El Entscheidungsproblem
Encontrar un
algoritmo general que
decida si una frmula
del clculo de primer
orden es un teorema
En 1936, de manera
independiente, A. Church y
A. Turing demostraron
ambos que es imposible
escribir tal algoritmo
Test de Turing
Segunda Cuestin
El anlisis que ha realizado
el Sr. Prez est basado en
el argumento diagonal
Tercera Cuestin
Tesis de Church-Turing
(versin informal):
Cualesquiera dos
modelos de
computacin resuelven
los mismos problemas
Se puede considerar un
axioma en Computacin
Otra versin:
Todo algoritmo o
procedimiento efectivo
es Turing-computable
Modelos de computacin
Decidibilidad
Reducibilidad
Teorema de recursin
Codificacin de programas
El Teorema de Rice
El Teorema de
Recursin
El problema de la parada
Computabilidad
El lenguaje elegido:
GOTO
Modelo de computacin basado en
lenguaje
Lenguaje de programacin
muy simple
Usa variables como registros
Es computacionalmente completo
Sintaxis de GOTO
No es tan simple:
Programa Universal en GOTO
Entrada: datos
+Programa
Salida: Resultado
de aplicar el
programa al dato
ES UN
ORDENADOR!
Tiene 4 estados y 2
smbolos y 3 cintas
para codificar un
programa que marca el
resultado de un
programa.
Necesitamos utilizar
mecanismos de
definicin por
recursin
Potente herramienta
de programacin
Cuestin: Cuntas
construcciones
necesitamos para
caracterizar las funciones
computables?
Haskell, Lisp...
NO es un
juguete
matemtico
El problema de la parada
Entrada: Un programa
y un dato de entrada
Salida:
1 (s) si el programa
para sobre ese dato
0 (no) si no para
Se prueba usando el
mtodo diagonal
(usando el programa
universal)
Teorema de Rice
Mtodo para detectar la no computabilidad
Aplicaciones (I):
imposibilidad de la correccin parcial
Aplicaciones (II):
imposibilidad de la verificacin
automatizada de la equivalencia
El teorema de Recursin
Los procedimientos
Una consecuencia:
siempre existen
virus autorreplicantes
Programa (codificado)
Verificacin de programas
Semntica
Axiomtica
Complejidad
Reducciones
Jerarqua de complejidad
Lo veremos en el curso
Otras aplicaciones
La Teora de la
Computabilidad resuelve
o est implicada en la
resolucin de varios
problemas de los
propuestos por Hilbert:
Consistencia de la
aritmtica
Decidibilidad de la
resolucin diofntica
...