Logika dla informatyków/Logika drugiego rzędu: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Przemo (dyskusja | edycje)
Przemo (dyskusja | edycje)
Linia 170: Linia 170:


Formuła <math>\displaystyle \varphi_1</math> postaci <math>\displaystyle \forall x(\bigwedge_{n<i\neq j\leq
Formuła <math>\displaystyle \varphi_1</math> postaci <math>\displaystyle \forall x(\bigwedge_{n<i\neq j\leq
n+\ell}\lnot (X_i(x)\land X_j(x))\land\Lor_{i=n+1}^{n+\ell}X_i(x))</math>
n+\ell}\lnot (X_i(x)\land X_j(x))\wedge\bigvee{i=n+1}^{n+\ell}X_i(x))</math>
mówi o danym słowie, że w każdym kroku obliczenia automat był w jednym
mówi o danym słowie, że w każdym kroku obliczenia automat był w jednym
i tylko jednym stanie.
i tylko jednym stanie.

Wersja z 08:53, 3 paź 2006

Logika drugiego rzędu

Składnię logiki drugiego uzyskujemy przez rozszerzenie zbioru reguł składniowych dla logiki pierwszego rzędu o kwantyfikatory wiążące symbole relacyjne. Z przyczyn technicznych tym razem wygodnie nam będzie przyjąć, że podstawowymi spójnikami logicznymi są ¬, i .

Definicja 12.1

Definicja formuł drugiego rzędu jest indukcyjna, podobnie jak analogiczna Definicja 2.5 dla logiki pierwszego rzędu. Jednak tym razem nie ustalamy sygnatury z góry.

  • Każda formuła atomowa nad sygnaturą Σ jest formułą drugiego rzędu nad sygnaturą Σ.
  • Jeśli φ,ψ są formułami drugiego rzędu nad sygnaturą Σ, to φψ jest też formułą drugiego rzędu nad sygnaturą Σ.
  • Jeśli φ jest formułą drugiego rzędu nad sygnaturą Σ, to ¬φ jest też formułą drugiego rzędu nad sygnaturą Σ.
  • Jeśli φ jest formułą drugiego rzędu nad sygnaturą Σ a Parser nie mógł rozpoznać (nieznana funkcja „\ZI”): {\displaystyle \displaystyle x\in\ZI} jest zmienną indywiduową, to xφ jest też formułą drugiego rzędu nad sygnaturą Σ.
  • Jeśli φ jest formułą drugiego rzędu nad sygnaturą Σ, a R jest symbolem relacji k-argumentowej z Σ, to Rφ jest formułą drugiego rzędu nad sygnaturą Σ{R}.

Definicja semantyki jest też podobna jak dla logiki pierwszego rzędu.

  • Znaczenie formuł atomowych jest identyczne jak w logice pierwszego rzędu.
  • Parser nie mógł rozpoznać (błąd składni): {\displaystyle \displaystyle (\mathfrak{A},\varrho)\vDash\varphi\vee\psi}} , gdy zachodzi (𝔄,ϱ)φ lub zachodzi (𝔄,ϱ)ψ.
  • (𝔄,ϱ)¬φ, gdy nie zachodzi (𝔄,ϱ)φ.
  • (𝔄,ϱ)xφ wtedy i tylko wtedy, gdy istnieje takie aA, że zachodzi (𝔄,ϱxa)φ.
  • Jeśli 𝔄=A,R1,,f1, jest strukturą sygnatury Σ{R} oraz ϱ jest wartościowaniem w tej strukturze, to (𝔄,ϱ)Rφ wtedy i tylko wtedy gdy istnieje struktura 𝔄 nad sygnaturą Σ o postaci A,R,R1,,f1 spełniająca (𝔄,ϱ)φ.

Dualny kwantyfikator drugiego rzędu wprowadzamy jako skrót notacyjny:

Parser nie mógł rozpoznać (błąd składni): {\displaystyle \displaystyle \forall R\varphi \hspace{4cm} } oznacza ¬R¬φ.

