Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
OpublikowałWłodzimierz Kwiecień Został zmieniony 9 lat temu
2
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Motto prezentacji … Nie mogła być błędna tylko dlatego, że była prosta … Nie było dokładnie wiadomo, do czego prowadzi, jednak było dość oczywiste, że powinna być udostępniona, W zasadzie chciałem opublikować ten pomysł I powiedzieć: Oto zgrabna koncepcja – wyjaśnia na czym polega ten problem, wyjaśnia to, że jego rozwiązanie jest osiągalne i staje się jasno zdefiniowanym problemem badawczym. Teraz niech wkroczą inni i zobaczymy, co jeszcze będziemy mogli znaleźć …. [cytat słów Ralpha Merkle – Steven Levy, „Rewolucja kryptografii”, WNT, W-wa, 2002, s. 89-90]
3
Złamanie niedeterminizmu problemów NP-zupełnych mgr inż. Marek Malinowski Zespół Matematyki i Fizyki Wydz. BMiP PW Płock - przyszłość modelowania matematycznego i obliczeń równoległych
4
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Kluczowe dziedziny teorii obliczeń teoria automatów - definiuje i bada własności modeli obliczeń obliczalność - klasyfikuje problemy na rozwiązywalne i nierozwiązywalne złożoność -klasyfikuje problemy na łatwe i trudne Charakterystyki obliczeń definiowane są przez sparametryzowanie modeli obliczeń -automaty skończone i automaty ze stosem tryb obliczeń -obliczenia deterministyczne i niedeterministyczne zasoby - czas i pamięć ograniczenia - funkcje na zbiorze liczb naturalnych ( w notacji O(.) ) Te cztery elementy składają się na wykorzystywany aparat formalny Wyjaśnienie tytułu Wyjaśnienie tytułu – domena teorii złożoności
5
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski u Pytania u o charakter relacji klas złożoności obliczeniowej u o status badań - otwarta kwestia u o przyczyny niepowodzeń u Sugestia nowego spojrzenia u na koncepcje i rozwiązania problemów SAT, nwd, mult(n) u Potrzeba refleksji u nad przyszłością informatyki (konsekwencje NC = P = NP) u W kręgu spełnialności u PvNP w modelu MT i sieci logicznych Treść prezentacji
6
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Wstęp do prezentacji - pytania Wstęp do prezentacji - pytania – hierarchia klas LOGTIME PTIME NPC co-NPTIME NPTIME EXPTIME NC P NP Klasa NC Klasa NC – czas logarytmiczny przy całkowitej pracy wielomianowej (algorytmy równoległe) Klasa NPC Klasa NPC – wprost trudno rozwiązywalne – potwierdzenia łatwe NP-zupełne Reprezentatywne problemy NP-zupełne Ustalanie prawdy logicznej, problemy grafowe, planowanie, (zagadnienia transportowe, „układanki”) Klasa P Klasa P – czas wielomianowy
7
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Kwestia P versus NP Kwestia P versus NP - wynik braku rozstrzygnięcia relacji między dwiema klasami zdefiniowanymi w oparciu o formalizm deterministycznego i niedeterministycznego atomatu, klasą P (problemy łatwe z wielomianowym czasem rozstrzygnięcia) i klasą NP (problemy trudne z wykładniczym czasem rozstrzygnięcia i wielomianowym czasem weryfikacji). P versus NP Dwie możliwe sytuacje P versus NP P NP P = NP Drogi rozstrzygnięcia kwestii P v NP (wynik twierdzenia Cooka-Levina): l dowód, że dla dowolnego z licznych problemów NP-zupełnych dolne ograniczenie złożoności algorytmicznej ma postać wykładniczą l skonstruowanie algorytmu wielomianowego dla dowolnego z licznych problemów NP-zupełnych Wstęp do prezentacji - pytania Wstęp do prezentacji - pytania – status badań
8
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski *) Willam I. Gasarch, 2002, The P =? NP. Poll Omówienie sondażu - Willam I. Gasarch, 2002, The P =? NP Poll 3 pytania, 100 respondentów - nie wszyscy udzielili odpowiedzi na każde z postawionych pytań. 1 0 When Do You Think P =? NP Will Be Resolved? 2 0 How Will it Be Resolved?- 61P ≠ NP 9P = NP 8odpowiedzi niejednoznaczne 3 0 What Techniques Will be Used? 11kombinatoryka i teoria złożoności 9logika 10matematyka 6mieszane (w tym 2 - przez konstrukcję algorytmu wielomianowego) 16nowe - jeszcze nie wypracowane Znamienne, że 36 respondentów twierdzi, że techniki są już znane, tylko nie potrafimy ich zastosować 51213105124010 5 2002- 2009 2010- 2019 2020- 2029 2030- 2039 2040- 2049 2050- 2059 2060- 2069 2070- 2079 2080- 2089 2090- 2099 późniejnigdy Wstęp do prezentacji - pytania Wstęp do prezentacji - pytania – status badań (cd)
9
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Spełnialność - dane są trzy wyrażenia logiczne Widoczne jest istotne zróżnicowanie skomplikowania wyrażeń, chociaż każde z nich skonstruowano przy pomocy trzech zmiennych. 3SAT Można z nich sformułować problem 3SAT. O(2 n ). Skomplikowanie wyrażeń, ich struktura i powiązania między zmiennymi nie mają wpływu na trywialny algorytm wartościowania wyczerpującego O(2 n ). Czy tak jest w innych problemach??? (1) ( x y ) z (2) ( x w ) ( z ) (3) ( u x ) ( z ( z x )) (( z u) x ) *) David Harel, „Algorytmika. Rzecz o istocie informatyki”, WNT 1992 Wstęp do prezentacji - pytania Wstęp do prezentacji - pytania – przyczyny niepowodzeń
10
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Wprowadzenie innych lub dodatkowych elementów strukturalnych, operowanie tymi elementami (np. ich uporządkowanie), umożliwia skonstruowanie bardziej efektywnego algorytmu. *) dla każdego potencjalnego odcinka sprawdzamy, czy wszystkie n-2 punkty nie należące do niego leżą po tej samej stronie Wstęp do prezentacji - pytania Wstęp do prezentacji - pytania – przyczyny niepowodzeń (cd) Problem kombinatoryczny - (zadanie o „śpiących tygrysach”). O(n3) Dla algorytmu trywialnego *) O(n3) sposób rozmieszczenia punktów zbioru nie ma znaczenia, ale... Pi P1 P1O(n log(n) ). uporządkowanie punktów wg kryterium kąta jaki tworzą odcinki Pi P1 z linią poziomą „najniższego” punktu P1 prowadzi do algorytmu O(n log(n) ).
11
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Ten znaczący efekt wynik uzyskano stosując pełne przedziały do oceny problemu - patrząc na problem w skali „makro”. Wstęp do prezentacji - pytania Wstęp do prezentacji - pytania – przyczyny niepowodzeń (cd) Problem obliczeniowy - liczebność liczb pierwszych Twierdzenie o liczbach pierwszych. (x)≤ x Niech (x) oznacza liczbę liczb pierwszych ≤ x. Wtedy
12
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Wstęp do prezentacji – nowe spojrzenie Wstęp do prezentacji – nowe spojrzenie – koncepcje i rozwiązania AlgorytmRozmiarCzasiloczyn (procesory)(rozmiar x czas) 1O(N2) O(N2) Sortowanie bąbelkowe1O(N2) O(N2) 1O(N log N) O(N log N) Sortowanie przez scalanie1O(N log N) O(N log N) O(N) O(N) O(N2) Zrównoleglone sortowanie przez scalanieO(N) O(N) O(N2) O(N (log N)2) O((log N)2) O(N (log N)4) Sieć sortująca parzysto-nieparzyście O(N (log N)2) O((log N)2) O(N (log N)4) O(N) O(log N) O(N log N) „Optymalna” sieć sortująca O(N) O(log N) O(N log N) P versus NP Wyszukiwanie – prekursor P versus NP Wyszukiwanie w uporządkowanych strukturach – czas logarytmiczny
13
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski kSAT jednostajna sieć wielomianowa kSAT kSAT uogólniony model referencyjny kSAT kSAT algorytm wielomianowy kSAT kSAT równoległy algorytm kSAT nwd(a,b) równoległy algorytm nwd(a,b) mult(n) równoległy algorytm mult(n) mult(n)primesNP-zupełne mult(n) i primes są NP-zupełne P=NP NC=P=NP NC=P NC=P=NP Wstęp do prezentacji – nowe spojrzenie Wstęp do prezentacji – nowe spojrzenie – koncepcje i rozwiązania
14
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Wstęp do prezentacji – refleksja Wstęp do prezentacji – refleksja – przyszłość bez niedeterminizmu (z listu Gödla)
15
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Algorytmika bez niedeterminizmu – wizja UTOPII Co jeśli P = NP? Jeśli P = NP – w szczególności, jeśli problem NP–zupełny, jak 3SAT, miałby bardzo efektywny algorytm w czasie O(n 3 ), wtedy świat musiałby być jakąś Utopią. Matematyków można by zastąpić programami efektywnie wyszukującymi twierdzenia (na co wskazał Kurt Gödel w swoim liście w 1956 r.). Inżynierów mogłyby wspomagać pakiety oprogramowania, które zwracałyby od ręki idealne rozwiązania. Projektanci VLSI mogliby budować optymalne układy przy minimalnych wymaganiach mocy. Dysponując danymi z eksperymentu, można by automatycznie formułować najprostszą teorię, która opisywałaby te pomiary.
16
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Algorytmika bez niedeterminizmu – wizja UTOPII (cd) Co jeśli P = NP? Nieco intrygującym jest, że taka Utopia nie potrzebowałaby pojęcia losowości. Taka Utopia miałaby jednak pewną cenę: nie byłoby żadnej prywatności w domenie cyfrowej, - każdy system kodowania miałby trywialnie prosty system dekodowania - nie można by marzyć o wszystkich e-pomysłach (e-administracji, e-handlu, e-biznesie, e-bankowości, e-wyborach itp.) musielibyśmy nauczyć się radzić sobie bez tych udogodnień. Ten świat utopijny może wydawać się śmiesznie naiwny, ale fakt, że nie można go wykluczyć, pokazuje, jak mało wiemy o obliczeniach. Przyjmując filozofię „szklanki do połowy pełnej”, pokazuje to, jak dużo jeszcze przed nami do odkrycia.
17
W kręgu spełnialności Dyskusja PvNP w modelu MT i sieci logicznych
18
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Spełnialność w faktach Definicje i podstawowe pojęcia: Problem spełnialności SAT Problem spełnialności polega na sprawdzeniu, czy formuła logiczna zapisana w postaci CNF jest spełnialna, tj. czy istnieje takie wartościowanie jej zmiennych, by formuła była prawdziwa. W formule spełnialnej, każda klauzula musi zawierać co najmniej jeden literał, który ma przypisaną wartość logiczną PRAWDA. u Literał - zmienna logiczna lub zanegowana zmienna logiczna. u Klauzula - alternatywa co najmniej jednego literału. u Klauzula Horna - postać klauzuli zawierająca najwyżej jeden literał niezanegowany (pozytywny). u Implikant - koniunkcja co najmniej jednego literału u Koniunktywna postać normalna CNF - połączenie klauzul operatorem koniunkcji. u Dysjunktywna postać normalna DNF - połączenie implikantów operatorem alternatywy. )) *) Christos H. Papadimitriou w pracy „Złożoność obliczeniowa” pisze - Na ograniczenie dopuszczalnych postaci formuły (CNF) pozwalamy sobie z dwóch powodów. Po pierwsze, wiemy, że każdą formułę można tak przedstawić. Po drugie, wygląda na to, że ta szczególna postać spełnialności oddaje złożoność problemu.
19
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Spełnialność w faktach Spełnialność w faktach ( cd ) Fakt 1: Redukcja w problemach SAT (uszczegółowienie) Każdy problem SAT może być zredukowany do kSAT, gdzie k 3. Ogólnie klauzula zawierająca l literałów ( u 1 u 2 ... u l ), może być zastąpiona przez ( l-2 ) klauzule (u 1 u 2 u l ) ( ū 1 u 3 u 2 ) (ū 2 u 4 u 3 ) ... (ū l-3 u l-1 u l ). Fakt 2: Klasyfikacja problemów SAT Klasa NP-zupełnaKlasa P SAT... kSAT... 3SAT2SAT, HornSAT Na przykładzie problemu spełnialności można zaobserwować, że zarówno uszczegóławianie jak i uogólnianie może prowadzić do istotnej zmiany złożoności obliczeniowej problemu. Problemy SAT sparametryzowane są przez k - max ilość literałów występujących w klauzulach postaci CNF (parametryzacja na poziomie „atomowym” - literałów) oraz wyodrębnienie tylko jednej szczególnej postaci klauzul (klauzule Horna - ogólnie w kSAT jest ich k+1 ).
20
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Spełnialność w faktach – model MT Cooka - Levina Fakt 3: Twierdzenie Cooka - Levina u Między pewnymi problemami NP zachodzi związek - ich złożoność czasowa związana jest ze złożonością całej klasy. Wszystkie takie problemy nazywane są problemami NP - zupełnymi. u Pierwotnym problemem NP - zupełnym jest problem spełnialności SAT. u Przynależność problemu do klasy NP - zupełnych ustalana jest poprzez mechanizm redukcji wielomianowej. SAT jest NP - zupełny SAT P P = NP Ogólnie redukcja to sposób przekształcenia jednego problemu w drugi tak, by z rozwiązania drugiego problemu można było skorzystać przy rozwiązaniu pierwszego problemu. Fakt 4: Redukcja przez odwzorowanie Redukcja przez odwzorowanie oznacza, że istnieje obliczalna funkcja, która przekształca przykłady problemu A w przykłady problemu B. Jeśli jeden problem redukuje się przez odwzorowanie do drugiego, wcześniej rozwiązanego, to można to wykorzystać do uzyskania rozwiązania pierwszego problemu.
21
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Spełnialność w faktach – sieci logiczne Spełnialność w faktach – sieci logiczne ( cd ) Fakt 5: Reprezentacja funkcji logicznych przez sieci logiczne Każda funkcja logiczna może być przedstawiona jako sieć logiczna. Sieć logiczna jest grafem C = ( V, E ), gdzie V = { 1, …, n } są bramkami grafu C, E jest zbiorem krawędzi ( i, j ) przy i < j (warunek acykliczności) Składnia sieci: Z każdą bramką i V sieci związany jest rodzaj sieci s(i) oraz stopień wejściowy, gdzie s(i) {true, false) { x 1, x 2, …, x n } { , , } stopień wejściowy { 0, 1, 2 } Bramka bez krawędzi wychodzących jest bramką wyjściową sieci i oblicza funkcję logiczną reprezentowaną przez sieć. Dopuszcza się sieci wielowyjęciowe ( obliczają kilka funkcji jednocześnie).
22
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Spełnialność w faktach – sieci logiczne Spełnialność w faktach – sieci logiczne ( cd ) Fakt 6: Trzy typy sieci logicznych - sieć bez zmiennych, tj. z bramkami V {true, false) { , , } - sieć ze zmiennymi i bez stałych, tj z bramkami V { x1, x2, …, xn } { , , } - sieć ze zmiennymi i stałymi, tj. z bramkami V {true, false) { x1, x2, …, xn } { , , } Schematy ideowe typów sieci logicznych, gdzie: X – wektor sygnałów wejściowych (zmienne x 1, x 2, …, x n ); U – wektor stałych u i є {true,false} i=1, 2, …, k; Y – wektor sygnałów wyjściowych, y j є {true,false} j=1, 2, …, m y j jest obliczoną wartością pewnej funkcji (niekoniecznie funkcji wszystkich n zmiennych).
23
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Spełnialność w faktach – sieci logiczne Spełnialność w faktach – sieci logiczne ( cd ) Fakt 7: Sieć logiczna jako problem CIRCUIT VALUE Sieć C bez zmiennych, tj. sieć z bramkami V(i) {true,false} { , , ¬} definiuje problem CIRCIUT VALUE P. Fakt 8: Sieć logiczna jako problem CIRCUIT SAT Sieć C ze zmiennymi, kiedy należy stwierdzić czy istnieje takie wartościowanie zmiennych, że bramka wyjściowa zwraca wartość true, definiuje problem CIRCIUT SAT. Pokazując redukcję wielomianową CIRCUIT SAT do 3SAT w pamięci log(n), przyjmuje się, że CIRCUIT SAT należy do klasy problemów NP-zupełnych. Fakt 9: Sieci wielomianowe Sieć ma rozmiar wielomianowy, jeśli istnieje rodzina sieci C={C 0, C 1, … } dla której prawdą jest po pierwsze, - że rozmiar C n jest równy co najwyżej p(n) dla pewnego ustalonego wielomianu p i po drugie, - że dla każdej kombinacji zmiennych x i {0,1} i=1,2, …, n spełniających formułę reprezentowaną przez tą sieć, wartością sieci jest true (w kategoriach języka maszyn Turinga powiedzielibyśmy, że dla słów wejściowych, które maszyna akceptuje – wartością sieci jest true).
24
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Spełnialność w faktach – sieci logiczne Spełnialność w faktach – sieci logiczne ( cd ) Fakt 10: Każdy problem z klasy P ma sieć wielomianową Niestety, stwierdzenie odwrotne nie jest prawdziwe. Nie każda sieć wielomianowa jest reprezentacją problemu z klasy P. Pokazano, że istnieją problemy nierozstrzygalne, które mają sieci wielomianowe. Sprawia to, że nie możemy wnioskować P = NP, mimo że sieć C definiująca problem CIRCUIT SAT (tj. sieć ze zmiennymi, kiedy należy stwierdzić czy istnieje takie wartościowanie zmiennych, że bramka wyjściowa zwraca wartość true) musi mieć rozmiar wielomianowy by redukcja mogła być przeprowadzona w czasie wielomianowym. A jeśli tak, to CIRCUIT SAT należałoby zaliczyć do klasy P. Z drugiej strony, jeśli CIRCUIT SAT redukuje się do 3SAT, i tym samym w aspekcie ZUPEŁNOŚCI nie jest gorszy od 3SAT, to i 3SAT należałoby zaliczyć do P. Związanie sieci wielomianowych z obliczeniami wielomianowymi dokonuje się poprzez wprowadzenie pojęcia jednostajności sieci. Fakt 11: Wielomianowe jednostajne sieci logiczne Rodzina sieci C={C 0, C 1, … } jest jednostajna, jeśli dla zmiennych x i є {1} i=1, 2, …,n możliwe jest skonstruowanie sieci C n w pamięci log n. Tak zdefiniowana jednostajna sieć wielomianowa prowadzi do stwierdzenia, że jednostajna rodzina sieci wielomianowych dla reprezentowanego przez nią problemu istnieje wtedy i tylko wtedy, gdy problem ten należy do klasy P.
25
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Aktualny status tematu badań - wnioski Fakt 12: Twierdzenie o jednostajnych sieciach wielomianowych Twierdzenie o jednostajnych sieciach wielomianowych jest równoważne twierdzeniu Cooka-Levina. Jeśli pokazana zostanie jednostajna sieć wielomianowa dla pewnego problemu NP-zupełnego, to P = NP. Jeśli udowodnione zostanie, że problemy NP-zupełne nie mają jednostajnych sieci wielomianowych, to P NP Język L ma jednostajną rodzinę sieci wielomianowych L P
26
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Jednostajna sieć wielomianowa 3SAT Znamy wszystkie wyrażenia logiczne opisujące funkcje dwóch zmiennych (jest ich 16). Przy ich pomocy możemy opisać każdą funkcję n zmiennych. Jeśli funkcję i zmiennych oznaczymy przez f i, to f 2( f i (x 1, x 2, …, x i ), x i+1 ) = f i+1. Tak więc na przykład f 3 = f 2 (f 2 (x 1, x 2 ), x 3 ), a ponieważ w wyrażeniu mogą wystąpić dowolne zmienne więc ogólnie można zapisać f 3 = f 2 (f 2 (x r, x s ), x t ). Jeśli φ będzie wyrażeniem logicznym opisującym funkcję n zmiennych w postaci: φ = f 1 3 (x r, x s, x t ) f 2 3 (x r, x s, x t ) ... f m 3 (x r, x s, x t )(1) gdzie: x r, x s, x t {x 1, x 2, …, x n } oraz r {1, 2, … n}, s (r+1, r+2, …,n} i t {s+1, s+2, … n}, tj. r < s < t, to opuszczając oznaczenia argumentów poszczególnych funkcji można zapisać, że φ jest funkcją m zmiennych, których rolę pełnią funkcje f i 3, i=1, 2, …, m. φ = f m (f 1 3, f 2 3, …, f m 3 ) = f 2 (f m-1 (f 1 3, f 2 3, …, f m-1 3 ), f m 3 ) Rozwijając ostatnią postać wyrażenia dalej uzyskamy ostatecznie: φ = f 2 (f 2 ( … f 2 (f 2 (f 1 3, f 2 3 ), f 3 3 )…, f m-1 3 ), f m 3 )(2) Uzyskana postać wyrażenia pokazuje, że można f 1 3, f 2 3, … f m 3 traktować niezależnie jako argumenty kolejnych (m-1) dwu argumentowych funkcji f 2 (wszystkie są funkcjami iloczynu logicznego realizowanymi przez bramki AND), począwszy od najgłębiej zagnieżdżonej. W kategoriach sieci logicznych, odpowiada to sytuacji, w której f 1 3, f 2 3, … f m 3 stanowią niezależne fragmenty w sieci z m wyjściami, tak że j-te wyjście rozstrzyga spełnialność j-tej funkcji f j 3 (x r, x s, x t ).
27
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Jednostajna sieć wielomianowa 3SAT (cd) Elementarny 3SAT Jeśli przyjmiemy, że funkcja φ opisana przez wyrażenie φ = f 1 3 (x r, x s, x t ) f 2 3 (x r, x s, x t ) ... f m 3 (x r, x s, x t ) ma postać normalną iloczynu CNF, odpowiadającą definicji problemu 3SAT, to funkcje f i i=1, …, m reprezentowane są przez klauzule trzech różnych zmiennych i wtedy każda z ośmiu możliwych postaci klauzul trzech zmiennych może być traktowana jako elementarny 3SAT. Elementarny 3SAT – uniwersalna sieć logiczna Taką uniwersalna siecią dla przypadku elementarnego 3SAT CNF, jest sieć logiczna reprezentująca funkcję stałą TRUE, a dla przypadku elementarnego 3SAT DNF, sieć reprezentująca funkcję stałą FALSE. W obu przypadkach, podstawą konstruowania sieci jest układ multipleksera 8/1.
28
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Jednostajna sieć wielomianowa 3SAT (cd) Schemat układu multipleksera 8/1 Sygnały wejściowe zmiennych x r, x s, x t, będą podawane na wejścia adresowe układu. Sygnały stałych (wektory U=[u 1, u 2, …, u 8 ], binarnie interpretowane jako numer funkcji) będą podawane na wejścia danych multipleksera. Sygnał wyjściowy z bramki OR określa tablica stanów, z której jednoznacznie wynika, że sygnał na wyjściu układu odpowiada sygnałowi podawanemu na wejście danych określone przez aktualny stan wejść adresowych. x r wejścia adresowe x s x t 01010101 00110011 00001111 wyjścieu1u1 u2u2 u3u3 u4u4 u5u5 u6u6 u7u7 u8u8
29
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Jednostajna sieć wielomianowa 3SAT (cd) Każda funkcja logiczna f trzech różnych zmiennych x r, x s, x t, opisana wyrażeniem w jednej z dwóch kanonicznych normalnych postaci koniunkcyjnej (CNF) lub dysjunkcyjnej (DNF), ma uniwersalną sieć logiczną o stałym rozmiarze k bramek. Taką uniwersalną siecią o stałym rozmiarze bramek jest multiplekser 8/1 – ma on postać wielobiegunnika Konstrukcja sieci 3SAT Podstawą konstruowania sieci jest wyrażenie φ = f 2 (f 2 ( … f 2 (f 2 (f 1 3, f 2 3 ), f 3 3 )…, f m-1 3 ), f m 3 ) 3SAT CNF Stosując operator prefiksowy AND, uzyskujemy postać jednoznacznie określającą sposób konstruowania sieci rozszerzającej C ext 3SAT CNF = AND ( AND ( … AND ( AND (f 1 3, f 2 3, ) … f m-1 3 ), f m 3 )
30
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Jednostajna sieć wielomianowa 3SAT (cd) Przyjmując, że jako elementarne 3SAT będziemy traktować funkcje opisywane przez wyrażenia mające postać pojedynczych klauzul, to możemy ograniczyć się do rozpatrywania ośmiu funkcji definiowanych przez osiem różnych klauzul i wtedy przy konstruowaniu sieci operować będziemy ośmioma wektorami stałych U, które jednoznacznie są określane przez postaci klauzul. Konstrukcja sieci 3SAT (cd) W poszczególnych wektorach występują stałe false na kolejnych jego pozycjach. Dla określenia numeru pozycji, na których występują one w wektorze U, wystarczy by negatywne literały w zapisie klauzuli interpretować jako cyfry „1” liczby binarnej. Na przykład. 101 2 = 5 10. Uwaga 3.1:Należy wyraźnie zaznaczyć, że na określenie postaci wektorów U ma wprost wpływ jedynie układ negatywnych literałów w zapisie klauzuli i nie ma wpływu to z jaką kombinacją trzech zmiennych mamy do czynienia. Mogą to być dowolne kombinacje trzech zmiennych dopuszczane przez formułę (1) definiującą 3SAT CNF. Uwaga 3.2: Jeśli na wszystkie wejścia stałych będą podane sygnały true (u i =1), to rozpatrywany schemat multipleksera realizuje funkcję TRUE. Z kolei, jeśli na wszystkie wejścia stałych będą podane sygnały false (u i =1), to multiplekser realizuje funkcję FALSE.
31
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Jednostajna sieć wielomianowa 3SAT (cd) Konstrukcja sieci 3SAT W efekcie, konstrukcja sieci 3SAT CNF sprowadzi się do m-krotnego powielenia sieci elementarnego 3SAT reprezentowanego przez sieć realizującą funkcję TRUE i ustalenia stałej false na stosownej pozycji wektora U i (i=1, 2, …, m). Zakładając identyczny sposób numerowania bramek wejść adresowych i wejść danych w każdym reprezentującym elementarny 3SAT segmencie sieci oraz wykorzystując oznaczenie wielobiegunnika, otrzymaną sieć można przedstawić w postaci schematu ideowego, (rysunek obok). Pozostaje uzasadnić, że konstrukcję sieci można wykonać w pamięci log n. Proces powielania układu elementarnego 3SAT (multiplekser 8/1) wymaga jednej zmiennej do pamiętania m ilości klauzul i jednego licznika do indeksacji kolejnych sieci elementarnych 3SAT i ich wejść. Potrzebny jest także licznik do obliczania numeru wejścia stałych, na które należy podać stałą false. Połączenia odpowiednich bramek wymagają tylko bezpośrednich operacji na indeksach i stąd są łatwe do wykonania w pamięci logarytmicznej... 48m+1 48m+2 48m+(m-1) C ext 48m+(i-1)
32
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski u Sieć logiczna pełnego 3SAT CNF, w najgorszym przypadku charakteryzuje się rozmiarem wyrażanym przez O(n 3 ). u Sieć można skonstruować w pamięci logarytmicznej oraz, że może to być sieć jednostajna. u Istnienie sieci jednostajnej dla 3SAT CNF jest równoważne stwierdzeniu, że dla 3SAT CNF istnieje algorytm wielomianowy. u Skonstruowanie takiego algorytmu, niezależnie od jego praktycznego znaczenia, może być potraktowane jako element weryfikacji przedstawionym wyników. Jednostajna sieć wielomianowa 3SAT - wnioski - P v NP nowa perspektywa
33
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Pojęcia ekwiwalentne rachunek zdańfunkcje logiczne alternatywa zmiennych logicznychklauzulaelementarna alternatywa koniunkcja zmiennych logicznychimplikantelementarna koniunkcja W przypadku funkcji logicznej operujemy ośmioma elementarnymi alternatywami i ośmioma elementarnymi koniunkcjami. Dla formy zdaniowej trzech zmiennych będą to odpowiednio klauzule i implikanty. SAT inaczej - terminologia i oznaczenia Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski u Problem spełnialności SAT dla n zmiennych zdaniowych został sformułowany w formaliźmie rachunku zdań. u Zmienne zdaniowe reprezentowane są w formułach przez literały. u Każdą formułę rachunku zdań można traktować jako wyrażenie funkcji logicznej. u Pojęcia rachunku zdań mają ekwiwalentne określenia w formaliźmie funkcji logicznych. u Zmienne zdaniowe i odpowiadające im zmienne logiczne, będą oznaczane symbolem x i, gdzie dolny indeks oznacza numer zmiennej. Pojęcie funkcji stosowane w opisie oznacza reprezentację funkcji logicznej określonej ilości zmiennych w postaci dysjunktywnej kanonicznej postaci normalnej (DNF), tj. w postaci alternatywy elementarnych koniunkcji tych zmiennych. Postać DNF funkcji logicznej jest dualną postacią względem koniunkcyjnej kanonicznej postaci normalnej (CNF) funkcji, tj. koniunkcji elementarnych alternatyw zmiennych.
34
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Funkcja 3 zmiennych wartościowanieelementarne alternatywyelementarne koniunkcje zmiennych(klauzule)(implikanty) x 3 x 2 x 1 0 0 0 x 3 x 2 x 1 x 3 x 2 x 1 0 0 1 x 3 x 2 x 1 x 3 x 2 x 1 0 1 0 x 3 x 2 x 1 x 3 x 2 x 1 0 1 1 x 3 x 2 x 1 Horn x 3 x 2 x 1 1 0 0 x 3 x 2 x 1 x 3 x 2 x 1 1 0 1 x 3 x 2 x 1 Horn x 3 x 2 x 1 1 1 0 x 3 x 2 x 1 Hornx 3 x 2 x 1 1 1 1 x 3 x 2 x 1 Hornx 3 x 2 x 1 W zestawieniu występują 4 klauzule Horna - pozostałe będziemy nazywać klauzulami coHorna, tj. takie, które zawierają co najwyżej jeden negatywny literał. Zbiór klauzul Horna jest rozłączny ze zbiorem klauzul coHorna. Dla 8 różnych elementarnych alternatyw można zdefiniować 255 funkcji i każdej przyporządkować numer w tym 4 funkcje Horna (odpowiedniki klauzul Horna) i 4 funkcje coHorna (odpowiedniki klauzul coHorna) SAT inaczej - terminologia i oznaczenia (cd) Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski
35
Dyskusja formuły kSAT CNF Formuła kSAT CNF oznacza koniunkcję klauzul określonych kombinacji k zmiennych spośród n zmiennych. Dla określonej kombinacji tych samych zmiennych istnieje 2 k różnych klauzul. W formule mogą wystąpić różne klauzule tej samej kombinacji zmiennych. Dla 3SAT CNF mogą to być klauzule spośród czterech klauzul Horna, bądź spośród czterech innych - klauzul coHorna - co w problemie 3SAT CNF wyczerpuje zbiór możliwych klauzul i analogicznie będzie dla 2SAT CNF. FALSE Dla tej samej kombinacji zmiennych, w formule 3SAT CNF mogą wystąpić bądź tylko pojedyncze klauzule (spośród 8 możliwych), bądź dwie, trzy aż do siedmiu różnych klauzul (pomijamy przypadek wszystkich ośmiu możliwych klauzul, bo wtedy reprezentują one stałą FALSE). FALSE Dla tej samej kombinacji zmiennych, w formule 2SAT CNF mogą wystąpić bądź tylko pojedyncze klauzule (spośród 4 możliwych), bądź dwie aż do czterech różnych klauzul (pomijamy przypadek wszystkich czterech możliwych klauzul, bo wtedy reprezentują one stałą FALSE). SAT inaczej - terminologia i oznaczenia Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski )) *) Warto zwrócić uwagę, że jedynie dla 2SAT zbiór klauzul Horna i zbiór klauzul coHorna mają część wspólną
36
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Definicja 1: Model referencyjny Model referencyjny - oznaczany FullkSAT - problemu kSAT CNF dla n ponumerowanych zmiennych, gdzie k jest ilością zmiennych w klauzulach jego postaci CNF, konstruowany jest z uwzględnieniem wszystkich możliwych kombinacji ( n 3 ) zmiennych. Dla 3SAT wszystkich możliwych kombinacji jest Każda z możliwych kombinacji zmiennych rozpatrywana jest w kategoriach funkcji logicznych k zmiennych. Każda funkcja w modelu referencyjnym, prócz numeru i { 0-255 } i rzędu R, będzie charakteryzowana uporządkowaną trójką { r, s, t } numerów jej zmiennych oraz rozpiętościami 1, 2 i c. SAT inaczej - terminologia i oznaczenia Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Definicja 3: Rozpiętości funkcji (tak samo – algorytmy genetyczne) Rozpiętość całkowita c jest różnicą numerów pierwszej i trzeciej zmiennej z uporządkowanej trójki zmiennych funkcji. Rozpiętość 1 i 2 jest odpowiednio różnicą numerów drugiej i pierwszej zmiennej oraz różnicą numerów trzeciej i drugiej zmiennej z uporządkowanej trójki zmiennych funkcji. Definicja 2: Rząd funkcji (zaczerpnięto z algorytmów genetycznych) Rząd funkcji R oznacza ilość elementarnych koniunkcji w jej postaci DNF.
37
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski SAT inaczej - terminologia i oznaczenia Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Oznaczenia Funkcje trzech zmiennych będą oznaczane symbolem f, zaś funkcje dwóch zmiennych symbolem h. Wszędzie tam, gdzie będzie to konieczne dla wskazania, o którą funkcję spośród możliwych chodzi, używany będzie dolny indeks. Pominięcie dolnego indeksu oznacza, że może to być dowolna funkcja ze zbioru wszystkich możliwych. Konstruowane według ustalonych kryteriów formuły w modelach referencyjnych dla 3SAT oraz 2SAT, będą oznaczane symbolami i odpowiednio. Formuły konstruowane odrębnie według innych kryteriów niż przyjęte dla formuł i , będą oznaczane symbolami φ i F oraz i G odpowiednio dla 3SAT oraz 2SAT. Dla oznaczenia ilości klauzul w kSAT CNF używany będzie symbol m. Dla oznaczenia ilości funkcji w modelu referencyjnym kSAT CNF używany będzie symbol M.
38
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski SAT inaczej - model referencyjny Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Potrzeba modelu referencyjnego u W zapisie 3SAT CNF można wykorzystać dualizm reprezentowania funkcji trzech zmiennych. W pewnych problemach operowanie koniunkcyjną normalną postacią kanoniczną funkcji (koniunkcja elementarnych alternatyw - klauzul) jest bardziej wygodne, innym razem wygodniejszą jest dysjunkcyjna normalna kanoniczna postać (alternatywa elementarnych koniunkcji - implikantów). u Obie kanoniczne postaci normalne funkcji - dysjunkcyjna i koniunkcyjna - „atomizują” zapis problemu. u Porzucenie „atomizującego” zapisu na rzecz bardziej ogólnego, stwarza szansę spojrzenia na problem w skali „makro” - taką szansę stwarza dualizm definicji funkcji logicznych. u Dowolna operacja dodania, bądź usunięcia choćby jednego członu w formule CNF problemu, może radykalnie zmienić jego status, a parametr m - ilość klauzul pozwala tylko na względne porównywanie problemów między sobą. Uzasadnia to potrzebę dysponowania „stabilnym” problemem odniesienia dla prowadzenia różnorodnych analiz i porównań.
39
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski SAT inaczej - model referencyjny Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Postulowane własności modelu referencyjnego u Ilość funkcji w modelu referencyjnym dla 3SAT powinna być stała. u Na funkcje nie są nakładane żadne ograniczenia (co do jej numeru i rzędu). u Powinien obejmować wszystkie możliwe przypadki problemów 3SAT, zarówno wcześniej wyodrębnione przypadki szczególne jak i nie określony przypadek najgorszy. Traktując model referencyjny jako zbiór elementów - funkcji - o ustalonych parametrach (numer, rząd, rozpiętości), można prowadzić analizy pod kątem np.: - ustalenia charakterystycznych struktur jego elementów (funkcji), - ustalenia możliwych operacji na wyodrębnionych strukturach i ich elementach, - ustalenia wpływu możliwych operacji czy przekształceń na te elementy. Dopuścimy, by jeśli w konkretnym przypadku 3SAT CNF w formule nie występują klauzule pewnych kombinacji zmiennych spośród wszystkich możliwych, odnotować to przez użycie funkcji stałej TRUE (funkcja stała TRUE funkcji trzech zmiennych jest alternatywą ośmiu elementarnych koniunkcji) Możliwość użycia funkcji TRUE powoduje, że KAŻDY dowolny problem 3SAT może być rozpatrywany w kategoriach modelu referencyjnego Full3SAT (uogólnienie odnosi się do dowolnego kSAT, k C).
40
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski SAT inaczej - model referencyjny Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Operacja uprządkowania funkcji w modelu Full3SAT Przyjmując parametry - numer pierwszej zmiennej, rozpiętość d1 i d2 za klucz uporządkowania funkcji modelu referencyjnego - formułę Full3SAT możemy zapisać w postaci: Formuła Ω i gdzie i = 1, 2,..., n-2 jest koniunkcją funkcji trzech zmiennych x i x r x s dla s = i+2,..., n oraz r = i+1,..., s. (pierwsza zmienna ma i-ty numer, trzecia zmienna numery począwszy od i+2 do n). Ilość funkcji w formule Ω i wynosi M i = (n-i)(n-i-1)/2
41
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski SAT inaczej - model referencyjny Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Graficzna ilustracja formuły Full3SAT Numerowane linie poziome służą do odwzorowania odpowiednich zmiennych Owalny kształt oznacza funkcję określonej trójki zmiennych. Dodatkowe pionowe linie rozdzielają pewne charakterystyczne grupy funkcji występujące w formułach Ω i - ułatwia to określenie liczebności funkcji w formułach Ω i.
42
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski SAT inaczej - odwzorowania Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Dla dowolnego problemu 2SAT istnieje odwzorowanie do postaci 3SAT Konstruowanie przekształcenia 2SAT do 3SAT jest możliwe na wiele sposobów. Rozważane przekształcenia dalej nazywać będziemy przekształceniem P1 i P3. W dyskusji obu przekształceń ograniczymy się dowolnego zbioru Θ i Dla rozróżnienia, funkcje 2SAT oznaczać będziemy przez h a ( x i x r ), natomiast funkcje 3SAT przez f b ( x i x r x s ), gdzie a {0,..., 15} jest numerem funkcji dwóch zmiennych zaś b {0,..., 255} numerem funkcji trzech zmiennych.
43
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski SAT inaczej - odwzorowania Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Przekształcenie typu P H1
44
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski SAT inaczej - odwzorowania Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski Przekształcenie typu P H3
45
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski SAT inaczej – przekształcenie P SAT inaczej – przekształcenie P H
46
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski SAT inaczej – przekształcenie P SAT inaczej – przekształcenie P V
47
Wydz. BMiP Zakład Matematyki i Fizyki - Marek Malinowski P H P V 2SAT Q 1 => Ω 1 Ω 1 <= Full2SAT | V NC = P = NP SAT inaczej –> NC = P = NP
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.