La pregunta para la que no me puedo decidir

39
La pregunta para la que no me puedo decidir To iterate is human, to recurse divine.— L. Peter Deutsch Ivan Meza

Transcript of La pregunta para la que no me puedo decidir

Page 1: La pregunta para la que no me puedo decidir

La pregunta para la que no mepuedo decidir

To iterate is human, to recurse divine.—L. Peter Deutsch

Ivan Meza

Page 2: La pregunta para la que no me puedo decidir

La tesis de Turing-Church(relajada)Toda computación real puede ser transformada a unamáquina de Turing

Page 3: La pregunta para la que no me puedo decidir

La tesis de Turing-ChurchToda computación efectiva puede llevarse a cabo por unamáquina de Turing

Page 4: La pregunta para la que no me puedo decidir

Método efectivo, M está compuesto por un número finito de instrucciones cuando llevado a cabo sin error siempre produce el resultado

deseado en un número finito de pasos puede llevarse a cabo por un humano sin la necesidad de una

computadora, pero con lápiz y papel no necesita de conocimiento externo o ingenuidad de parte del

humano que lo ejecuta

MM

M

M

Page 5: La pregunta para la que no me puedo decidir

EvidenciaToda función efectivamente calculable se ha comprobado ser unamáquina de TuringTodos los métodos para obtener nuevas funciones efectivamentecalculables tienen un equivalente en máquina de TuringTodos los intentos de formalizar la noción intuitiva de efectivamentecalculable han resultado en el mismo conjunto, recursivoenumerable

Page 6: La pregunta para la que no me puedo decidir

Otras formalizacionesCálculo lambdaGramática tipo 0Funciones parciales recursivasAlgoritmos PostForma canónica PostAlgoritmos de Markov

Page 7: La pregunta para la que no me puedo decidir

VariacionesTodas las funciones físicas computables son Turing-computableUna máquina probabilistica de Turing puede simular eficientementecualquier modelo razonable de computaciónMáquinas razonables pueden simularse las unas a las otras con unexceso polinomial en tiempo y un factor constante en espacioUna máquina de Turing cuántica puede simular eficientementecualquier modelo realista de computación

Page 8: La pregunta para la que no me puedo decidir

Problemas computables, REProblemas no computables, NRE, Ld

Page 9: La pregunta para la que no me puedo decidir

Lenguaje Gramática Máquina Ejemplo

No RE -- --

Tipo 0 ( )

Máquina de Turing,APDo, AC

/ ,

Tipo 1 ( )

Autómata lineal confronteras

Tipo 2 ( )

Autómata de pila

Tipo 3 ( )

Autómata finito

Ld

/LRE LRec

α → βLu Ln Lf̄

LDC

αV β → αγβww, anbncn

LLC

V → αw ,wr anbn

Lreg

V → aA|ϵw, a∗

Page 10: La pregunta para la que no me puedo decidir

Lenguajes decidibles

Page 11: La pregunta para la que no me puedo decidir

MT Verdadero

FalsoW

Page 12: La pregunta para la que no me puedo decidir

Suma¿Dado dos número en notación unaria, veri�car que sepuedan sumar?

Los sumamos

Muy fácil, O(n + m)

Page 13: La pregunta para la que no me puedo decidir

Verificación de suma¿Dado tres números en notación unaria, veri�car que elúltimo sea la suma de los dos primeros?

Los sumamos y comprobamos que sean el mismo valor

Muy fácil, O(n + m)

Page 14: La pregunta para la que no me puedo decidir

Multiplicación¿Dado dos número en notación unaria, veri�car que sepuedan multiplicar?

Los multiplicamos

Más o menos fácil, (naive)O(n ∗ m)

Page 15: La pregunta para la que no me puedo decidir

Verificación de multiplicación¿Dado tres número en notación unaria, veri�car que el últimosea producto de los dos primeros?

Los multiplicamos y comprobamos que sean el mismo valor

Más o menos fácil, (naive)O(n ∗ m)

Page 16: La pregunta para la que no me puedo decidir

Verificar número primos¿Dado un número en notación unaria, es primo?

Dividir número entre factores de hasta 2 n√

¡Más o meno algo de tiempo! O( )n√

Page 17: La pregunta para la que no me puedo decidir

Identificar factores¿Dado un número en notación unaria, identi�car si esdivisible entre dos factores primos?

Encontrar un par de primos menores a que produzcan elnúmero n

n