Nieaksjomatyzowalność logiki drugiego rzędu

Spójrzmy na następujący przykład zdania Ind nad sygnaturą arytmetyki:

R(R(0)n(R(n)R(s(n)))nR(n)).

Orzeka ono, że każda relacja jednoargumentowa (czy podzbiór uniwersum), która zawiera 0 i jest zamknięta ze względu na operację następnika, zawiera wszystkie elementy uniwersum. Jest to wyrażona w języku drugiego rzędu zasada indukcji matematycznej. Twierdzenie Dedekinda orzeka, że po dołożeniu tego aksjomatu do zwykłych aksjomatów arytmetyki Peano PA (z których można wtedy usunąć dotychczasowy schemat aksjomatu indukcji), otrzymujemy aksjomatyzację kategoryczną, czyli taką, która ma z dokładnością do izomorfizmu tylko jeden model 𝔑 - ten standardowy. Zauważmy przy okazji, że przykład ten wskazuje, iż dla logiki drugiego rzędu nie zachodzi górne twierdzenie Skolema-Lowenheima.

Wracając do poprzedniego przykładu, widzimy, że zbiór wszystkich zdań φ logiki pierwszego rzędu, dla których PA{Ind}φ, jest tożsamy z 𝐓𝐡(𝔑). Możemy teraz udowodnić, że w odróżnieniu od logiki pierwszego rzędu,

Twierdzenie 12.2

Logika drugiego rzędu nie ma żadnego pełnego i poprawnego systemu dowodowego.

Dowód

Zbiór konsekwencji semantycznych {φ|PA{Ind}φ}=𝐓𝐡(𝔑) nie jest nawet rekurencyjnie przeliczalny, na mocy Wniosku 9.3. Tymczasem dla każdego poprawnego systemu dowodzenia X dla logiki drugiego rzędu, zbiór formuł wyprowadzalnych z rekurencyjnego zbioru PA{Ind} jest rekurencyjnie przeliczalny.

Widzimy teraz jasno, że logika drugiego rzędu jest niezwykle skomplikowana w badaniu, gdyż właściwie żadne z pożytecznych twierdzeń dotyczących logiki pierwszego rzędu nie zachodzi dla logiki drugiego rzędu. Jedynym, co zostaje, to odpowiednia modyfikacja gier Ehrenfeuchta i metoda Fraisse. Jednak ich praktyczna użyteczność jest również znikoma wobec ich złożoności. Np.w grze muszą występować rundy, w których gracze wybierają i zaznaczają całe relacje na uniwersum obu struktur. Jednak dla bardzo ograniczonych syntaktycznie fragmentów logiki drugiego rzędu możliwym staje się zapanowanie nad strategiami w odpowiadających im uproszczonych wersjach gry. Tymi właśnie metodami udowodniono kilka twierdzeń o niemożności zdefiniowania w różnych fragmentach logiki drugiego rzędu różnych konkretnych własności.

W dalszym ciągu tego rozdziału dowiemy się, jaki jest stopień trudności pytań o wyrażalność bądź niewyrażalność różnych własności w logice drugiego rzędu.

Równoważność logiki MSO i automatów skończonych

W zastosowaniach często spotyka się różne fragmenty logiki drugiego rzędu, która w całości dla wielu zastosowań jest zbyt silna. W tym rozdziale będziemy zajmowali się monadyczną logiką drugiego rzędu, która jest fragmentem logiki drugiego rzędu, powstałym przez ograniczenie kwantyfikacji drugiego rzędu tylko do relacji jednoargumentowych (czyli zbiorów). Na oznaczenie tej logiki powszechnie stosuje się skrót MSO (od Monadic Second Order).

MSO jest logiką bardzo często pojawiającą się w związku z informatyką. Tutaj zaprezentujemy klasyczny wynik, łączący tę logikę z teorią automatów skończonych.

Niech Σn będzie sygnaturą złożoną z symboli ,X1,,Xn, w której wszystkie symbole relacyjne Xi są jednoargumentowe.

