Test Arka
Przedmiot & Z³o¿ono¶æ obliczeniowa
Modu³ & 13
Tytu³ & Pamiêæ logarytmiczna i hierarchia wielomianowa
Opracowanie & Przemys³aw Broniek
{ Syllabus}
Pamiêæ logarytmiczna i hierarchia wielomianowa
- klasy L, NL i coNL,
- Twierdzenie Immermana-Szelepcsényi'ego,
- klasy coNP i DP,
- maszyny alternuj±ce,
- hierarchia wielomianowa.
Klasy L, NL i coNL
W tym rozdziale zajmiemy siê klasami z³o¿ono¶ci, w których dajemy bardzo restrykcyjne wymagania odno¶nie zu¿ywanej pamiêci, a mianowicie ograniczamy jej ilo¶æ przez funkcjê logarytmiczn±. Przypomnijmy:
- Klasa L = SPACE(log), to klasa tych jêzyków, które mog± byæ akceptowane w deterministycznej pamiêci logarytmicznej,
- Klasa NL = NSPACE(log), to klasa tych jêzyków, które mog± byæ akceptowane w niedeterministycznej pamiêci logarytmicznej,
- Klasa coNL = coNSPACE(log), to dope³nienie klasy tych jêzyków, które mog± byæ akceptowane w niedeterministycznej pamiêci logarytmicznej,
Na podstawie nastêpnego rozdzia³u i twierdzenia Immermana-Szelepcsényi'ego dowiemy siê, ¿e NL=coNL . Natomiast pytanie czy L=NL pozostaje wci±¿ problemem otwartym.
Przyjrzymy siê teraz problemom zupe³nym w klasie NL. Zupe³no¶æ definiujemy przy pomocy redukcji w pamiêci logarytmicznej, gdy¿ jak wiemy, wszystkie z powy¿szych klas s± zawarte w klasie P (chocia¿ nie wiemy, czy ¶ci¶le). Dopuszczenie redukcji wielomianowej zniwelowa³oby jakiekolwiek ró¿nice pomiêdzy jêzykami, gdy¿ sama redukcja mia³aby moc obliczeniow± pozwalaj±c± rozwi±zaæ wszystkie problemy z tych klas. Poni¿szy problem okazuje siê byæ NL-zupe³ny:
Definicja [Uzupelnij]
Problem REACHABILITY:
Wej¶cie: Graf skierowany oraz wierzcho³ki i .
Wyj¶cie: Czy istnieje ¶cie¿ka od do w ?
Ćwiczenie
Bardzo ciekawy rezultat, który zbli¿y³ nas do odpowiedzi na pytanie czy L=NL, uzyska³ w 2004 Reingold. Pokaza³ on, ¿e problem UNDIRECTED REACHABILITY, czyli osi±galno¶æ w grafie nieskierowanym nale¿y do klasy L.
Twierdzenie Immermana-Szelepcsényi'ego
Ten rozdzia³ po¶wiêcony jest bardzo ciekawemu i ca³kiem m³odemu wynikowi udowodnionemu niezale¿nie przez Neila Immermana i Róberta Szelepcsényi'ego w roku 1987, za który otrzymali w 1995 nagrodê Gödel'a.
Twierdzenie mówi o tym, ¿e klasy niedeterministyczne z³o¿ono¶ci pamiêciowej s± zamkniête na dope³nienie:
Twierdzenie [Uzupelnij]
Dowód [Uzupelnij]
Klasy coNP i DP
Wprowadzili¶my ju¿ zarówno klasê NP jak i pojêcie dope³nieñ klas. Przyjrzyjmy siê bli¿ej klasie coNP. Klasa NP, jest to zbiór tych jêzyków, dla których mo¿emy ³atwo weryfikowaæ przynale¿no¶æ s³ów. Klasa coNP natomiast, to zbiór tych jêzyków, dla których mo¿emy ³atwo weryfikowaæ, ¿e s³owo nie nale¿y do jêzyka.
Podobnie jak dla NP i twierdzenia Fagina, mo¿na scharakteryzowaæ coNP jako zbiór w³asno¶ci teoriografowych wyra¿alnych w uniwersalnej logice drugiego rzêdu.
Oto przyk³ady problemów z klasy coNP:
Definicja [Uzupelnij]
Problem TAUTOLOGY:
Wej¶cie: formu³a logiczna jak dla problemu SAT.
Wyj¶cie: czy ka¿de warto¶ciowanie spe³nia ?
Definicja [Uzupelnij]
Problem HAMILTON PATH COMPLEMENT:
Wej¶cie: graf nieskierowany .
Wyj¶cie: czy nie zawiera ¶cie¿ki Hamiltona?
W powy¿szych problemach weryfikacja negatywna s³owa wej¶ciowego jest ³atwa, bo opiera siê na zgadniêciu warto¶ciowania niespe³niaj±cego lub ¶cie¿ki Hamiltona.
Nietrudno udowodniæ (patrz æwiczenie koñcowe), ¿e s± to problemy zupe³ne dla klasy coNP. Nie jest to nic zaskakuj±cego, bowiem równie prosto mo¿na udowodniæ, ¿e je¿eli jest NP-zupe³ny, to jego dope³nienie jest coNP-zupe³ne.
Jak wiele pytañ w teorii z³o¿ono¶ci obliczeniowej równie¿ i to, czy NP=coNP pozostaje otwarte. Mo¿emy jedynie stwierdziæ, ¿e je¿eli P=NP, to NP=coNP, gdy¿ P jest zamkniêta na dope³nienie. Jednak ju¿ implikacja w drug± stronê nie jest znana. Inna podobna implikacja to:
Ćwiczenie
Poni¿szy rysunek przedstawia relacje pomiêdzy poznanymi klasami i omawian± za chwilê klas± DP:
{1cm}
[width=10cm]{ZO-13-1-rys.jpg}
Relacje pomiêdzy klasami NP, coNP i DP
{1cm}
Oczywi¶cie przygl±daj±c siê wszystkim takim rysunkom nale¿y pamiêtaæ, ¿e mog± one w wielu miejscach kolapsowaæ.
Klasa DP
Zastanówmy siê nad nastêpuj±cym problemem:
Przykład [Uzupelnij]
Problem EXACT TSP:
Wej¶cie: graf nieskierowany wa¿ony i liczba
Wyj¶cie: czy optymalna trasa komiwoja¿era dla ma warto¶æ dok³adnie ?
Jest to wersja dok³adna znanego problemu optymalizacyjnego -- problemu komiwoja¿era. Wiemy ¿e wersja decyzyjna TSP(D) jest NP-zupe³na. Nietrudno pokazaæ równie¿, ¿e EXACT TSP i TSP(D) s± wielomianowo równowa¿ne (æwiczenie koñcowe), tzn., ¿e je¶li jeden z nich ma rozwi±zanie w czasie wielomianowym to drugi te¿. W tym rozdziale sklasyfikujemy z³o¿ono¶æ EXACT TSP dok³adniej przy pomocy klasy DP. Nie umiemy bowiem pokazaæ, ¿e EXACT TSP nale¿y do NP, wszak jak po¶wiadczyæ i szybko zweryfikowaæ, ¿e d³ugo¶æ optymalnej trasy wynosi dok³adnie ? Widzimy, ¿e odpowied¼ na to pytanie wymaga stwierdzenia, ¿e trasa ma d³ugo¶æ co najmniej i co najwy¿ej , co sugeruje pewne specyficzne po³±czenie problemu TSP(D) i jego dope³nienia.
Definicja [Uzupelnij]
Klasa DP to zbiór jêzyków takich, ¿e , gdzie natomiast .
Przy tak postawionej definicji EXACT TSP nale¿y do DP. Jest on bowiem przeciêciem jêzyka TSP(D) i TSP(D) COMPLEMENT, tzn. koszt trasy wynosi dok³adnie , gdy jest równy co najwy¿ej (to przynale¿no¶æ do TSP(D)) oraz co najmniej (to przynale¿no¶æ s³owa do TSP(D) COMPLEMENT).
Klasa DP posiada problemy zupe³ne. Rozwa¿my problem nastêpuj±cy:
Przykład [Uzupelnij]
Problem SAT-UNSAT:
Wej¶cie: formu³y logiczne i jak dla SAT.
Wyj¶cie: czy formu³a jest spe³nialna, natomiast niespe³nialna?
Ćwiczenie
Równie¿ wspomniany na pocz±tku problem EXACT TSP jest DP-zupe³ny. Mo¿na rozwa¿aæ tak¿e wiele innych wersji EXACT znanych problemów NP-zupe³nych, które okazuj± siê DP-zupe³ne.
Klasa DP zawiera tak¿e problemy DP-zupe³ne innego rodzaju:
Przykład [Uzupelnij]
Problem CRITICAL SAT:
Wej¶cie: formu³a logiczna jak dla SAT.
Wyj¶cie: czy formu³a jest nie spe³nialna, natomiast usuniêcie dowolnej klauzuli sprawia, ¿e jest spe³nialna?
Przykład [Uzupelnij]
Problem CRITICAL HAMILTON PATH:
Wej¶cie: graf nieskierowany
Wyj¶cie: czy nie ma ¶cie¿ki Hamiltona, natomiast dodanie dowolnej krawêdzi do powoduje, ¿e ju¿ j± posiada?
Maszyny alternuj±ce
W tym rozdziale przedstawimy ciekawe uogólnienie niedeterminizmu, zwane alternacj±. Przypomnijmy, ¿e maszyna niedeterministyczna akceptuje s³owo, gdy na którejkolwiek ze ¶cie¿ek obliczeñ trafi do stanu akceptuj±cego.
Maszyna alternuj±ca ma wiêcej mo¿liwo¶ci. Ka¿dy z jej stanów jest oznaczony poprzez "AND" lub "OR", które nazywamy odpowiednio stanami uniwersalnymi i egzystencjalnymi.
Gdy maszyna jest w stanie typu "OR", to dokonuje akceptacji gdy dowolna ze ¶cie¿ek obliczeñ wychodz±cych z niego akceptuje s³owo. Tak w³a¶nie dzia³aj± zawsze zwyk³e maszyny niedeterministyczne.
Stany typu "AND" s± rozszerzaj± t± funkcjonalno¶æ. Maszyna dokonuje akceptacji bêd±c w takim stanie, gdy ka¿da ze ¶cie¿ek obliczeñ wychodz±cych z tego stanu jest akceptuj±ca.
Miarê z³o¿ono¶ci czasowej i pamiêciowej maszyn alternuj±cych definiujemy zupe³nie tak jak dla maszyn niedeterministycznych, tzn. funkcja jest miar± z³o¿ono¶ci czasowej, gdy ka¿da ze ¶cie¿ek obliczeñ ma d³ugo¶æ ograniczon± przez oraz z³o¿ono¶æ pamiêciow± gdy na ka¿dej ze ¶cie¿ek obliczeñ maszyna zu¿ywa co najwy¿ej pamiêci.
Definicja [Uzupelnij]
Poprzez Parser nie mógł rozpoznać (nieznana funkcja „\textsc”): {\displaystyle \textsc{ATIME}(f(n))} oznaczamy zbiór jêzyków takich, ¿e s± akceptowane przez alternuj±c± maszynê Turinga o z³o¿ono¶ci czasowej .
Definicja [Uzupelnij]
Poprzez Parser nie mógł rozpoznać (nieznana funkcja „\textsc”): {\displaystyle \textsc{ASPACE}(f(n))} oznaczamy zbiór jêzyków takich, ¿e s± akceptowane przez alternuj±c± maszynê Turinga o z³o¿ono¶ci pamiêciowej .
Wprowadzamy te¿ skróty dla najpopularniejszych klas:
- Klasa AP = ATIME ATIME , to klasa tych jêzyków, które mog± byæ akceptowane w alternuj±cym czasie wielomianowym,
- Klasa AL = ASPACE(log), to klasa tych jêzyków, które mog± byæ akceptowane w alternuj±cej pamiêci logarytmicznej,
Nietrudno siê domy¶liæ, ¿e alternacja jest silniejsza ni¿ niedeterminizm z definicji dzia³ania maszyn. Wiemy zatem, w szczególno¶ci, ¿e zawiera w sobie . Poni¿sze æwiczenie pokazuje, ¿e o AP mo¿na powiedzieæ wiêcej:
Ćwiczenie
To jednak nie wszystko co potrafi klasa AP. Znajduj± siê w niej jêzyki, o których nie wiemy czy nale¿± do NP lub coNP.
Definicja [Uzupelnij]
Problem MIN-FORMULA:
Wej¶cie: formu³a logiczna jak dla problemu SAT.
Wyj¶cie: czy jest minimalna, tzn. czy ¿adna krótsza formu³a nie jest jej równowa¿na?
Ćwiczenie
Teraz przedstawimy kilka relacji pomiêdzy klasami obliczeñ alternuj±cych:
Twierdzenie [Uzupelnij]
Nastêpuj±ce relacje s± prawdziwe:
- Je¶li to ATIME SPACE ,
- Je¶li to SPACE ATIME ,
- Je¶li log to ASPACE TIME .
- Je¶li log to ASPACE TIME .
Dowód [Uzupelnij]
Dziêki wymienionym relacjom pomiêdzy klasami alternuj±cymi mo¿emy udowodniæ kilka dok³adnych równo¶ci pomiêdzy klasami, a to rzadka rzecz w teorii z³o¿ono¶ci. Wiemy zatem, ¿e:
- AL=P,
- APSPACE = EXP,
- AP=PSPACE.
Hierarchia wielomianowa
W tej czê¶ci zdefiniujemy ca³± hierarchiê klas ponad znanymi nam ju¿ P i NP, która stanowi pewne uogólnienie problematyki spotkanej w klasie DP.
W poprzednich rozdzia³ach zdefiniowali¶my pojêcie maszyny z wyroczni± na jêzyk oznaczanej przez . Przypomnijmy, ¿e jest to zwyk³a maszyna z dodatkow± mo¿liwo¶ci± zadania pytania postaci "czy ?" które kosztuje jedn± jednostkê czasu. Rozszerzenie tego pojêcia na klasy jest naturalne. Poprzez oznaczamy zbiór tych jêzyków, które mog± byæ rozstrzygane przez maszyny z klasy z wyroczni± na dowolny jêzyk z klasy .
Ta klasa okazuje siê byæ mocniejsza od DP, bowiem w DP mogli¶my zadañ pytanie tylko raz (dotycz±ce coNP, ale w sensie wyroczni dzia³a to jak pytanie do NP), a tutaj dowoln± liczbê razy i to na dodatek pytañ adaptywnych, tzn. takich, które mog± zale¿eæ od wyników odpowiedzi na poprzednie z nich. Kolejn± interesuj±c± klas± jest . Wszystkie te klasy daj± nam coraz wiêksze mo¿liwo¶ci, lecz oczywi¶cie nie wiadomo, czy s± to ¶ci¶le wiêksze klasy, choæ panuje takie przekonanie:
{1cm}
[width=10cm]{ZO-13-3-rys.jpg}
Klasy relatywne
{1cm}
Postêpuj±c w ten sposób Meyer i Stockmeyer w latach 70 zdefiniowali ca³± hierarchiê klas:
Definicja [Uzupelnij]
Hierarchia wielomianowa, to ci±g klas indeksowany poprzez :
- dla ,
- dla ,
- dla .
Dodatkowo poprzez oznaczamy sumê wszystkich tych klas, czyli:
.
Poniewa¿ na poziomie zerowym wszystkie elementy hierarchii to P, wiêc na poziomie pierwszym, poniewa¿ taka wyrocznia nic nie daje, otrzymujemy . Drugi poziom, to klasy. Warto zwróciæ uwagê, ¿e jest dope³nieniem na ka¿dym poziomie wprost z definicji. Zawieranie siê poszczególnych elementów na jednym poziomie obrazuje poni¿szy rysunek:
{1cm}
[width=10cm]{ZO-13-4-rys.jpg}
Hierarchia wielomianowa
{1cm}
Do tej pory czêsto odwo³ywali¶my siê do odpowiednio¶ci pomiêdzy klas± NP a szczególnymi relacjami wielomianowo zrównowa¿onymi i rozstrzygalnymi. Przedstawimy teraz zgrabn± charakteryzacjê klas z hierarchii wielomianowej przy pomocy podobnego kryterium:
Twierdzenie [Uzupelnij]
Niech bêdzie jêzykiem, . Jêzyk nale¿y do wtedy i tylko wtedy, gdy istnieje wielomianowo zrównowa¿ona i rozstrzygalna relacja (-argumentowa), taka, ¿e dok³adnie wtedy, gdy takie, ¿e jest spe³nione (-ty kwantyfikator jest uniwersalny, gdy jest parzyste, natomiast egzystencjalny, gdy jest nieparzyste).
Hierarchia wielomianowa jest struktur± dosyæ wra¿liw± na kolapsy, tzn. równo¶ci klas na pewnym poziomie. Okazuje siê, ¿e wtedy przenosz± siê one automatycznie w górê:
Ćwiczenie
Zachodzi równie¿ podobny fakt. Otó¿, je¶li P=NP (albo tylko NP=coNP), to hierarchia kolapsuje ju¿ na pierwszym poziomie.
Mo¿na by siê zastanowiæ, czy kolejne poziomy hierarchii wielomianowej s± interesuj±ce z punku widzenia problemów, które pozwalaj± one rozwi±zaæ. Okazuje siê, ¿e na ka¿dym poziomie hierarchii posiada ona problemy zupe³ne:
Definicja [Uzupelnij]
Problem QSAT :
Wej¶cie: formu³a logiczna jak dla problemu SAT poprzedzona naprzemiennymi grupami kwantyfikatorów egzystencjalnych i uniwersalnych:
.
Wyj¶cie: czy jest prawdziwa?
Twierdzenie [Uzupelnij]
Problem jest -zupe³ny dla .
Jednak pytanie czy istnieje problem PH-zupe³ny (czyli zupe³ny dla ca³ej hierarchii) jest otwarte i panuje przekonanie, ¿e tak nie jest, gdy¿:
Ćwiczenie
Jak silna jest ca³a hierarchia? Mo¿na ³atwo zauwa¿yæ, ¿e zawiera siê ona w znanej ju¿ nam klasie PSPACE, ze wzglêdu na fakt, ¿e mo¿na ³atwo rozstrzygaæ w wielomianowej pamiêci relacje, charakteryzuj±ce problemy z PH, które opisywali¶my wcze¶niej.
Jak nietrudno siê domy¶liæ pytanie, czy PH=PSPACE jest otwarte. Bardzo interesuj±ce jest jednak, ¿e gdyby równo¶æ zachodzi³a, to poniewa¿ PSPACE zawiera problemy zupe³ne, to PH równie¿ by je zawiera³a, st±d zapad³a by siê na pewnym skoñczonym poziomie. St±d przekonanie, ¿e PH zawiera siê silnie w PSPACE.
Na koniec ciekawy rezultat autorstwa Seinosuke Tody (laureata nagrody Gödel'a z roku 1998) zwi±zany z klas± PH. Pokaza³ on, ¿e , czyli wyrocznia na klasê jest niesamowicie silna i pozwala poch³on±æ tak misternie zbudowan± piramidê coraz silniejszych klas.
Æwiczenia dodatkowe
Ćwiczenie
Ćwiczenie
Ćwiczenie