• Nie Znaleziono Wyników

Redukcje wielomianowe

N/A
N/A
Protected

Academic year: 2021

Share "Redukcje wielomianowe"

Copied!
84
0
0

Pełen tekst

(1)

Redukcje wielomianowe

Marcin Pilipczuk

Algorytmika @ Uniwersytet Warszawski

30 marca 2020

Marcin Pilipczuk Redukcje wielomianowe 1/15

(2)

Plan na dziś

Dziś o pokazywaniu, że czegoś się nie da zrobić.

... tj. nie istnieje algorytm, który rozwiązuje A w czasie T ... tj. chyba nie istnieje algorytm, który rozwiązuje A w czasie T ... tj. mam całkiem niezłe argumenty, że chyba nie istnieje algorytm, który rozwiązuje A w czasie T

Dziś dowód przez autorytet: 3-kolorowania nie da się rozwiązać w czasie wielomianowym od rozmiaru grafu.

Marcin Pilipczuk Redukcje wielomianowe 2/15

(3)

Plan na dziś

Dziś o pokazywaniu, że czegoś się nie da zrobić.

... tj. nie istnieje algorytm, który rozwiązuje A w czasie T

... tj. chyba nie istnieje algorytm, który rozwiązuje A w czasie T ... tj. mam całkiem niezłe argumenty, że chyba nie istnieje algorytm, który rozwiązuje A w czasie T

Dziś dowód przez autorytet: 3-kolorowania nie da się rozwiązać w czasie wielomianowym od rozmiaru grafu.

Marcin Pilipczuk Redukcje wielomianowe 2/15

(4)

Plan na dziś

Dziś o pokazywaniu, że czegoś się nie da zrobić.

... tj. nie istnieje algorytm, który rozwiązuje A w czasie T ... tj. chyba nie istnieje algorytm, który rozwiązuje A w czasie T

... tj. mam całkiem niezłe argumenty, że chyba nie istnieje algorytm, który rozwiązuje A w czasie T

Dziś dowód przez autorytet: 3-kolorowania nie da się rozwiązać w czasie wielomianowym od rozmiaru grafu.

Marcin Pilipczuk Redukcje wielomianowe 2/15

(5)

Plan na dziś

Dziś o pokazywaniu, że czegoś się nie da zrobić.

... tj. nie istnieje algorytm, który rozwiązuje A w czasie T ... tj. chyba nie istnieje algorytm, który rozwiązuje A w czasie T ... tj. mam całkiem niezłe argumenty, że chyba nie istnieje algorytm, który rozwiązuje A w czasie T

Dziś dowód przez autorytet: 3-kolorowania nie da się rozwiązać w czasie wielomianowym od rozmiaru grafu.

Marcin Pilipczuk Redukcje wielomianowe 2/15

(6)

Plan na dziś

Dziś o pokazywaniu, że czegoś się nie da zrobić.

... tj. nie istnieje algorytm, który rozwiązuje A w czasie T ... tj. chyba nie istnieje algorytm, który rozwiązuje A w czasie T ... tj. mam całkiem niezłe argumenty, że chyba nie istnieje algorytm, który rozwiązuje A w czasie T

Dziś dowód przez autorytet: 3-kolorowania nie da się rozwiązać w czasie wielomianowym od rozmiaru grafu.

Marcin Pilipczuk Redukcje wielomianowe 2/15

(7)

3-kolorowanie

3-kolorowanie

Wejście: graf nieskierowany G , n := |V (G )|

Wyjście: Czy istnieje 3-kolorowanie G , tj. funkcja

f : V (G ) → {red ,green,blue} taka, że dla każdej uv ∈ E (G ) mamy f (u) 6= f (v )? TAK/NIE

Próbowano znaleźć szybki algorytm, np. O(n), O(n2), O(n4)... Beigel, Eppstein: O(1.3289n).

Przez autorytet: nie istnieje algorytm A i wielomian f taki, że A, mając dany graf G , rozwiązuje problem 3-kolorowania G w czasie f (|V (G )|).

„3-kolorowania nie da się rozwiązać w czasie wielomianowym”

Marcin Pilipczuk Redukcje wielomianowe 3/15

(8)

3-kolorowanie

3-kolorowanie

Wejście: graf nieskierowany G , n := |V (G )|

Wyjście: Czy istnieje 3-kolorowanie G , tj. funkcja

f : V (G ) → {red ,green,blue} taka, że dla każdej uv ∈ E (G ) mamy f (u) 6= f (v )? TAK/NIE

Próbowano znaleźć szybki algorytm, np. O(n), O(n2), O(n4)... Beigel, Eppstein: O(1.3289n).

Przez autorytet: nie istnieje algorytm A i wielomian f taki, że A, mając dany graf G , rozwiązuje problem 3-kolorowania G w czasie f (|V (G )|).

„3-kolorowania nie da się rozwiązać w czasie wielomianowym”

Marcin Pilipczuk Redukcje wielomianowe 3/15

(9)

3-kolorowanie

3-kolorowanie

Wejście: graf nieskierowany G , n := |V (G )|

Wyjście: Czy istnieje 3-kolorowanie G , tj. funkcja

f : V (G ) → {red ,green,blue} taka, że dla każdej uv ∈ E (G ) mamy f (u) 6= f (v )? TAK/NIE

Próbowano znaleźć szybki algorytm, np. O(n), O(n2), O(n4)...

Beigel, Eppstein: O(1.3289n).

Przez autorytet: nie istnieje algorytm A i wielomian f taki, że A, mając dany graf G , rozwiązuje problem 3-kolorowania G w czasie f (|V (G )|).