Definicja 12.3

Model sygnatury Σn nazwiemy modelem-słowem gdy jego nośnikiem jest skończony odcinek początkowy zbioru liczb naturalnych a interpretacją symbolu jest naturalny liniowy porządek liczb. Zbiór modeli-słów nad Σn będziemy oznaczać Wn.

Skorzystamy też tutaj z naturalnej wzajemnie jednoznacznej odpowiedniości pomiędzy modelami-słowami a niepustymi słowami nad alfabetem An={0,1}n: słowu wAn+ odpowiada model 𝔄(w)Wn o mocy równej długości w, a jego element k należy do interpretacji relacji Xi wtedy i tylko wtedy, gdy k-ta litera słowa w jest ciągiem zerojedynkowym, który ma jedynkę na pozycji i.

Odtąd będziemy momentami umyślnie zacierali rozróżnienie pomiędzy słowami a odpowiadającymi im modelami-słowami. Zbiór {𝔄Wn|𝔄φ} można więc naturalnie uważać za język słów nad An.

Sformułowane przez nas twierdzenie stosuje się wprost tylko do alfabetów o mocy postaci 2n. Ponieważ jednak każdy język regularny można traktować (po odpowiednim zakodowaniu) jako język nad takim właśnie alfabetem, z którego nie wszystkie litery są wykorzystywane, ograniczenie to nie narusza ogólności naszych rozważań.

Twierdzenie 12.4 (Buchi, Elgot)

Dla każdego zdania φ monadycznej logiki drugiego rzędu zbiór {wAn+|𝔄(w)φ} jest regularny, oraz dla każdego języka regularnego L nad An istnieje takie zdanie φ logiki MSO, że

{wAn+|𝔄(w)φ}=L{ϵ}.

Czasami treść tego twierdzenia wyraża się sloganem MSO=Reg.

W myśl tego twierdzenia, MSO można traktować jako jeszcze jeden formalizm służący definiowaniu (niepustych) języków regularnych, oprócz powszechnie znanych wyrażeń regularnych, automatów skończonych i gramatyk regularnych.

k

Dowód

Zaczniemy od prostszej drugiej części twierdzenia. Niech M=Q,An,q0,Δ,F będzie automatem skończonym rozpoznającym L, gdzie Q to zbiór stanów, q0Q to stan początkowy, FQ to zbiór stanów akceptujących a ΔQ×An×Q to relacja przejścia. Niech Q={q1,,q}. Chcemy wyrazić za pomocą zdania MSO, że istnieje akceptujące obliczenie M na danym słowie.

Stanom M będą odpowiadały dodatkowe symbole relacji jednoargumentowych Xn+1,,Xn+. Początkowo będziemy więc mieli do czynienia z modelami-słowami nad większą sygnaturą Σn+. Modele te mają odpowiadać obliczeniom M na właściwym słowie wejściowym.

Formuła φ1 postaci x(n<ijn+¬(Xi(x)Xj(x))i=n+1n+Xi(x)) mówi o danym słowie, że w każdym kroku obliczenia automat był w jednym i tylko jednym stanie.

Formuła φ2 postaci xy(xyXn+1(x)) mówi, że w momencie rozpoczęcia obliczenia automat był w stanie początkowym.

Formuła φ3 postaci Parser nie mógł rozpoznać (nieznana funkcja „\Lor”): {\displaystyle \displaystyle \exists x\forall y(y\leq x \land \Lor_{q_i\in F}X_{n+i}(x))} mówi, że w momencie zakończenia obliczenia automat był w jednym ze stanów akceptujących.

