Problemas, problemas y más problemas

39
Problemas, problemas, problemas I've got 99 problems and 3-SAT reduces to all of them..— Reddit Ivan Meza

Transcript of Problemas, problemas y más problemas

Page 1: Problemas, problemas y más problemas

Problemas, problemas,problemas

I've got 99 problems and 3-SAT reduces to all of them..—Reddit

Ivan Meza

Page 2: Problemas, problemas y más problemas

ReducciónUn problema se reduce a , A B A ≤ B

Page 3: Problemas, problemas y más problemas

Función de reducciónUna función

se reduce a si si y sólo si Sí entonces Sí entonces

f(w)A B w ∈ A f(w) ∈ B

w ∈ A f(w) ∈ Bw ∉ A f(w) ∉ B

Page 4: Problemas, problemas y más problemas

Pequeño problemaConsiderar y reducir a LD 0∗1∗

Sí entonces Sí entonces

w ∈ LD f(w) = 01w ∉ LD f(w) = 10

¿Entonces reducimos a regular?LD

tiene que ser computablef

Page 5: Problemas, problemas y más problemas

Reducción

Verdadero

Falso

W calcular f f(w) Máquina B

R

Page 6: Problemas, problemas y más problemas

Máquina RCon la entrada w

Calcular Correr en Si acepta , entonces aceptar Si rechaza , entonces rechazar

f(w)MB f(w)

MB f(w) wMB f(w) w

Notación , es reducible a A B≤M A B

Page 7: Problemas, problemas y más problemas

PropiedadesSi A, entonces Si A,B y C entonces y entonces

A ≤ BA ≤ B B ≤ C A ≤ C

Informalemente, A no es más difícil que B

Page 8: Problemas, problemas y más problemas

Reducciones famosas

donde donde

donde donde

HALT ≤ Lu

≤ HALTLu

HALT ≤ DECIDER {m|is a decider}≤ ONESLu {m|m acepta w con forma  }1n

≤ ONLY ONESLd {m|L(m) ⊆ }1∗

≤Ld ONLY ONES¯ ¯¯̄¯̄¯̄ ¯̄¯̄¯̄¯̄ ¯̄¯̄¯̄ ¯̄¯̄¯̄¯̄ {m|L(m) ⊈ }1∗

Page 9: Problemas, problemas y más problemas

OpcionesSi A B≤M

Si es decidible, entonces lo esSi es computable, entonces lo esSi es indecidible, entonces lo esSi es no es computable (no RE), entonces lo es

B AB AA BA B

Page 10: Problemas, problemas y más problemas

Dónde quedan en la jerarquíaextendida

donde donde

donde donde

HALT ≤ Lu

≤ HALTLu

HALT ≤ DECIDER {m|is a decider}≤ ONESLu {m|m acepta w con forma  }1n

≤ ONLY ONESLd {m|L(m) ⊆ }1∗

≤Lu ONLY ONES¯ ¯¯̄¯̄¯̄ ¯̄¯̄¯̄¯̄ ¯̄¯̄¯̄ ¯̄¯̄¯̄¯̄ {m|L(m) ⊈ }1∗

Page 11: Problemas, problemas y más problemas

El poder de tener la respuesta si me dan una respuesta válida , es fácil de checar si me dan una inválida , no es tan fácil de checar

(loop) si me dan una respuesta inválida , es fácil

de checar si me dan una respuesta válida , no es fácil

de checar (loop)

ONES m, 1n

ONES m, 1n

ONLY ONES¯ ¯¯̄¯̄¯̄ ¯̄¯̄¯̄¯̄ ¯̄¯̄¯̄ ¯̄¯̄¯̄¯̄

m, ≠ 1n

ONLY ONES¯ ¯¯̄¯̄¯̄ ¯̄¯̄¯̄¯̄ ¯̄¯̄¯̄ ¯̄¯̄¯̄¯̄

m, 1n

Page 12: Problemas, problemas y más problemas

RE y co-RERE es el conjunto de lenguajes reconocidos por una máquinade Turing

Problemas para los cuales veri�camos una respuesta correcta

co-RE es el conjunto de lenguajes cuyos complementso sonreconocidos por una máquina de Turing

Problemas para los cuales veri�camos una respuestaincorrecta

Page 13: Problemas, problemas y más problemas

RE y co-RESi y , entonces Si y , entonces Si y , entonces Si y , entonces

L ∈ RE ∈ REL¯ ¯¯̄

L ∈ Rec

L ∈ RE ∈ coREL¯ ¯¯̄

L ∈ RecL ∉ R L ∈ RE L ∉ co − REL ∉ R L ∈ co − RE L ∉ RE

Page 14: Problemas, problemas y más problemas

¿Qué sabemos de este lenguaje?

REGULAR = {[M]|L(M) es regular}

Page 15: Problemas, problemas y más problemas

REGULARLD ≤M

REGULAR es no RE, pero

REGULARLD¯ ¯¯̄¯̄¯ ≤M

Page 16: Problemas, problemas y más problemas

y afuera de los límites de locomputableREGULAR REGULAR

¯ ¯¯̄¯̄ ¯̄¯̄¯̄¯̄¯̄¯̄¯̄¯̄¯̄¯̄

Page 17: Problemas, problemas y más problemas

¿Otro afuera?

E = {[ , ]|L( ) = L( )}QTM M1 M2 M1 M2

Page 18: Problemas, problemas y más problemas

Lenguaje Gramática Máquina Ejemplo

Másalla/No RE