„3-kolorowania nie da się rozwiązać w czasie wielomianowym”

Marcin Pilipczuk Redukcje wielomianowe 3/15

(10)

3-kolorowanie

3-kolorowanie

Wejście: graf nieskierowany G , n := |V (G )|

Wyjście: Czy istnieje 3-kolorowanie G , tj. funkcja

f : V (G ) → {red ,green,blue} taka, że dla każdej uv ∈ E (G ) mamy f (u) 6= f (v )? TAK/NIE

Próbowano znaleźć szybki algorytm, np. O(n), O(n2), O(n4)...

Beigel, Eppstein: O(1.3289n).

Przez autorytet: nie istnieje algorytm A i wielomian f taki, że A, mając dany graf G , rozwiązuje problem 3-kolorowania G w czasie f (|V (G )|).

„3-kolorowania nie da się rozwiązać w czasie wielomianowym”

Marcin Pilipczuk Redukcje wielomianowe 3/15

(11)

3-kolorowanie

3-kolorowanie

Wejście: graf nieskierowany G , n := |V (G )|

Wyjście: Czy istnieje 3-kolorowanie G , tj. funkcja

f : V (G ) → {red ,green,blue} taka, że dla każdej uv ∈ E (G ) mamy f (u) 6= f (v )? TAK/NIE

Próbowano znaleźć szybki algorytm, np. O(n), O(n2), O(n4)...

Beigel, Eppstein: O(1.3289n).

Przez autorytet: nie istnieje algorytm A i wielomian f taki, że A, mając dany graf G , rozwiązuje problem 3-kolorowania G w czasie f (|V (G )|).

„3-kolorowania nie da się rozwiązać w czasie wielomianowym”

Marcin Pilipczuk Redukcje wielomianowe 3/15

(12)

3-kolorowanie

3-kolorowanie

Wejście: graf nieskierowany G , n := |V (G )|

Wyjście: Czy istnieje 3-kolorowanie G , tj. funkcja

f : V (G ) → {red ,green,blue} taka, że dla każdej uv ∈ E (G ) mamy f (u) 6= f (v )? TAK/NIE

Próbowano znaleźć szybki algorytm, np. O(n), O(n2), O(n4)...

Beigel, Eppstein: O(1.3289n).

Przez autorytet: nie istnieje algorytm A i wielomian f taki, że A, mając dany graf G , rozwiązuje problem 3-kolorowania G w czasie f (|V (G )|).

„3-kolorowania nie da się rozwiązać w czasie wielomianowym”

Marcin Pilipczuk Redukcje wielomianowe 3/15

(13)

Zbiór niezależny

A co z innymi problemami?

Zbiór niezależny

Wejście: graf G , liczba naturalna k.

Wyjście: czy istnieje zbiór A ⊆ V (G ), taki, że |A| = k oraz nie istnieje uv ∈ E (G ), że u, v ∈ A?

A może ten problem jest trudniejszy?

Też nie umiemy go szybko rozwiązać... (O(1.221n)).

Redukcje: sposób na pokazanie, że jeden problem jest nieprostszy od drugiego.

Następny slajd: zbiór niezależny jest nieprostszy od 3-kolorowania.

Marcin Pilipczuk Redukcje wielomianowe 4/15

(14)

Zbiór niezależny

A co z innymi problemami?

Zbiór niezależny

Wejście: graf G , liczba naturalna k.

Wyjście: czy istnieje zbiór A ⊆ V (G ), taki, że |A| = k oraz nie istnieje uv ∈ E (G ), że u, v ∈ A?

A może ten problem jest trudniejszy?

Też nie umiemy go szybko rozwiązać... (O(1.221n)).

Redukcje: sposób na pokazanie, że jeden problem jest nieprostszy od drugiego.

Następny slajd: zbiór niezależny jest nieprostszy od 3-kolorowania.

Marcin Pilipczuk Redukcje wielomianowe 4/15

(15)

Zbiór niezależny

A co z innymi problemami?

Zbiór niezależny

Wejście: graf G , liczba naturalna k.

Wyjście: czy istnieje zbiór A ⊆ V (G ), taki, że |A| = k oraz nie istnieje uv ∈ E (G ), że u, v ∈ A?

A może ten problem jest trudniejszy?

Też nie umiemy go szybko rozwiązać... (O(1.221n)).

Redukcje: sposób na pokazanie, że jeden problem jest nieprostszy od drugiego.

Następny slajd: zbiór niezależny jest nieprostszy od 3-kolorowania.

Marcin Pilipczuk Redukcje wielomianowe 4/15

(16)

Zbiór niezależny

A co z innymi problemami?

Zbiór niezależny

Wejście: graf G , liczba naturalna k.

Wyjście: czy istnieje zbiór A ⊆ V (G ), taki, że |A| = k oraz nie istnieje uv ∈ E (G ), że u, v ∈ A?

A może ten problem jest trudniejszy?

Też nie umiemy go szybko rozwiązać... (O(1.221n)).

Redukcje: sposób na pokazanie, że jeden problem jest nieprostszy od drugiego.

Następny slajd: zbiór niezależny jest nieprostszy od 3-kolorowania.

Marcin Pilipczuk Redukcje wielomianowe 4/15

(17)

Zbiór niezależny

A co z innymi problemami?

Zbiór niezależny

Wejście: graf G , liczba naturalna k.

Wyjście: czy istnieje zbiór A ⊆ V (G ), taki, że |A| = k oraz nie istnieje uv ∈ E (G ), że u, v ∈ A?

A może ten problem jest trudniejszy?