Formuła φ4 jest postaci Parser nie mógł rozpoznać (nieznana funkcja „\Lor”): {\displaystyle \displaystyle \forall x\forall y (\lnot\exists z( x<z\land z< y)\to \Lor_{\langle q_i,\vec{a},q_k\rangle\in \Delta}X_{n+i}(x)\land\psi_{\vec{a}}(x)\land X_{n+k}(y))} , gdzie a=a1an jest literą z An, zaś ψa(x) jest formułą Parser nie mógł rozpoznać (nieznana funkcja „\Land”): {\displaystyle \displaystyle \Land_{\{i~|~a_i=1\}}X_i(x)\land \Land_{\{i~|~a_i=0\}}\lnot X_i(x)} . Formuła ta mówi, że dla każdych dwóch bezpośrednio po sobie następujących pozycji w słowie, przejście pomiędy nimi odbyło się zgodnie z jedną z możliwości dostępnych w relacji przejścia automatu M.

Teraz zdanie

Xn+1Xn+(φ1φ2φ3φ4)

orzeka, że istnieje akceptujące obliczenie automatu M na danym słowie.

Przechodzimy teraz do dowodu pierwszej części. Tym razem dla danego zdania MSO musimy skonstruować automat skończony, który akceptuje dokładnie te słowa nad An, w których to zdanie jest prawdziwe.

W pierwszym kroku zastąpimy MSO przez trochę inną logikę, którą nazwiemy MSO0. Pokażemy, że jej formuły definiują wszystkie języki modeli-słów, które można zdefiniować w MSO.

Specyficzną cechą MSO0 jest to, że nie ma w niej zmiennych indywiduowych (czyli tych, których wartościami są elementy) ani wiążących je kwantyfikatorów, a tylko symbole relacji i kwantyfikatory drugiego rzędu. Natomiast jest znacznie więcej formuł atomowych.

Oto definicja składni i jednocześnie semantyki MSO0 -- oczywiście indukcyjna. Wobec braku zmiennych pierwszego rzędu w definicji semantyki nie występuje wartościowanie.

  • Formuła atomowa XiXj jest prawdziwa w modelu Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \displaystyle \strA\in W_n} gdy relacja Xi jest zawarta w relacji Xj.
  • Formuła atomowa Singl(Xi) jest prawdziwa w modelu Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \displaystyle \strA\in W_n} gdy relacja Xi jest singletonem (to właśnie kwantyfikowaniem
 po relacjach, które są singletonami zastąpimy kwantyfikację po
 elementach obecną w MSO).
  • Formuła atomowa LessEq(Xi,Xj) jest prawdziwa w modelu Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \displaystyle \strA\in W_n} , gdy wszystkie elementy w relacji Xi są mniejsze bądĽ równe
 od wszystkich elementów w relacji Xj.
  • Jeśli φ,ψ są formułami MSO0 a Xi jest
 symbolem relacyjnym, to formułami są także Parser nie mógł rozpoznać (błąd składni): {\displaystyle \displaystyle \varphi\lor\psi,\   \lnot\varphi}
 i Xiφ, których semantyka jest
 standardowa.

Tłumaczenie danego zdania φ z MSO nad Σn na równoważne mu w Wn zdanie φ~ w MSO0 definiuje się następująco. Po pierwsze, zamieniamy nazwy związanych zmiennych pierwszego rzędu tak, że zmienna wiązana przez każdy kwantyfikator jest inna. Bez utraty ogólności możemy założyć, że są to zmienne x1,,x. Teraz wszystkim zmiennym występującym w φ przypisujemy dodatkowe, nowe symbole relacji, powiedzmy, że zmiennej xi przypisujemy Xn+i.

  • Xi(xj)~ to Xn+jXi.
  • (xi=xj)~ to Xn+iXn+jXn+jXn+i.
  • (xixj)~ to

LessEq(Xn+i,Xn+j).

  • (φψ)~ ma postać

φ~ψ~.

  • (¬φ)~ ma postać ¬φ~.
  • Formułę (xiφ)~ definiujemy jako Xn+i(Singl(Xn+i)φ~).
  • Formułę (Xiφ)~ dla in definiujemy jako
 Xiφ~.

Przez indukcję  budowę φ udowodnimy teraz, że

Dla każdego modelu-słowa Parser nie mógł rozpoznać (błąd składni): {\displaystyle \displaystyle \<A,X_1,\dots,X_n\>}
 i każdych