-- --

co-RE/NoRE

-- --

Tipo 0 ( )

MáquinadeTuring,APDo, AC

Tipo 1 ( )

Autómatalineal confronteras

Tipo 2 ( )

Autómatade pila

Tipo 3 ( )

Autómatafinito

REGULAR, REGULAR¯̄¯̄¯̄¯̄¯̄ ¯̄¯̄¯̄¯̄¯̄¯̄¯̄¯

, , , ONLY OLu¯ ¯¯̄¯̄

LD ONES¯ ¯¯̄¯̄¯̄¯̄ ¯̄¯̄¯

/LRE LRec

α → β, , ONES,Lu LD

¯ ¯¯̄¯̄¯ONLY O¯̄¯̄¯̄¯̄¯̄ ¯̄¯̄¯̄¯̄

LDC

αV β → αγβww, anbncn

LLC

V → αw ,wr anbn

Lreg

V → aA|ϵw, a∗

Page 19: Problemas, problemas y más problemas

( ) finitoV → aA|ϵ

Resumen: Church-Turing tesisRec: problemas que pueden ser calculados por una computadoraRE: problemas donde respuestas pueden ser verificados por unacomputadoraco-RE: problemas donde respuestas pueden ser refutadas por unacomputadora

Page 20: Problemas, problemas y más problemas

Fijandonos en los decidables¿Es posible resolver un problema eficientemente?

E�ciencia se mide en número de pasos/tiempo

Page 21: Problemas, problemas y más problemas

Tipos de complejidadesContante Log log Logarítmica Raiz cuadrática Polinómica Polinómica Log Polinómica cuadrada Exponencial log Exponencial Factorial

O(1)O(log(n)log(n))

O(log(n))O( )n√

O(n)O(nlog(n))

O( )n2

O( )2log(n)

O( )2n

O(n!)

Page 22: Problemas, problemas y más problemas

Tesis de Cobham-EdmondsUn lenguaje puede ser resuelto e�cientemente si se decideen tiempo polinómico

L

Page 23: Problemas, problemas y más problemas

Clase de PTodos los problemas que se pueden resolver en en tiempopolinomial

Page 24: Problemas, problemas y más problemas

EjemplosReconocer de un AF, AFND y AFND-Reconocer de un APDReconocer de un AP (!Compiladores!)¿Dado un grafo y dos nodos, estos se conectan?¿Dado un número es primo?Etc, ...

w ϵww

n

Page 25: Problemas, problemas y más problemas

Clase de NPTodos los problemas que se pueden resolver en en tiempopolinomial por una MTND

NP es No determinístico en tiempo polinomial

Page 26: Problemas, problemas y más problemas

Máquinas de TuringEs una tupla (Q, Σ, Γ, , B, A, δ)q0

conjunto finito de estados alfabeto de cadenas reconocidas alfabeto de cinta, estado inicial Símbolo de espacio en blanco pero estados finales

función de transición

QΣΓ Σ ⊂ Γq0B B ∈ Γ B ∉ ΣAδ Q × Γ → Q × Γ × {der, izq}

Page 27: Problemas, problemas y más problemas

Máquinas de Turing nodeterminísticaEs una tupla (Q, Σ, Γ, , B, A, δ)q0

conjunto finito de estados alfabeto de cadenas reconocidas alfabeto de cinta, estado inicial Símbolo de espacio en blanco pero estados finales

función de transición

QΣΓ Σ ⊂ Γq0B B ∈ Γ B ∉ ΣAδ Q × Γ → {Q × Γ × {der, izq}}

Page 28: Problemas, problemas y más problemas

Uso el no determinismo para adivinar respuestas

Uso el determinismo para veri�car la respuesta

Problemas fáciles de veri�car

Page 29: Problemas, problemas y más problemas

Ejemplos de NPSodukoEl problema del agente de viajeUn grafo puede ser coloreado por coloresDeterminar la mejor forma de asignar trabajos a trabajadores

k

Page 30: Problemas, problemas y más problemas

La pregunta más importante encomputación¿ ? o ¿ ?P = NP P ≠ NP

Page 31: Problemas, problemas y más problemas

El cuarto problema de los problemas de Millenium

Solucción vale un millón de dolares

Descrito en 1971

Page 32: Problemas, problemas y más problemas

NP-hardInformalmente, son los problemas que son tan difíciles comoel más difícil en NP

Formalmente, son los problemas que son tan difíciles como elmás difícil en NP

Page 33: Problemas, problemas y más problemas

NP-complete

Intercección NP y NP-hard

Page 34: Problemas, problemas y más problemas

Ejemplos

Satisfacción Lógica ProposicionalDe un conjunto de números podemos encontrar un conjunto quesume zero

Page 35: Problemas, problemas y más problemas

Ejemplos

NP-completeHalting problem

Page 36: Problemas, problemas y más problemas

Si y , entonces L ∈ NP-complete L ∈ P P = NP

Page 37: Problemas, problemas y más problemas

¿Como resolvemos estos problemas?

AproximaciónAleatoriidadUso de restriccionesParametrizaciónHeurísticas

Page 38: Problemas, problemas y más problemas

Para mayor información visitar el zoológico aquí

Page 39: Problemas, problemas y más problemas

[email protected] ivanvladimir.github.io ivanvladimir

Problemas, problemas, problemas by is licensedunder a

. Creado a partir de la obra en

.

Ivan V. Meza RuizCreative Commons Reconocimiento 4.0 Internacional

License

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