Też nie umiemy go szybko rozwiązać... (O(1.221n)).

Redukcje: sposób na pokazanie, że jeden problem jest nieprostszy od drugiego.

Następny slajd: zbiór niezależny jest nieprostszy od 3-kolorowania.

Marcin Pilipczuk Redukcje wielomianowe 4/15

(18)

Zbiór niezależny

A co z innymi problemami?

Zbiór niezależny

Wejście: graf G , liczba naturalna k.

Wyjście: czy istnieje zbiór A ⊆ V (G ), taki, że |A| = k oraz nie istnieje uv ∈ E (G ), że u, v ∈ A?

A może ten problem jest trudniejszy?

Też nie umiemy go szybko rozwiązać... (O(1.221n)).

Redukcje: sposób na pokazanie, że jeden problem jest nieprostszy od drugiego.

Następny slajd: zbiór niezależny jest nieprostszy od 3-kolorowania.

Marcin Pilipczuk Redukcje wielomianowe 4/15

(19)

Zbiór niezależny

A co z innymi problemami?

Zbiór niezależny

Wejście: graf G , liczba naturalna k.

Wyjście: czy istnieje zbiór A ⊆ V (G ), taki, że |A| = k oraz nie istnieje uv ∈ E (G ), że u, v ∈ A?

A może ten problem jest trudniejszy?

Też nie umiemy go szybko rozwiązać... (O(1.221n)).

Redukcje: sposób na pokazanie, że jeden problem jest nieprostszy od drugiego.

Następny slajd: zbiór niezależny jest nieprostszy od 3-kolorowania.

Marcin Pilipczuk Redukcje wielomianowe 4/15

(20)

3-kolorowanie −→ zbiór niezależny

Bob

n = |V (G )| m = |E (G )|

Alicja

umie w zbiór niezależny

k = n czas O(n + m)

3n wierzchołków, 3n + 3m krawędzi

Marcin Pilipczuk Redukcje wielomianowe 5/15

(21)

3-kolorowanie −→ zbiór niezależny

Bob

n = |V (G )|

m = |E (G )|

Alicja

umie w zbiór niezależny

k = n czas O(n + m)

3n wierzchołków, 3n + 3m krawędzi

Marcin Pilipczuk Redukcje wielomianowe 5/15

(22)

3-kolorowanie −→ zbiór niezależny

Bob

n = |V (G )|

m = |E (G )|

Alicja

umie w zbiór niezależny

k = n czas O(n + m)

3n wierzchołków, 3n + 3m krawędzi

Marcin Pilipczuk Redukcje wielomianowe 5/15

(23)

3-kolorowanie −→ zbiór niezależny

Bob

n = |V (G )|

m = |E (G )|

Alicja

umie w zbiór niezależny

k = n

czas O(n + m)

3n wierzchołków, 3n + 3m krawędzi

Marcin Pilipczuk Redukcje wielomianowe 5/15

(24)

3-kolorowanie −→ zbiór niezależny

Bob

n = |V (G )|

m = |E (G )|

Alicja

umie w zbiór niezależny

k = n

czas O(n + m)

3n wierzchołków, 3n + 3m krawędzi

Marcin Pilipczuk Redukcje wielomianowe 5/15

(25)

3-kolorowanie −→ zbiór niezależny

Bob

n = |V (G )|

m = |E (G )|

Alicja

umie w zbiór niezależny

k = n

czas O(n + m)

3n wierzchołków, 3n + 3m krawędzi

Marcin Pilipczuk Redukcje wielomianowe 5/15

(26)

3-kolorowanie −→ zbiór niezależny

Bob

n = |V (G )|

m = |E (G )|

Alicja

umie w zbiór niezależny

k = n czas O(n + m)

3n wierzchołków, 3n + 3m krawędzi

Marcin Pilipczuk Redukcje wielomianowe 5/15

(27)

Redukcja wielomianowa

Bob

Egzemplarz problemu A wielkości n

rozwiązany!

Alicja umie w problem B

Równoważny egzemplarz problemu B

rozwiązany! czas poly(n)

wielkość poly(n)

1. Konstrukcja Boba. 2. Bob ⇒ Alicja. 3. Alicja ⇒ Bob.

Marcin Pilipczuk Redukcje wielomianowe 6/15

(28)

Redukcja wielomianowa

Bob

Egzemplarz problemu A wielkości n

rozwiązany!

Alicja umie w problem B

Równoważny egzemplarz problemu B

rozwiązany! czas poly(n)

wielkość poly(n)

1. Konstrukcja Boba. 2. Bob ⇒ Alicja. 3. Alicja ⇒ Bob.

Marcin Pilipczuk Redukcje wielomianowe 6/15

(29)

Redukcja wielomianowa

Bob

Egzemplarz problemu A wielkości n

rozwiązany!

Alicja umie w problem B

Równoważny egzemplarz problemu B

rozwiązany! czas poly(n)

wielkość poly(n)

1. Konstrukcja Boba. 2. Bob ⇒ Alicja. 3. Alicja ⇒ Bob.

Marcin Pilipczuk Redukcje wielomianowe 6/15

(30)

Redukcja wielomianowa

Bob

Egzemplarz problemu A wielkości n

rozwiązany!

Alicja umie w problem B

Równoważny egzemplarz problemu B

rozwiązany!

czas poly(n)

wielkość poly(n)

1. Konstrukcja Boba. 2. Bob ⇒ Alicja. 3. Alicja ⇒ Bob.

Marcin Pilipczuk Redukcje wielomianowe 6/15

(31)

Redukcja wielomianowa

Bob

Egzemplarz problemu A wielkości n