a1,,a z jego nośnika, następujące warunki są równoważne:

  • Parser nie mógł rozpoznać (błąd składni): {\displaystyle \displaystyle (\<A,X_1,\dots,X_n\>,x_1:a_1,\dots,x_\ell:a_\ell)\models\varphi}
  • Parser nie mógł rozpoznać (błąd składni): {\displaystyle \displaystyle \<A,X_1,\dots,X_n,\{a_1\},\dots,\{a_\ell\}\>\models\widetilde\varphi}

Wszystkie kroki indukcji sa całkowicie standardowe i pozostawiamy je Czytelnikowi.

Zatem istotnie, każdy zbiór słów-modeli, który można zdefiniować zdaniem MSO można też zdefiniować zdaniem MSO0. Teraz dla takiego zdania pozostaje skonstruować automat skończony, który akceptuje dokładnie te słowa nad A, w których to zdanie jest prawdziwe.

Sprawa jest teraz dużo łatwiejsza niż dla oryginalnego MSO, bo każda formuła MSO0 definiuje jakiś język nad An+k.

Sprawdzenie, że formuły atomowe definiują języki regularne, pozostawiamy Czytelnikowi jako ćwiczenie.

Język definiowany przez φψ jest sumą języków definiowanych przez φ i ψ, czyli jako suma języków regularnych sam jest regularny.

Język definiowany przez ¬φ jest dopełnieniem regularnego języka definiowanego przez φ, czyli sam też jest regularny.

W wypadku formuły Xiφ, o której zakłądamy, że i jest najwyższym indeksem symbolu relacyjnego występującego w φ, bierzemy automat rozpoznający język nad Ai definiowany przez φ. Następnie modyfikujemy go tak, by działał nad alfabetem Ai1, przy każdym przejściu niedeterministycznie zgadując, czy i-tą współrzędną litery z alfabetu Ai znajdującej się w tej komórce taśmy jest 1 czy 0.

Twierdzenie Buchi ma daleko idące konsekwencje dla rozstrzygalności wielu interesujących problemów.

Wniosek

Następujące problemy są rozstrzygalne:

  • Czy istnieje model-słowo, w którym dane zdanie φ z MSO
 jest prawdziwe?
  • Czy dane zdanie φ z MSO jest prawdziwe w każdym
 modelu-słowie?

Dowód

Procedura rozstrzygająca oba problemy polega na przetworzeniu formuły φ w równoważny jej automat skończony (np.w sposób opisany w dowodzie poprzedniego twierdzenia), a następnie przeprowadzeniu testu na automacie.

Informacja o tw. Fagina i Stockmeyera

Naturalne jest pytanie, czy można równie elegancko, jak to zrobił Buchi, scharakteryzować zbiory modeli definiowalnych w pełnej logice drugiego rzędu. OdpowiedĽ na to pytanie pojawiła się w dwóch krokach.

W pierwszej charakteryzacji występuje egzystencjalna logika drugiego rzędu, czasami oznaczana symbolem Σ11, czyli zbiór tych formuł pełnej logiki drugiego rzędu, w których wszystkie kwantyfikatory drugiego rzędu wystepują na początku formuły, a za nimi jest już tylko zwykłe zdanie pierwszego rzędu:

Parser nie mógł rozpoznać (błąd składni): {\displaystyle \displaystyle \exists X_1~\dots \exists X_n \hspace{-4mm}\underbrace{\varphi(X_1\dots X_n)}_{\text{zdanie pierwszego rzędu}}.}

Dla tej logiki sytuacja wygląda następująco:

Twierdzenie Fagin

Dla każdego zdania φ egzystencjalnej logiki drugiego rzędu zbiór Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \displaystyle \{w\in A_n^+~|~\strA(w)\models\varphi\}} należy do { NP}, oraz dla każdego języka LNP istnieje zdanie φ egzystencjalnej logiki drugiego rzędu takie, że

Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \displaystyle \{w\in A_n^+~|~\strA(w)\models\varphi\}=L-\{\epsilon\}.}

