Złożoność obliczeniowa/Wykład 14: Pamięć wielomianowa i złożoność wykładnicza
Klasa PSPACE
W tym module zajmiemy się klasą PSPACE, która, przypomnijmy, jest klasą tych języków, które są akceptowane przez maszynę deterministyczną w pamięci wielomianowej.
Na podstawie twierdzenia Savitcha wiemy jednak, że jest ona równa klasie NPSPACE, czyli języków, które są akceptowane przez maszynę niedeterministyczną w pamięci wielomianowej.
Klasa PSPACE posiada wiele naturalnych problemów zupełnych, które omawiamy w następnej części. Zupełność definiujemy przy pomocy wielomianowej redukcji jak w poprzednich rozdziałach.
Problemy PSPACE-zupełne
Najbardziej naturalny i pierwszy problem PSPACE-zupełny, który zdefiniujemy wywodzi się oczywiście z SAT:
Definicja 2.1
Problem Parser nie mógł rozpoznać (błąd składni): {\displaystyle \textnormal{QSAT}}
:
Wejście: formuła logiczna jak dla problemu SAT poprzedzona
dowolną liczbą naprzemiennych kwantyfikatorów: .
Wyjście: czy jest prawdziwa?
Przypomnijmy, że na użytek hierarchii wielomianowej definiowaliśmy problem Parser nie mógł rozpoznać (błąd składni): {\displaystyle \textnormal{QSAT}_i} , który mógł mieć naprzemiennych kwantyfikatorów, natomiast tutaj może być ich dowolna ilość. Fakt, że kwantyfikatory muszą występować na zmianę nie jest istotnym ograniczeniem, gdyż można kwantyfikować po zmiennych, które w formule nie występują. Problem ten w literaturze pojawia się też jako QBF (ang. Quantified Boolean Formula).
Twierdzenie 2.2
Problem Parser nie mógł rozpoznać (błąd składni): {\displaystyle \textnormal{QSAT}} jest PSPACE-zupełny.
Dowód
Oto przykład dwóch innych problemów, których będziemy używać w dalszej części. Ich PSPACE-zupełność jest przedmiotem ćwiczenia końcowego:
Definicja 2.3
Problem IN PLACE ACCEPTANCE (akceptacja w miejscu)
Wejście: maszyna M i słowo
Wyjście: czy maszyna M akceptuje słowo używając pamięci?
Definicja 2.4
Problem IN PLACE DIVERGENCE (rozbieżność w miejscu)
Wejście: maszyna M
Wyjście: czy maszyna M pętli się używając pamięci?
Optymalizacja periodyczna
Wśród problemów PSPACE-zupełnych znajdują się wersje periodyczne (inaczej okresowe) znanych problemów. Jako pierwszy rozważmy problem PERIODIC GRAPH COLORING. Polega on na kolorowaniu grafu periodycznego. Poniższy przykład powinien wszystko wyjaśnić:
ZO-14-0a-rys.jpg(Graf periodyczny)
Na powyższym rysunku widać nieskończony graf periodyczny i jego skończony zwięzły zapis. Krawędź oznaczona etykietą oznacza, że następuje połączenie pomiędzy wierzchołkami z grup odległych o 1. W takim zapisie możemy stosować również etykiety oznaczone większymi liczbami oraz liczbami ujemnymi.
Naszym zadaniem jest obliczenie liczby chromatycznej grafu periodycznego lub stwierdzenie czy jest mniejsza niż dla wersji decyzyjnej. Dla powyższego grafu wynosi ona 2, mimo, iż graf jest nieskończony!
Podobnie można przedstawić problem PERIODIC SAT. Tym razem formuła jest nieskończona i periodyczna, natomiast w jej zwięzłym zapisie możemy stosować klauzule postaci , w których oznacza powiązanie pomiędzy zmiennymi z sąsiednich grup. Podobnie jak w normalnym SAT pytamy o istnienie wartościowania spełniającego.
Analizowanie przedstawionych powyżej nieskończonych struktur może wydawać się zadaniem niewykonalnym, jednakże oba powyższe problemy okazują się być PSPACE-zupełne.
Ćwiczenie 2.5
Udowodnij, że problem PERIODIC SAT jest PSPACE-zupełny.