To bardzo miłe pytanie, o którym wiele myślałem: czy fakt, że problemem jest czy wpływa na złożoność problemu w najgorszym przypadku? NPPSPACECo dziwniejsze, czy takie rozróżnienie rzeczywiście wpływa na złożoność problemu w „typowym przypadku” w praktyce?
Intuicja mówi, że problem z jest trudniejszy niż z , bez względu na to, jaką miarę złożoności stosujesz. Ale sytuacja jest subtelna. Może być na przykład, że (formułki logiczne, kwantyfikowany kanoniczny problem z ) występuje w podwykonawczym czasie, i tylko wtedy, gdy (Zadowalający, kanoniczny problem z niepełnym ) jest w podwykładniczym czasie. (Jeden kierunek jest oczywiste!; Drugi kierunek będzie głównym wynik) Jeśli to prawda, to może od „Chcę tylko, aby rozwiązać ten problem” punktu widzenia, to nie jest wielka sprawa, czy problem jest -Complete lubPSPACENPQBFPSPACESATNPPSPACENP-complete: tak czy inaczej, algorytm subwykładniczy dla jednego implikuje algorytm subwykładniczy dla drugiego.
Pozwólcie, że będę orędownikiem diabła, i dam wam przykład, w którym jeden problem okazuje się „trudniejszy” niż drugi, ale okazuje się „łatwiejszy do rozwiązania” niż drugi.
Niech będzie logiczną formułą dla zmiennych, gdzie jest parzyste. Załóżmy, że masz wybór między dwiema formułami, które chcesz zdecydować:F(x1,…,xn)nn
Φ1=(∃x1)(∃x2)⋯(∃xn−1)(∃xn)F(x1,…,xn) .
Φ2=(∃x1)(∀x2)⋯(∃xn−1(∀xn)F(x1,…,xn)
(To znaczy, w , kwantyfikatory zmieniają się).Φ2
Który z nich jest łatwiejszy do rozwiązania? Formuły typu , czy formuły typu ?Φ1Φ2
Można by pomyśleć, że oczywistym wyborem jest , ponieważ decyzja jest tylko , natomiast to problem z . Ale w rzeczywistości, według naszych najbardziej znanych algorytmów, jest łatwiejszym problemem. Nie mamy pojęcia, jak rozwiązać dla ogólnego w mniej niż krokach. (Gdybyśmy mogli to zrobić, mielibyśmy nowe dolne granice formuły!) Ale można łatwo rozwiązać dla dowolnego w losowym czasie , używając losowego wyszukiwania drzewa gry! Dla odniesienia, patrz Rozdział 2, Rozdział 2.1, w Motwani i Raghavan.Φ1NPΦ2PSPACEΦ2Φ1F2nΦ2FO(2.793n)
Intuicja polega na tym, że dodanie uniwersalnych kwantyfikatorów faktycznie ogranicza problem , czyniąc go łatwiejszym do rozwiązania niż trudniejszym. Algorytm wyszukiwania drzewa gry opiera się w dużej mierze na naprzemiennych kwantyfikatorach i nie może obsłużyć arbitralnych kwantyfikacji. Nadal jednak chodzi o to, że problemy mogą czasem stać się „prostsze” pod jedną miarą złożoności, nawet jeśli mogą wyglądać „trudniej” pod inną miarą.