rozwiązany!

Alicja umie w problem B

Równoważny egzemplarz problemu B

rozwiązany!

czas poly(n)

wielkość poly(n)

1. Konstrukcja Boba. 2. Bob ⇒ Alicja. 3. Alicja ⇒ Bob.

Marcin Pilipczuk Redukcje wielomianowe 6/15

(32)

Redukcja wielomianowa

Bob

Egzemplarz problemu A wielkości n

rozwiązany!

Alicja umie w problem B

Równoważny egzemplarz problemu B

rozwiązany!

czas poly(n)

wielkość poly(n)

1. Konstrukcja Boba. 2. Bob ⇒ Alicja. 3. Alicja ⇒ Bob.

Marcin Pilipczuk Redukcje wielomianowe 6/15

(33)

Redukcja wielomianowa

Bob

Egzemplarz problemu A wielkości n

rozwiązany!

Alicja umie w problem B

Równoważny egzemplarz problemu B

rozwiązany!

czas poly(n)

wielkość poly(n)

1. Konstrukcja Boba.

2. Bob ⇒ Alicja.

3. Alicja ⇒ Bob.

Marcin Pilipczuk Redukcje wielomianowe 6/15

(34)

Dalsze redukcje

3-kolorowanie

zbiór niezależny

G 7→ ¯G ` := n − k

klika

Wejście: graf G , liczba naturalna k.

Wyjście: czy istnieje A ⊆ V (G ),

|A| = k, G [A] to klika?

pokrycie wierzchołkowe

Wejście: graf G , liczba naturalna `.

Wyjście: czy istnieje B ⊆ V (G ),

|B| ¬ `, każda krawędź G ma co najmniej jeden koniec w B?

Marcin Pilipczuk Redukcje wielomianowe 7/15

(35)

Spełnialność formuł d -CNF-SAT

Instancja

n zmiennych x1, x2, . . . , xn

literały xi oraz ¯xi klauzula

C = (`1∨ `2∨ . . . ∨ `d0), d0¬ d np. (x1∨ x3∨ ¯x7)

formuła — koniunkcja klauzul Φ =Vm

j =1Cj

Wejście: Φ,

(n zmiennych, m klauzul)

Rozwiązanie wartościowanie

α : {x1, . . . , xn} → {>, ⊥}

α( ¯xi) 6= α(xi) α spełnia C ⇔

∃`i∈ C α(`i) = >

α spełnia Φ ⇔

∀Ci Φ spełnia Ci. Wyjście: czy istnieje α spełniające Φ?

Przykład:

Φ = (x1∨ x2∨ x3) ∧ (¯x2∨ ¯x3∨ x4) ∧ (¯x1∨ x3∨ ¯x4).

α(x1) = >, α(x2) = ⊥, α(x3) = ⊥, α(x4) = ⊥

Marcin Pilipczuk Redukcje wielomianowe 8/15

(36)

Spełnialność formuł d -CNF-SAT

Instancja

n zmiennych x1, x2, . . . , xn

literały xi oraz ¯xi

klauzula

C = (`1∨ `2∨ . . . ∨ `d0), d0¬ d np. (x1∨ x3∨ ¯x7)

formuła — koniunkcja klauzul Φ =Vm

j =1Cj

Wejście: Φ,

(n zmiennych, m klauzul)

Rozwiązanie wartościowanie

α : {x1, . . . , xn} → {>, ⊥}

α( ¯xi) 6= α(xi)

α spełnia C ⇔

∃`i∈ C α(`i) = >

α spełnia Φ ⇔

∀Ci Φ spełnia Ci. Wyjście: czy istnieje α spełniające Φ?

Przykład:

Φ = (x1∨ x2∨ x3) ∧ (¯x2∨ ¯x3∨ x4) ∧ (¯x1∨ x3∨ ¯x4).

α(x1) = >, α(x2) = ⊥, α(x3) = ⊥, α(x4) = ⊥

Marcin Pilipczuk Redukcje wielomianowe 8/15

(37)

Spełnialność formuł d -CNF-SAT

Instancja

n zmiennych x1, x2, . . . , xn

literały xi oraz ¯xi klauzula

C = (`1∨ `2∨ . . . ∨ `d0), d0¬ d np. (x1∨ x3∨ ¯x7)

formuła — koniunkcja klauzul Φ =Vm

j =1Cj

Wejście: Φ,

(n zmiennych, m klauzul)

Rozwiązanie wartościowanie

α : {x1, . . . , xn} → {>, ⊥}

α( ¯xi) 6= α(xi) α spełnia C ⇔

∃`i∈ C α(`i) = >

α spełnia Φ ⇔

∀Ci Φ spełnia Ci. Wyjście: czy istnieje α spełniające Φ?

Przykład:

Φ = (x1∨ x2∨ x3) ∧ (¯x2∨ ¯x3∨ x4) ∧ (¯x1∨ x3∨ ¯x4).

α(x1) = >, α(x2) = ⊥, α(x3) = ⊥, α(x4) = ⊥

Marcin Pilipczuk Redukcje wielomianowe 8/15

(38)

Spełnialność formuł d -CNF-SAT

Instancja

n zmiennych x1, x2, . . . , xn

literały xi oraz ¯xi klauzula