Podobnie jak twierdzenie Buchi i Elgota, ono też bywa reprezentowane sloganem Σ11=NP.

Oczywiście { NP} to słynna klasa złożoności probelmów rozstrzyganych przez niedeterministyczne maszyny Turinga o wielomianowej złożoności czasowej.

Pełna logika drugiego rzędu, oznaczona tu przez SO, też ma analogiczną charakteryzację, która w postaci sloganu wyraża się przez SO=PH i została udowodniona przez Stockmeyera. Precyzyjna postać tego twierdzenia jest analogiczna do poprzednich, a PH to hierarchia wielomianowa, również doskonale znana z teorii złożoności.

Przed przejściem do następnego tematu wypada zauważyć, że twierdzenia Fagina i Stockmeyera w istocie obowiązują w zakresie szerszym niż tylko dla modeli-słów. Dotyczą one także dowolnych struktur skończonych, o ile założy się odpowiednio rozsądny sposób opisywania ich we wzajemnie jednoznaczny sposób za pomocą słów.

Po poznaniu twierdzeń Fagina i Stockmeyera lepiej rozumiemy trudności badania logiki drugiego rzędu. Jest to zadanie co najmniej równie niełatwe, jak najtrudniejsze pytania teorii złożoności, z którymi uczeni borykają się od kilkudziesięciu lat, jak dotychczas bezskutecznie. Np.dowód, że każdy zbiór słów, który jest definiowalny formułą logiki drugiego rzędu, jest też definiowalny formułą Σ11, implikowałby natychmiast, że NP=PH, a zatem także NP=coNP. Zauważmy przy tym, że każdy zbiór słów, który jest definiowalny w MSO, jest też definiowalny za pomocą formuły która należy jednocześnie do MSO i Σ11. Wynika to z postaci formuły definiującej zbiory regularne, która pojawia się w dowodzie twierdzenia Buchi. Zatem na poziomie kwantyfikacji wyłącznie po relacjach jednoargumentowych, pożądana równość zachodzi. Jednak przejście do relacji o dowolnej liczbie argumentów wydaje się niezmiernie trudne.

Informacja o tw. Rabina

Twierdzenie Rabina to inne, daleko idące uogólnienie twierdzenia Buchi.

Nieskończone pełne drzewo binarne to struktura Parser nie mógł rozpoznać (nieznana funkcja „\strT”): {\displaystyle \displaystyle \strT} nad sygnaturą =,s0,s1, w której s0s1 to symbole jednoargumentowych funkcji. Nośnik Parser nie mógł rozpoznać (nieznana funkcja „\strT”): {\displaystyle \displaystyle \strT} to zbiór {0,1}* skończonych słów zerojedynkowych, a funkcje są określone przez równości s0(w)=w0 oraz s1(w)=w1.

Twierdzenie Rabin

Zbiór zdań logiki MSO, które są prawdziwe w Parser nie mógł rozpoznać (nieznana funkcja „\strT”): {\displaystyle \displaystyle \strT} jest rozstrzygalny.

Wszystkie znane dowody twierdzenia Rabina opierają się na tym samym pomyśle, który poznaliśmy w dowodzie twierdzenia Buchi: formuły logiki MSO są tłumaczone na równoważne im automaty w taki sposób, że formuła jest prawdziwa w drzewie Parser nie mógł rozpoznać (nieznana funkcja „\strT”): {\displaystyle \displaystyle \strT} (poetykietowanym dodatkowymi symbolami w wierzchołkach) wtedy i tylko wtedy, gdy automat akceptuje to drzewo. Szczegóły tych dowodów są zawsze bardzo skomplikowane. Nagrodą jest za to wynik, który jest jednym z najsilniejszych znanych twierdzeń o rozstrzygalności, nie tylko zresztą w logice. Rozstrzygalność wielu innych problemów decyzyjnych wykazano po raz pierwszy przez ich odpowiednie przetłumaczenie (czyli zredukowanie) na pytanie o prawdziwość zdań MSO w nieskończonym drzewie binarnym.