¡Más di�cil! O( )n∗ n)(√

log(n)2

Page 18: La pregunta para la que no me puedo decidir

Verificación factor¿Dado tres número en notación unaria, veri�car que el últimosea el producto de los dos primeros?

Los multiplicamos y comprobamos que sean el mismo valor

Más o menos fácil, (naive)O(n ∗ m)

Page 19: La pregunta para la que no me puedo decidir

Sacar un elemento de un arreglo Sacar un elemento de un ábol B Verificar que mi usuario esté en la base de datos

O(n)O(log(n))

O(n)

Page 20: La pregunta para la que no me puedo decidir

Nuestro talón de aquiles comienza con que el complementode decidibles son decidibles

Page 21: La pregunta para la que no me puedo decidir

Lenguajes no decidibles

Page 22: La pregunta para la que no me puedo decidir

Problema del paroExiste una máquina de Turing que pueda tomar cualquiermáquina y una entrada y pueda determinar si elprograma para.

Mh

M w

La respuesta es NO

Page 23: La pregunta para la que no me puedo decidir

T F F T F

F F F F F

T T T T T

F T F F F

T F T F F

M i0 i1 i2 i3 i4 …j0 …j1 …j2 …j3 …j4 …… … … … … … …

Cualquiera recursiva/decidibleM(i, j)

Page 24: La pregunta para la que no me puedo decidir

La función computable (nodecidible)

(i) = {Mg0loop

si M(i, i) = 0otherwise

Sabemos que es computable

Page 25: La pregunta para la que no me puedo decidir

Definición de halt

(M, w) = {Mh10

si M para con entrada wotherwise

Page 26: La pregunta para la que no me puedo decidir

Dos opciones¿Qué de�ne a ?M Mh

Si entonces , entonces M( , ) = 0Mg Mg ( ) = 0Mg Mg

( , ) = 1Mh Mg Mg

Si entonces loops, entonces M( , ) = 1Mg Mg ( )Mg Mg

( , ) = 0Mh Mg Mg

No hay una que que corresponda con para elprograma

M Mh

Mg

Page 27: La pregunta para la que no me puedo decidir

Uno de los primeros problemas descubiertos ser nodecidibles

Es común transformar problemas al problema de paro parademostrar que también son no decidibles

Page 28: La pregunta para la que no me puedo decidir

Teorema de RiceToda propiedad no trivial de los lenguajes RE es indecidible

Todo conjunto de lenguajes de RE es una propiedad y RE son propiedades triviales∅

Page 29: La pregunta para la que no me puedo decidir

El conjunto de que regresan verdadero para toda El conjunto de que no aceptan al lenguaje vacioEl conjunto de que corresponde a un lenguajes libres decontexto

M wMM

Page 30: La pregunta para la que no me puedo decidir

La app va a vigilarmeLa app va alentar mi celularLa app va a pasmarse

Page 31: La pregunta para la que no me puedo decidir
Page 32: La pregunta para la que no me puedo decidir

No recursivamente enumerables

Page 33: La pregunta para la que no me puedo decidir

Nuestro talón de aquiles continua con que hay problemaspara los cuales no hay una MT

Page 34: La pregunta para la que no me puedo decidir

y son Rec y no en RE

y no en RE

L L¯ ¯¯̄

L L¯ ¯¯̄

L ∈ RE ⋂ R¯ ¯¯̄

L¯ ¯¯̄

Page 35: La pregunta para la que no me puedo decidir

Los complementos de REh = {[M, w]|w ∈ L(M) y para}

= {[M, w]|w ∈ L(M)no para si M  es una máquina de Turing oh¯¯̄

M  no es una Máquina de Turing

Page 36: La pregunta para la que no me puedo decidir

El conjunto de que regresan falso para toda o no es unaMTEl conjunto de que aceptan al lenguaje vacio o no es una MTEl conjunto de que corresponde a los lenguajes no son libres decontexto o no es una MT

M w M

M MM

M

Page 37: La pregunta para la que no me puedo decidir

La app no va a vigilarmeLa app no va alentar mi celularLa app no va a pasmarse

Page 38: La pregunta para la que no me puedo decidir

Lenguaje Gramática Máquina Ejemplo

No RE -- --

Tipo 0 ( )

Máquina de Turing,APDo, AC

/ ,

Tipo 1 ( )

Autómata lineal confronteras

Tipo 2 ( )

Autómata de pila

Tipo 3 ( )

Autómata finito

, ,Ld Lh Lh̄

/LRE LRec

α → βLu Ln Lf̄

LDC

αV β → αγβww, anbncn

LLC

V → αw ,wr anbn

Lreg

V → aA|ϵw, a∗

Page 39: La pregunta para la que no me puedo decidir

[email protected] ivanvladimir.github.io ivanvladimir

La pregunta para la que no me puedo decidir by islicensed under a

. Creado a partir de la obra en

.

Ivan V. Meza RuizCreative Commons Reconocimiento 4.0Internacional License

http://turing.iimas.unam.mx/~ivanvladimir/slides/lfya/problems.html