C = (`1∨ `2∨ . . . ∨ `d0), d0¬ d np. (x1∨ x3∨ ¯x7)

formuła — koniunkcja klauzul Φ =Vm

j =1Cj

Wejście: Φ,

(n zmiennych, m klauzul)

Rozwiązanie wartościowanie

α : {x1, . . . , xn} → {>, ⊥}

α( ¯xi) 6= α(xi) α spełnia C ⇔

∃`i∈ C α(`i) = >

α spełnia Φ ⇔

∀Ci Φ spełnia Ci.

Wyjście: czy istnieje α spełniające Φ?

Przykład:

Φ = (x1∨ x2∨ x3) ∧ (¯x2∨ ¯x3∨ x4) ∧ (¯x1∨ x3∨ ¯x4).

α(x1) = >, α(x2) = ⊥, α(x3) = ⊥, α(x4) = ⊥

Marcin Pilipczuk Redukcje wielomianowe 8/15

(39)

Spełnialność formuł d -CNF-SAT

Instancja

n zmiennych x1, x2, . . . , xn

literały xi oraz ¯xi klauzula

C = (`1∨ `2∨ . . . ∨ `d0), d0¬ d np. (x1∨ x3∨ ¯x7)

formuła — koniunkcja klauzul Φ =Vm

j =1Cj

Wejście: Φ,

(n zmiennych, m klauzul)

Rozwiązanie wartościowanie

α : {x1, . . . , xn} → {>, ⊥}

α( ¯xi) 6= α(xi) α spełnia C ⇔

∃`i∈ C α(`i) = >

α spełnia Φ ⇔

∀Ci Φ spełnia Ci. Wyjście: czy istnieje α spełniające Φ?

Przykład:

Φ = (x1∨ x2∨ x3) ∧ (¯x2∨ ¯x3∨ x4) ∧ (¯x1∨ x3∨ ¯x4).

α(x1) = >, α(x2) = ⊥, α(x3) = ⊥, α(x4) = ⊥

Marcin Pilipczuk Redukcje wielomianowe 8/15

(40)

Spełnialność formuł d -CNF-SAT

Instancja

n zmiennych x1, x2, . . . , xn

literały xi oraz ¯xi klauzula

C = (`1∨ `2∨ . . . ∨ `d0), d0¬ d np. (x1∨ x3∨ ¯x7)

formuła — koniunkcja klauzul Φ =Vm

j =1Cj

Wejście: Φ,

(n zmiennych, m klauzul)

Rozwiązanie wartościowanie

α : {x1, . . . , xn} → {>, ⊥}

α( ¯xi) 6= α(xi) α spełnia C ⇔

∃`i∈ C α(`i) = >

α spełnia Φ ⇔

∀Ci Φ spełnia Ci. Wyjście: czy istnieje α spełniające Φ?

Przykład:

Φ = (x1∨ x2∨ x3) ∧ (¯x2∨ ¯x3∨ x4) ∧ (¯x1∨ x3∨ ¯x4).

α(x1) = >, α(x2) = ⊥, α(x3) = ⊥, α(x4) = ⊥

Marcin Pilipczuk Redukcje wielomianowe 8/15

(41)

Spełnialność formuł d -CNF-SAT

Instancja

n zmiennych x1, x2, . . . , xn

literały xi oraz ¯xi klauzula

C = (`1∨ `2∨ . . . ∨ `d0), d0¬ d np. (x1∨ x3∨ ¯x7)

formuła — koniunkcja klauzul Φ =Vm

j =1Cj

Wejście: Φ,

(n zmiennych, m klauzul)

Rozwiązanie wartościowanie

α : {x1, . . . , xn} → {>, ⊥}

α( ¯xi) 6= α(xi) α spełnia C ⇔

∃`i∈ C α(`i) = >

α spełnia Φ ⇔

∀Ci Φ spełnia Ci. Wyjście: czy istnieje α spełniające Φ?

Przykład:

Φ = (x1∨ x2∨ x3) ∧ (¯x2∨ ¯x3∨ x4) ∧ (¯x1∨ x3∨ ¯x4).

α(x1) = >, α(x2) = ⊥, α(x3) = ⊥, α(x4) = ⊥

Marcin Pilipczuk Redukcje wielomianowe 8/15

(42)

Spełnialność formuł d -CNF-SAT

Instancja

n zmiennych x1, x2, . . . , xn

literały xi oraz ¯xi klauzula

