Máster en tecnología Blockchain y Criptoeconomía

Teoría de la Computación

Calendario

Octubre
LMMJV
[0]   12
[1]56789
[2]1213141516
[3]1920212223
[4]2627282930
Noviembre
LMMJV
[5]23456
[6]910111213
[7]1617181920
[8]2324252627
[9]30    
Diciembre
LMMJV
[9] 1234
[10]7891011
[11]1415161718
 N  no lectivo,  N  fiesta,  N  estudio,  N  exámenes, N N clase, N clase anulada

Programa

Intro
Qué es la Teoría de la computación. Teoría de la computación y Blockchain.
I - Lenguajes y Autómatas
Autómatas regulares, a pila, acotados linealmente y máquinas de Turing. La jerarquía de Chomsky. Indeterminismo. El Problema de la Parada. La máquina Universal de Turing. Turing completitud.
II - Problemas difíciles (Hard)
Problemas tratables e intratables. Las clases P, NP, NP-Hard y NP-Completa. El problema ¿P=NP?. Problemas de decisión y "reducciones". El problema de la "Satisfacibilidad". Algunas reducciones.
III- Los límites del conocimiento
El método axiomático. La axiomatización del conocimiento, teoría de conjuntos. La paradoja de Russell. El teorema de Gödel. La conjetura de Church-Turing.

Evaluación

Presentar un trabajo corto relacionando esta parte de la asignatura con cualquier aspecto de los vistos en otras asignaturas del máster (p.ej. en criptografía)

El peso de la nota obtenida, para el cálculo de la nota final en la asignatura, será proporcional a la carga horaria de esta parte: 4/14.

Desarrollo

Pdf utilizado en clase

NOVIEMBRE

miércoles 25 de noviembre de 2020

Hemos llegado hasta la página 21

jueves 26 de noviembre de 2020
Prácticas con la Máquina de Turing
Descargar Máquina de Turing

1) Construir una Máquina de Turing que entre en un ciclo infinito en caso de encontrarse situada frente a un “0” y termine en caso de encontrarse frente a un “1”.

2) Para un alfabeto binario, construir una Máquina de Turing que duplique la entrada.

Descargar Ejemplos
Otros ejercicios...

1.- Diseñar una Máquina de Turing que desplace hacia la izquierda una posición un patrón binario {0,1} de longitud indeterminada. El resultado deberá ocupar las mismas posiciones en la cinta que el patrón original. En la posición extrema de la derecha se situará un cero. Interpretando el patron binario como un número entero en base 2, esto equivale a un producto por 2. En caso de que el primer elemento sea un uno, no se realizará la operación y se marcará esto sustituyendolo por un símbolo "z"

Ejemplo:

2.-Diseñar una máquina de Turing para restar 1 a un patrón binario {1,0} que representa un número entero.

Ejemplo:

3.- Combinar las dos máquinas anteriores en una que aplique tantos desplazamientos a un patrón binario (según enunciado del problema 1) como indique un entero (que se irá descontando como se indica en el ejercicio 2). La ejecución terminará al realizarse todos los desplazamientos (llegar el contador a cero) o al abortarse un desplazamiento por encontrar un 1 en la primera posición. La situación inicial de los datos será la presentada en el ejemplo (separados por un solo espacio en blanco y con el contador a la izquierda.

Ejemplo:

Hemos llegado hasta la página 39

viernes 27 de noviembre de 2020

Hemos terminado con el tema "Problemas difíciles"

DICIEMBRE

martes 15 de diciembre de 2020

Tema 3 - Los límites del conocimiento

Extras

Relativos a cuestiones mensionadas en el curso:

Con "cierta" relación con cuestiones mensionadas en el curso

Del trabajo de Turing pasamos a la inteligencia artificial, la computación y la conciencia,...

"Not So Frequently Asked Questions"
En ocasiones alguna pregunta nada habitual puede ser de interés general....