C = (`1∨ `2∨ . . . ∨ `d0), d0¬ d np. (x1∨ x3∨ ¯x7)

formuła — koniunkcja klauzul Φ =Vm

j =1Cj

Wejście: Φ,

(n zmiennych, m klauzul)

Rozwiązanie wartościowanie

α : {x1, . . . , xn} → {>, ⊥}

α( ¯xi) 6= α(xi) α spełnia C ⇔

∃`i∈ C α(`i) = >

α spełnia Φ ⇔

∀Ci Φ spełnia Ci. Wyjście: czy istnieje α spełniające Φ?

Przykład:

Φ = (x1∨ x2∨ x3) ∧ (¯x23∨ x4) ∧ (¯x1∨ x34).

α(x1) = >, α(x2) = ⊥, α(x3) = ⊥, α(x4) = ⊥

Marcin Pilipczuk Redukcje wielomianowe 8/15

(43)

Trudność 3-CNF-SAT

Theorem (za moich czasów było na ASD)

Spełnialność formuł 2-CNF-SAT można sprawdzać w czasie O(n + m).

Teraz:

Sprawdzanie spełnialności formuł 3-CNF-SAT jest nieprostsze od 3-kolorowania.

Marcin Pilipczuk Redukcje wielomianowe 9/15

(44)

Trudność 3-CNF-SAT

Theorem (za moich czasów było na ASD)

Spełnialność formuł 2-CNF-SAT można sprawdzać w czasie O(n + m).

Teraz:

Sprawdzanie spełnialności formuł 3-CNF-SAT jest nieprostsze od 3-kolorowania.

Marcin Pilipczuk Redukcje wielomianowe 9/15

(45)

Trudność 3-CNF-SAT

3-kolorowanie

Spełnialność formuły 3-CNF-SAT

wierzchołek i −→ zmienne xir, xig, xib wierzchołek i −→ klauzula (xir∨ xig∨ xib) krawędź ij −→ klauzule (¯xir∨ ¯xjr) (¯xig∨ ¯xjg) (¯xib∨ ¯xjb) dla pedantów

wierzchołek i −→ klauzule (¯xir∨ ¯xig) (¯xig∨ ¯xib) (¯xib∨ ¯xir)

Marcin Pilipczuk Redukcje wielomianowe 10/15

(46)

Trudność 3-CNF-SAT

3-kolorowanie

Spełnialność formuły 3-CNF-SAT

wierzchołek i −→ zmienne xir, xig, xib

wierzchołek i −→ klauzula (xir∨ xig∨ xib) krawędź ij −→ klauzule (¯xir∨ ¯xjr) (¯xig∨ ¯xjg) (¯xib∨ ¯xjb) dla pedantów

wierzchołek i −→ klauzule (¯xir∨ ¯xig) (¯xig∨ ¯xib) (¯xib∨ ¯xir)

Marcin Pilipczuk Redukcje wielomianowe 10/15

(47)

Trudność 3-CNF-SAT

3-kolorowanie

Spełnialność formuły 3-CNF-SAT

wierzchołek i −→ zmienne xir, xig, xib wierzchołek i −→ klauzula (xir∨ xig∨ xib)

krawędź ij −→ klauzule (¯xir∨ ¯xjr) (¯xig∨ ¯xjg) (¯xib∨ ¯xjb) dla pedantów

wierzchołek i −→ klauzule (¯xir∨ ¯xig) (¯xig∨ ¯xib) (¯xib∨ ¯xir)

Marcin Pilipczuk Redukcje wielomianowe 10/15

(48)

Trudność 3-CNF-SAT

3-kolorowanie

Spełnialność formuły 3-CNF-SAT

wierzchołek i −→ zmienne xir, xig, xib wierzchołek i −→ klauzula (xir∨ xig∨ xib) krawędź ij −→ klauzule (¯xir∨ ¯xjr) (¯xig∨ ¯xjg) (¯xib∨ ¯xjb)

dla pedantów

wierzchołek i −→ klauzule (¯xir∨ ¯xig) (¯xig∨ ¯xib) (¯xib∨ ¯xir)

Marcin Pilipczuk Redukcje wielomianowe 10/15

(49)

Trudność 3-CNF-SAT

3-kolorowanie

Spełnialność formuły 3-CNF-SAT

wierzchołek i −→ zmienne xir, xig, xib wierzchołek i −→ klauzula (xir∨ xig∨ xib) krawędź ij −→ klauzule (¯xir∨ ¯xjr) (¯xig∨ ¯xjg) (¯xib∨ ¯xjb) dla pedantów

wierzchołek i −→ klauzule (¯xir∨ ¯xig) (¯xig∨ ¯xib) (¯xib∨ ¯xir)

Marcin Pilipczuk Redukcje wielomianowe 10/15

(50)

Ścieżka Hamiltona

Ścieżka Hamiltona

Wejście: graf skierowany G , wyróżnione s, t ∈ V (G )

Wyjście: czy istnieje ścieżka w G z końcami s i t, odwiedzająca każdy wierzchołek dokładnie raz.

s t

Teraz:

Ścieżka Hamiltona jest nieprostsza od spełnialności formuł 3-CNF-SAT.

Marcin Pilipczuk Redukcje wielomianowe 11/15

(51)

Ścieżka Hamiltona

Ścieżka Hamiltona

Wejście: graf skierowany G , wyróżnione s, t ∈ V (G )

Wyjście: czy istnieje ścieżka w G z końcami s i t, odwiedzająca każdy wierzchołek dokładnie raz.

s t

Teraz:

Ścieżka Hamiltona jest nieprostsza od spełnialności formuł 3-CNF-SAT.

Marcin Pilipczuk Redukcje wielomianowe 11/15

(52)

Ścieżka Hamiltona

Ścieżka Hamiltona

Wejście: graf skierowany G , wyróżnione s, t ∈ V (G )

Wyjście: czy istnieje ścieżka w G z końcami s i t, odwiedzająca każdy wierzchołek dokładnie raz.

s t

Teraz:

Ścieżka Hamiltona jest nieprostsza od spełnialności formuł 3-CNF-SAT.

Marcin Pilipczuk Redukcje wielomianowe 11/15

(53)

3-CNF-SAT −→ ścieżka Hamiltona

. . .

s t

x1 x2 x3 xn

α(x1) = >

α(x1) = ⊥ α(x2) = ⊥ α(x3) = > α(xn) = >

(¯x1∨ x2∨ x3) (¯x2∨ x3∨ ¯xn)

Marcin Pilipczuk Redukcje wielomianowe 12/15

(54)

3-CNF-SAT −→ ścieżka Hamiltona

. . .

s t

x1 x2 x3 xn

α(x1) = >

α(x1) = ⊥ α(x2) = ⊥ α(x3) = > α(xn) = >

(¯x1∨ x2∨ x3) (¯x2∨ x3∨ ¯xn)

Marcin Pilipczuk Redukcje wielomianowe 12/15

(55)

3-CNF-SAT −→ ścieżka Hamiltona

. . .

s t

x1 x2 x3 xn

α(x1) = >

α(x1) = ⊥ α(x2) = ⊥ α(x3) = > α(xn) = >

(¯x1∨ x2∨ x3) (¯x2∨ x3∨ ¯xn)

Marcin Pilipczuk Redukcje wielomianowe 12/15

(56)

3-CNF-SAT −→ ścieżka Hamiltona

. . .

s t

x1 x2 x3 xn

α(x1) = >

α(x1) = ⊥ α(x2) = ⊥ α(x3) = > α(xn) = >

(¯x1∨ x2∨ x3) (¯x2∨ x3∨ ¯xn)

Marcin Pilipczuk Redukcje wielomianowe 12/15

(57)

3-CNF-SAT −→ ścieżka Hamiltona

. . .

s t

x1 x2 x3 xn

α(x1) = >

α(x1) = ⊥

α(x2) = ⊥ α(x3) = > α(xn) = >

(¯x1∨ x2∨ x3) (¯x2∨ x3∨ ¯xn)

Marcin Pilipczuk Redukcje wielomianowe 12/15

(58)

3-CNF-SAT −→ ścieżka Hamiltona

. . .

s t

x1 x2 x3 xn

α(x1) = >

α(x1) = ⊥

α(x2) = ⊥ α(x3) = > α(xn) = >

(¯x1∨ x2∨ x3) (¯x2∨ x3∨ ¯xn)

Marcin Pilipczuk Redukcje wielomianowe 12/15

(59)

3-CNF-SAT −→ ścieżka Hamiltona

. . .

s t

x1 x2 x3 xn

α(x1) = >

α(x1) = ⊥

α(x2) = ⊥ α(x3) = > α(xn) = >

(¯x1∨ x2∨ x3)

(¯x2∨ x3∨ ¯xn)

Marcin Pilipczuk Redukcje wielomianowe 12/15

(60)

3-CNF-SAT −→ ścieżka Hamiltona

. . .

s t

x1 x2 x3 xn

α(x1) = >

α(x1) = ⊥

α(x2) = ⊥ α(x3) = > α(xn) = >

(¯x1∨ x2∨ x3)

(¯x2∨ x3∨ ¯xn)

Marcin Pilipczuk Redukcje wielomianowe 12/15

(61)

3-CNF-SAT −→ ścieżka Hamiltona

. . .

s t

x1 x2 x3 xn

α(x1) = >

α(x1) = ⊥

α(x2) = ⊥ α(x3) = > α(xn) = >

(¯x1∨ x2∨ x3)

(¯x2∨ x3∨ ¯xn)

Marcin Pilipczuk Redukcje wielomianowe 12/15

(62)

3-CNF-SAT −→ ścieżka Hamiltona

. . .

s t

x1 x2 x3 xn

α(x1) = >

α(x1) = ⊥

α(x2) = ⊥ α(x3) = > α(xn) = >

(¯x1∨ x2∨ x3)

(¯x2∨ x3∨ ¯xn)

Marcin Pilipczuk Redukcje wielomianowe 12/15

(63)

3-CNF-SAT −→ ścieżka Hamiltona

. . .

s t

x1 x2 x3 xn

α(x1) = >

α(x1) = ⊥

α(x2) = ⊥ α(x3) = > α(xn) = >

(¯x1∨ x2∨ x3) (¯x2∨ x3∨ ¯xn)

Marcin Pilipczuk Redukcje wielomianowe 12/15

(64)

3-CNF-SAT −→ ścieżka Hamiltona

. . .

s t

x1 x2 x3 xn

α(x1) = >

α(x1) = ⊥

α(x2) = ⊥ α(x3) = > α(xn) = >

(¯x1∨ x2∨ x3) (¯x2∨ x3∨ ¯xn)

Marcin Pilipczuk Redukcje wielomianowe 12/15

(65)

3-CNF-SAT −→ ścieżka Hamiltona

. . .

s t

x1 x2 x3 xn

α(x1) = >

α(x1) = ⊥

α(x2) = ⊥ α(x3) = > α(xn) = >

(¯x1∨ x2∨ x3) (¯x2∨ x3∨ ¯xn)

Marcin Pilipczuk Redukcje wielomianowe 12/15

(66)

3-CNF-SAT −→ ścieżka Hamiltona

. . .

s t

x1 x2 x3 xn

α(x1) = >

α(x1) = ⊥

α(x2) = ⊥ α(x3) = > α(xn) = >

(¯x1∨ x2∨ x3) (¯x2∨ x3∨ ¯xn)

Marcin Pilipczuk Redukcje wielomianowe 12/15

(67)

3-CNF-SAT −→ ścieżka Hamiltona

. . .

s t

x1 x2 x3 xn

α(x1) = >

α(x1) = ⊥

α(x2) = ⊥ α(x3) = > α(xn) = >

(¯x1∨ x2∨ x3) (¯x2∨ x3∨ ¯xn)

Marcin Pilipczuk Redukcje wielomianowe 12/15

(68)

Redukcje

3-kolorowanie

zbiór niezależny

klika pokrycie wierzchołkowe 3-CNF-SAT

ścieżka Hamiltona

Teraz:

3-kolorowanie jest nieprostsze od spełnialności formuł 3-CNF-SAT

Marcin Pilipczuk Redukcje wielomianowe 13/15

(69)

Redukcje

3-kolorowanie

zbiór niezależny

klika pokrycie wierzchołkowe 3-CNF-SAT

ścieżka Hamiltona

Teraz:

3-kolorowanie jest nieprostsze od spełnialności formuł 3-CNF-SAT

Marcin Pilipczuk Redukcje wielomianowe 13/15

(70)

3-CNF-SAT −→ 3-kolorowanie

F T

x11 x22 x33 xnn

. . .

(x1∨ ¯x2∨ x3)

Marcin Pilipczuk Redukcje wielomianowe 14/15

(71)

3-CNF-SAT −→ 3-kolorowanie

F T

x11 x22 x33 xnn

. . .

(x1∨ ¯x2∨ x3)

Marcin Pilipczuk Redukcje wielomianowe 14/15

(72)

3-CNF-SAT −→ 3-kolorowanie

F T

x11 x22 x33 xnn

. . .

(x1∨ ¯x2∨ x3)

Marcin Pilipczuk Redukcje wielomianowe 14/15

(73)

3-CNF-SAT −→ 3-kolorowanie

F T

x11 x22 x33 xnn

. . .

(x1∨ ¯x2∨ x3)

Marcin Pilipczuk Redukcje wielomianowe 14/15

(74)

3-CNF-SAT −→ 3-kolorowanie

F T

x11 x22 x33 xnn

. . .

(x1∨ ¯x2∨ x3)

Marcin Pilipczuk Redukcje wielomianowe 14/15

(75)

3-CNF-SAT −→ 3-kolorowanie

F T

x11 x22 x33 xnn

. . .

(x1∨ ¯x2∨ x3)

Marcin Pilipczuk Redukcje wielomianowe 14/15

(76)

3-CNF-SAT −→ 3-kolorowanie

F T

x11 x22 x33 xnn

. . .

(x1∨ ¯x2∨ x3)

Marcin Pilipczuk Redukcje wielomianowe 14/15

(77)

3-CNF-SAT −→ 3-kolorowanie

F T

x11 x22 x33 xnn

. . .

(x1∨ ¯x2∨ x3)

Marcin Pilipczuk Redukcje wielomianowe 14/15

(78)

3-CNF-SAT −→ 3-kolorowanie

F T

x11 x22 x33 xnn

. . .

(x1∨ ¯x2∨ x3)

Marcin Pilipczuk Redukcje wielomianowe 14/15

(79)

3-CNF-SAT −→ 3-kolorowanie

F T

x11 x22 x33 xnn

. . .

(x1∨ ¯x2∨ x3)

Marcin Pilipczuk Redukcje wielomianowe 14/15

(80)

3-CNF-SAT −→ 3-kolorowanie

F T

x11 x22 x33 xnn

. . .

(x1∨ ¯x2∨ x3)

Marcin Pilipczuk Redukcje wielomianowe 14/15

(81)

Podsumowanie

3-kolorowanie

zbiór niezależny

klika pokrycie wierzchołkowe 3-CNF-SAT

ścieżka Hamiltona

Powyższe redukcje wielomianowe

3-kolorowanie trudne, bo tak

Za tydzień: formalizacja + argumenty, dlaczego trudne Dzisiejsza trudność nazywa się NP-trudność.

Marcin Pilipczuk Redukcje wielomianowe 15/15

(82)

Podsumowanie

3-kolorowanie

zbiór niezależny

klika pokrycie wierzchołkowe 3-CNF-SAT

ścieżka Hamiltona

Powyższe redukcje wielomianowe 3-kolorowanie trudne, bo tak

Za tydzień: formalizacja + argumenty, dlaczego trudne Dzisiejsza trudność nazywa się NP-trudność.

Marcin Pilipczuk Redukcje wielomianowe 15/15

(83)

Podsumowanie

3-kolorowanie

zbiór niezależny

klika pokrycie wierzchołkowe 3-CNF-SAT

ścieżka Hamiltona

Powyższe redukcje wielomianowe 3-kolorowanie trudne, bo tak

Za tydzień: formalizacja + argumenty, dlaczego trudne

Dzisiejsza trudność nazywa się NP-trudność.

Marcin Pilipczuk Redukcje wielomianowe 15/15

(84)

Podsumowanie

3-kolorowanie

zbiór niezależny

klika pokrycie wierzchołkowe 3-CNF-SAT

ścieżka Hamiltona

Powyższe redukcje wielomianowe 3-kolorowanie trudne, bo tak

Za tydzień: formalizacja + argumenty, dlaczego trudne Dzisiejsza trudność nazywa się NP-trudność.

Marcin Pilipczuk Redukcje wielomianowe 15/15

Cytaty

Powiązane dokumenty

Biorąc pod uwagę te obserwacje, możemy stwierdzić, że jeśli K jest ciałem liczbowym, do którego należą współrzędne wszystkich punktów danych do wykonania pewnej konstrukcji,

Ale zamiast poszukiwać dokładnego rozwiązania, użyjemy innej sztuczki: będziemy szukali algorytmów, które starają się jak najbardziej zmniejszyć rozmiar instancji (czyli

7KHWHUP³JOREDOL]DWLRQRIILQDQFH´LQFOXGHVDQLGHDRILQWHUUHODWHGLQWHUGHSHQGHQW LQWHJUDWHG PDUNHW ZLWK QR ERUGHUV IRU XQUHJXODWHG FDSLWDO )LQDQFLDO

Jest to możliwe dla różnych węzłów, aby mieć taki sam wielomian Jones’a ale zdarza się rzadko. Wielomian ten jest nadzwyczaj dobrą metodą do rozróżniania

[r]

Wydaje się, że podobną funkcję w filmie pełnią materiały, które pojawiają się już po zakończeniu właściwej Symfonii, celowo oddzielone od niej napisami końcowymi. W

On one hand, deadly criticism of “basic” laws of classical logic, on the other hand, almost unlimited extensions of the concept of the logical truth (in essence this process