90
Wydzial Matematyki, Informatyki i Mechaniki UW Automaty a logika skrypt z wykladu i ćwiczeń semestr zimowy 2009/2010

Automaty a logika

Embed Size (px)

Citation preview

Page 1: Automaty a logika

Wydział Matematyki, Informatyki i Mechaniki UW

Automaty a logikaskrypt z wykładu i ćwiczeń

semestr zimowy 2009/2010

Page 2: Automaty a logika

Wykład prowadził dr hab. Mikołaj Bojańczyk

a czasem go zastępował mgr Paweł Parys

Ćwiczenia prowadzili mgr Filip Murlakmgr Paweł Parys

Teksty spisali Michał GołębiowskiKrzysztof KąsMarek KiszkisMateusz KopećMichał PilipczukOskar Skibski

Michał SkrzypczakKarolina SołtysPiotr SzczepańskiMateusz TarkowskiAdam WitkowskiMaciej Zdanowicz

Page 3: Automaty a logika

Spis treści

1 Słowa skończone 51.1 Wstęp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51.2 Twierdzenie Büchiego . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2 Słowa nieskończone 112.1 Twierdzenie Büchiego . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.2 Dowód twierdzenia Büchiego . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122.3 Dopełnienie dla NBA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

3 Interpretacje 19

4 Determinizacja 214.1 Podejście bezpośrednie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214.2 Drzewa Safry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224.3 Symulacja . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224.4 Automat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234.5 Twierdzenie odwrotne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254.6 Alternatywna konstrukcja . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254.7 Wnioski . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

5 Języki regularne słów skończonych 295.1 Języki regularne słów skończonych a logika pierwszego rzędu (FO) . . . . . . . . . . . . . . . 29

6 Alternacja 356.1 Alternacja na słowach skończonych . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356.2 Alternacja na słowach nieskończonych . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396.3 Determinacja gier nieskończonych a automaty alternujące . . . . . . . . . . . . . . . . . . . . 41

7 Drzewa 517.1 Drzewa skończone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517.2 Drzewa nieskończone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

8 Inne teorie rozstrzygalne 65

9 Rozwiązania zadań 69

3

Page 4: Automaty a logika

4

Page 5: Automaty a logika

Rozdział 1

Słowa skończoneSpisali: Karolina Sołtys i Mateusz Tarkowski

1.1 Wstęp

Zacznijmy od obserwacji, że możemy łatwo opisywać pewne własności słów za pomocą formuł logicznych. Za-łóżmy, że dysponujemy relacją a(x), oznaczającą, że x-tą literą w słowie jest litera a. Wtedy na przykład for-muła ∃x a(x) będzie spełniona dla słów, które zawierają co najmniej jedną literę a, a formuła ∀x∃y y ≥ x∧a(y)— dla słów, które kończą się na a. W obu przypadkach język złożony ze wszystkich słów, dla których danaformuła jest prawdziwa, jest językiem regularnym — odpowiednie wyrażenia regularne to A∗aA∗ oraz A∗a.Nasuwa się pytanie, czy każdy język regularny daje się zapisać za pomocą formuły logiki pierwszego rzędu,oraz czy każda taka formuła wyznacza jakiś język regularny.

Sformalizujmy trochę pojęcia, z których korzystaliśmy w poprzednim akapicie. Niech A będzie skończo-nym alfabetem i niech w = a0 . . . an−1 będzie słowem nad alfabetem A. Słowo w będziemy reprezentowaćstrukturą relacyjną

w = (1, . . . , n,≤(x, y), s(x, y), a(x)a∈A),

gdzie zbiór 1, . . . , n interpretujemy jako zbiór pozycji w słowie w, s jest relacją następnika, a predykatya(x) (dla a ∈ A) wyznaczają pozycje w słowie, na których znajduje się litera a.

Przez Lϕ będziemy oznaczać język zdefiniowany formułą ϕ:

Lϕ = w ∈ A∗ : w |= ϕ.

Okazuje się, że nie wszystkie języki regularne dają się wyrazić za pomocą formuły logiki pierwszego rzędu.Z poniższego lematu wynika, że nie możemy tak wyrazić np. języka (aa)∗.

Lemat 1. Dla każdej formuły ϕ ∈ FO(≤, s) o rozmiarze n zachodzi

a2n |= ϕ ⇐⇒ a2n+1 |= ϕ.

DowódDowód polega na nietrudnej analizie gry Ehrenfeuchta na słowach a2n i a2n+1. Szczegóły pozostawiamyczytelnikowi. 2

5

Page 6: Automaty a logika

1.2 Twierdzenie Büchiego

Pokażemy, że odpowiednią logiką do opisywania języków regularnych jest logika MSO (monadic second-orderlogic), która zezwala na kwantyfikowanie po elementach oraz po zbiorach elementów.

Twierdzenie 2 (Büchi 60, Elgot 61, Trachtenbrot 62). Dla języka L ⊆ A∗ następujące warunki są równo-ważne:

1. L jest regularny

2. L jest definiowalny w logice MSO(s).

Zanim udowodnimy to twierdzenie, stworzymy formułę MSO opisującą język (aa)∗, co pozwoli namdostrzec ogólną metodę konstruowania formuł MSO dla języków regularnych. Słowa o parzystej liczbie litermożemy opisać jako takie słowa, w których możemy zaznaczyć co drugą pozycję tak, by zaznaczyć pierwsząpozycję i nie zaznaczyć ostatniej. Za pomocą formuły logicznej możemy to wyrazić następująco:

∃X

∀x ∃y≤x y ∈ X pierwsza pozycja jest zaznaczona∀x ∃y≥x y 6∈ X ostatnia pozycja nie jest zaznaczona∀x ∀y s(x, y)→ (x ∈ X ↔ y 6∈ X) zaznaczona jest co druga pozycja

Przyjrzyjmy się teraz automatowi rozpoznającemu ten język. Automat ten ma dwa stany: akceptujący q0,będący stanem początkowym i nieakceptujący q1. Tranzycje opisane literą a prowadzą ze stanu q0 do q1 orazz q1 do q0. Oznacza to, że przy wczytywaniu słowa należącego do języka, automat po wczytaniu pierwszejpozycji będzie w stanie q1, po wczytaniu ostatniej pozycji będzie w stanie q0 (innymi słowy — nie będziew stanie q1), oraz będzie w stanie q0 co dwie pozycje. Zauważmy, że zbiór pozycji, po wczytaniu którychautomat przejdzie do stanu q1, jest właśnie zbiorem X spełniającym powyższą formułę. To nie przypadek.

W ogólnym przypadku będziemy tworzyć formułę na podstawie automatu rozpoznającego dany język:będziemy kwantyfikować po zbiorach wyznaczających pozycje, w których automat przechodzi daną tranzy-cją. W treści formuły wymusimy, by wyznaczone stany odpowiadały akceptującemu biegowi automatu nadanym słowie. Poniżej pokażemy to w formalny sposób.

Uwaga. W powyższej formule korzystaliśmy z relacji porządku, ale nie stanowi to nadużycia — porządekjest w MSO definiowalny za pomocą następnika:

x ≤ y ←→ ∀X(x ∈ X ∧ (∀u,v(u ∈ X ∧ s(u, v))→ v ∈ X)) −→ y ∈ X

(jeśli x ∈ X i X jest zamknięty ze względu na operację następnika, to y ∈ X).

Dowód („=⇒”)Udowodnimy, że dla każdego automatu skończonego A = (Q,QI ,δ,A,F ) istnieje równoważna formuła ϕ ∈MSO(s) taka, że LA = Lϕ. Załóżmy, że tranzycje automatu to δ = (q1, a1, p1), . . . ,(qn, an, pn), gdzie krotka(qi, ai, pi) oznacza „automat będący w stanie qi po wczytaniu litery ai przechodzi do stanu pi”. Zauważmy,że każdej pozycji w słowie możemy w naturalny sposób przypisać tranzycję – tę tranzycję, którą przechodziautomat wczytując literę na danej pozycji. Bieg automatu na danym słowie możemy jednoznacznie wyznaczyćokreślając, na jakich pozycjach automat przechodzi daną tranzycją. Utworzymy teraz formułę, która będziespełniona dokładnie przez te słowa, dla których istnieje akceptujący bieg automatu:

6

Page 7: Automaty a logika

∃X1 . . . ∃Xn

∧i 6=j ∀xx ∈ Xi → x 6∈ Xj

Xi są rozłączne

∀x∨i x ∈ Xi ∧ ai(x)Xi pokrywają słowo, a tranzycje są zgodne z etykietami

∀x∀ys(x, y)→ (∨i,j : pi=qj

x ∈ Xi ∧ y ∈ Xj)kolejne tranzycje są zgodne

∀x∃y≤x∨qi∈I y ∈ Xi

pierwsza tranzycja zaczyna się w stanie inicjalnym

∀x∃y≥x∨pi∈F y ∈ Xi

ostatnia tranzycja kończy się w stanie akceptującym

2

Dowód („=⇒”)Chcemy pokazać, że dla każdej formułyMSO ϕ(X1 . . . Xn, y1 . . . yn) istnieje równoważny automat. Udowod-nimy to przez indukcję po budowie ϕ.

Krok 1. Zacznijmy od uproszczenia formuł MSO – eliminacji zmiennych indywiduowych. Pokażemy przezindukcję ze względu na budowę formuły, że każda formuła MSO ΨMSO(x1, . . . , xn, Y1, . . . , Ym) posiada rów-noważną formułę logikiMSO0 – ΨMSOO (X1, . . . , Xn, Y1, . . . , Ym), w której posługujemy się tylko zmiennymidrugiego rzędu, oraz dysponujemy predykatem ⊆(X,Y ) oraz S(X,Y ) o następującej semantyce:

S(X,Y ) MSO0 ⇐⇒ MSO ∃x∈X∃y∈Y s(x, y)

Skrót notacyjny ϕ L1 ⇐⇒ L2ψ będzie oznaczać „formułę ϕ logiki L1 przepisujemy na równoważną – praw-dziwą w tych samych słowach (a w przypadku formuł otwartych: w tych samych słowach i dla analogicznychwartościowań zmiennych wolnych) – formułę ψ logiki L2”. Przez „analogiczne” wartościowania rozumiemytakie wartościowania, w których dopuszczamy zmianę wartości zmiennej indywiduowej na singleton zawie-rający tę wartość. Kwantyfikację po elementach będziemy symulować kwantyfikacją po singletonach, chcemyteż w jakiś sposób zastąpić predykaty s(x, y) i ∈X(y) nowymi predykatami S(X,Y ) i ⊆(X,Y ).

Zdefiniujmy w MSO0 pomocniczy predykat sing(X), który jest prawdziwy wtw. gdy zbiór X jest jedno-elementowy:

sing(X) ⇐⇒ ∃Y⊆X(Y 6= X) ∧ ∀Z⊆X(Z = X ∨ Z = Y )

(konieczną i wystarczającą własnością singletonów jest fakt posiadania dokładnie jednego podzbioru właści-wego).

Możemy teraz przepisać atomowe formuły MSO w języku MSOO:

∃xϕMSO(x) MSO ⇐⇒ MSO0 ∃Xsing(X) ∧ ϕMSO0(x)

s(x,y) MSO ⇐⇒ MSO0 S(X,Y ) ∧ sing(X) ∧ sing(Y )

x ∈ Y MSO ⇐⇒ MSO0 X ⊆ Y ∧ sing(X)

Zauważmy, że każda formuła MSO0 daje się zapisać formułą MSO: wystarczy, że zapiszemy ⊆ (X,Y )jako formułę MSO:

⊆(X,Y )MSO0 ⇐⇒ MSO∀x∈XY (x).

S(X,Y ) już zapisaliśmy w ten sposób. Przejście do MSO0 nie zwiększa więc siły wyrazu.

7

Page 8: Automaty a logika

Krok 2. Kiedy będziemy indukcyjnie tworzyć automaty dla podformuł naszej formuły, zauważymy, że bę-dziemy musieli tworzyć również automaty dla formuł otwartych, tzn. postaci ϕ(X1, . . . , Xn), gdzieX1, . . . , Xn

są zmiennymi wolnymi. Oprócz słowa będziemy więc musieli dostarczyć na wejściu naszego automatu równieżwartościowanie tych zmiennych (będących zbiorami pozycji w słowie). W tym celu rozszerzymy alfabet A doalfabetu A× 0, 1n: litera (a, c1, . . . , cn) na pozycji p będzie oznaczała, że w rozważanym słowie na pozycjip jest litera a, oraz że p należy do Xi wtw., gdy ci = 1. Jeśli w naturalny sposób zdefiniujemy operatorw ⊗ v, oznaczający takie właśnie podpisywanie jednego słowa pod drugim, to nowe słowo wejściowe nadrozszerzonym alfabetem będziemy mogli zapisać jako w ⊗X1 ⊗ . . .⊗Xn.

Przykładowo, dla słowa w = aababb oraz zbioru X1 będącego zbiorem liczb parzystych i zbioru X2

będącego zbiorem liczb pierwszych uzyskamy następujące słowo nad rozszerzonym alfabetem:

w = a a b a b bX1 = 0 1 0 1 0 1X2 = 0 1 1 0 1 0

Krok 3. Przez indukcję po rozmiarze ϕ(X1, . . . , Xn) pokażemy, że język

LX1,...,Xnϕ ≡ w ⊗X1 ⊗ . . .⊗Xn : w |= ϕ(X1, . . . , Xn) ⊆ (A× 0, 1n)∗

jest regularny – określając automat, który go rozpoznaje.

W łatwy sposób możemy zdefiniować automaty rozpoznające atomowe formuły Xi ⊆ Xj , sing(Xi) orazS(Xi, Xj). Na przykład automat rozpoznający Xi ⊆ Xj sprawdza, czy obecność jedynki w i-tym „wierszu”implikuje obecność jedynki w wierszu j-tym; automaty rozpoznające pozostałe dwa predykaty są równieproste.

Aby wykonać krok indukcyjny, wystarczy że znajdziemy automaty rozpoznające ϕ∨ψ, ¬ϕ oraz ∃Xϕ(X)dla ϕ, ψ rozpoznawanym przez automaty skończone – co jest równoważne zamkniętości języków regularnychodpowiednio na sumę, dopełnienie i rzutowanie. Zamkniętość na sumę i dopełnienie jest dobrze znanym fak-tem, musimy się jednak chwilę zastanowić nad tym, co właściwie oznacza rzutowanie języków regularnych.

Krok 4. Zakładając, że język zdefiniowany formułą Ψ(X1, . . . , Xn) jest rozpoznawany przez automat skoń-czony A, chcemy pokazać automat dla języka:

ϕ(X1, . . . , Xn−1) = ∃XnΨ(X1, . . . , Xn).

Szukany automat, działający nad alfabetem A×0, 1n−1, powinien po prostu niedeterministycznie zgadnąćostatni wiersz zer i jedynek, definiujący zbiór Xn, i na rozszerzonym w ten sposób słowie (już nad alfabetemA× 0, 1n) powinien działać jak automat A. 2

Wniosek. Udowodnione właśnie twierdzenie głosi, że dla każdej formułyMSO istnieje równoważny automat.Tworzy również dla każdego automatu równoważną mu formułę MSO postaci

∃X1 . . . ∃XnΨ(X1, . . . , Xn),

gdzie formuła Ψ(X1, . . . , Xn) nie ma kwantyfikatorów po zmiennych drugiego rzędu. Oznacza to, że każdaformuła MSO nad sygnaturą słów jest równoważna formule takiej właśnie postaci.

8

Page 9: Automaty a logika

Zadania

Zadanie 1.1. Zbiór słów W ⊆ A∗ nazywamy kodem jeśli każde słowo w ∈ A∗ ma conajwyżej jeden rozkładw = w1 · · ·wn dla w1, . . . ,wn. Dla skończonego zbioru słów W napsiać w logica MSO(s) zdanie ϕW , którema model wtedy i tylko wtedy gdy W jest kodem.

Zadanie 1.2. Pokazać, że dla każdej formuły MSO(s) istnieje równoważna (na słowach skończonych) for-muła postaci ∃Xϕ(X), gdzie ϕ(X) jest formułą logiki pierwszego rzędu. Innymi słowy, wystarczy jeden kwan-tyfikator drugiego rzędu.

Zadanie 1.3. Formułę ϕ(x,y) nazwiemy linijką długości d, jeśli jest prawdziwa dokładnie wtedy, gdy odle-głość między x a y to d. Pokazać, że dla dowolnego n istnieje linijka długości większej niż 2n, która opisujesię formułą MSO(s) rozmiaru wielomianowego ze względu na n.

Zadanie 1.4. Uogólnić powyższe zadanie na funkcje podwójnie, potrójnie i więcej razy wykładnicze. Dokład-niejszy opis poniżej. Niech expk(n) będzie k-krotnie wykładniczą funkcją od n, czyli

exp0(n) = n expk+1(n) = 2expk(n).

Ustalmy k. Pokazać, że dla dowolnego n istnieje linijka długości większej niż expk(n), która opisuje sięformułą MSO(s) rozmiaru wielomianowego ze względu na n. Stałe i wykładnik wielomianu mogą zależeć odk.

Zadanie 1.5. Korzystając z linijki w poprzednim zadaniu udowodnić, że nie istnieje algorytm rozstrzygającyspełnialność dla MSO(s) na słowach skończonych, który by działał w czasie wykładniczym, czy też podwójniewykładniczym, potrójnie wykładniczym, itd.

Zadanie 1.6. Dodajmy do sygnatury relację x = y + z. Pokazać, że spełnialność MSO(s,+) na słowachskończonych jest nierozstrzygalna.

Zadanie 1.7. Napisać formuły FOL (logiki pierwszego rzędu) definiujące następujące własności:

a istnieje dokładnie k elementów w uniwersum,

b pomiędzy wierzchołkami u, v istnieje ścieżka długości ≤ k,

c w uniwersum nie ma cyklu długości k,

Czy można napisać także formuły definiujące następujące własności (na pierwszy rzut oka prostsze wersjepodpunktów wyżej)?

a’ uniwersum ma parzyście wiele elementów,

b’ istnieje ścieżka między wierzchołkami u i v,

c’ w uniwersum nie istnieje cykl.

Rozwiązanie na stronie 70.

9

Page 10: Automaty a logika

10

Page 11: Automaty a logika

Rozdział 2

Słowa nieskończoneSpisali: Piotr Szczepański i Krzysztof Kąs

Słowa nieskończone mogą przyjmować różne formy:

1. Aω ω = 0,1,2,3 . . . np : abababdba...

2. AZ np : . . . abababdba . . .

3. AR

Nas będą interesować jedynie słowa postaci Aω.

2.1 Twierdzenie Büchiego

Twierdzenie 3 (Büchiego). Dla języka L ⊆ Aω następujące warunki są równoważne:

1. L jest definiowalny w logice MSO.

2. L jest rozpoznawany przez niedeterministyczny automat z warunkiem Büchiego.

3. L można opisać wyrażeniem ω-regularnym.

Język spełniający trzy warunki z powyższego twierdzenia nazwiemy ω-regularnym.Dowód powyższego twierdzenia przedstawimy w rozdziale 2.2. Najpierw wyjaśnimy występujące w twier-

dzeniu pojęcia.

Definicja 1. Wyrażeniem ω-regularnym nazwiemy skończoną sumę postaci⋃i

LiKωi

gdzie Li,Ki ⊆ A∗ regularne języki słów skończonych. Dodatkowo przyjmiemy, że εω = ∅.

Ostanie zdanie może budzić lekki niepokój, gdyż ε∗ = ε. Przyjęcie εω = ∅ ułatwi nam obchodzenie sięz wyrażeniami ω-regularnymi.

Poniżej podamy kilka przykładów wyrażeń regularnych wraz z odpowiadającą im formułą MSO:

• A∗aAω odpowiada ∃xa(x)

• (A∗a)ω odpowiada ∀y∃x>ya(x)

• (A∗ba∗b)ω odpowiada ∀x∃y≥xb(y) ∧ ∃z>yb(z) ∧ ∀uy < u < z ⇒ a(u)

11

Page 12: Automaty a logika

Zgodnie z definicją, wyrażeń opatrzonych ω nie można zagnieżdżać, natomiast zapis A∗aAω + (A∗a)ω jestjak najbardziej poprawny.

Definicja 2. Warunek Büchiego dla niedeterministycznych automatów rozpoznających słowa nieskoń-czone brzmi:

Bieg automatu jest akceptujący, jeśli pewien stan akceptujacy wystapi w nim nieskończenie wiele razy.

Niedeterministyczne automaty z warunkiem Büchiego będziemy oznaczać przez NBA, z angielskiego nonde-terministic Büchi automaton.

Można zadać pytanie, czy deterministyczne automaty z warunkiem Büchiego (DBA), są równoważneNBA. Odpowiedź na to pytannie jest negatywna, zachodzi następująca zależność:

DBA ( NBA

Świadkiem powyższej nierówności jest język opisany wyrażeniem (a+b)∗bω, inaczej mówiąc: słowa zawierajaceskończenie wiele a.

Fakt 4. Nie istnieje deterministyczny automat z warunkiem Büchiego rozpoznający język (a+ b)∗bω.

DowódRozważmy dowolne słowo z tego języka, na przykład bω. Pokażemy, że dzięki drobnej modyfikacji zawszebędziemy w stanie oszukać nasz automat. Wczytując słowo, przy założeniu poprawności naszego automatu,na pewnej pozycji i musimy znaleźć się w stanie ackeptującym q ∈ F . Jeśli w naszym słowie podmienimyliterę i+ 1 na a, nie zmieni to stanu w pozycji i, z powodu determinizmu. Konstrukcję tę można powtórzyć,zakładając, że litera a nie występuje po pozycji i+ 2. Słowo modyfikujemy w ten sposób, za każdym razem,gdy stwierdzimy, iż znaleźliśmy się w stanie akceptującym. 2

2.2 Dowód twierdzenia Büchiego

((3) ⇒ (2)) W poniższej konstrukcji wygodnie korzystać z ε-przejść. Łatwo pokazać, że ε-przejścia możnaeliminować z NBA, tak samo jak w automatach na skończonych słowach.

Z powodu niedeterminizmu i ε-przejść, języki rozpoznawane przez NBA są zamknięte na sumę. A więcwystarczy wskazać NBA dla języków postaci LKω. Niech A będzie automatem (na słowach skończonych)rozpoznającym L, natomiast B niech będzie automatem (znów na słowach skończonych) rozpoznającym K.

Skonstruujemy teraz NBA dla języka LKω, nazwijmy go C. Stany automatu C to: stany A, stany B, orazjeden dodatkowy stan r. Dodatkowy stan r będzie jedynym stanem akceptującym w automacie C. Automatz warunkiem Büchiego dla języka działa w następujący sposób:

1. zaczyna w stanie początkowym automatu A.

2. działa przez pewien czas zgodnie z automatem A

3. w pewnym momencie (wybranym niedeterministycznie, gdy jest w stanie akceptującym automatu A)przechodzi ε-przejściem do stanu początkowego automatu B

4. działa przez pewien czas zgodnie w automatem B

5. w pewnym momencie (wybranym niedeterministycznie, gdy jest w stanie akceptującym automatu B)przechodzi ε-przejściem do stanu r a następnie ε-przejściem do stanu początkowego automatu B.

6. GOTO 4

12

Page 13: Automaty a logika

((2)⇒ (3)) Weźmy dowolny NBA A o stanach Q, stanie początkowym qI i stanach akceptujących F . Ztwierdzenia Kleenego, dla każdych p,q ∈ Q istnieje wyrażenie regularne Lp,q opisujące te słowa skończone, wktórych automat A ma pewien bieg z p do q. Wówczas wyrażenie ω-regularne opisujące słowa akceptowaneprzez A to: ⋃

q∈FLqI ,q(Lq,q)

ω.

((2)⇒ (1))Odpowiednia formuła jest prawie taka sama jak na poprzednim wykładzie. Należy jedynie podmienić

ostatni warunek na mówiący, że nieskończenie często występuje tranzycja, której stan docelowy jest akceptu-jący. Jest to formuła postaci ∀x∃y≥x y ∈ X, gdzie X to zbiór pozycji korzystających z tranzycji o docelowymstanie akceptującym.

((1)⇒ (2))Przeprowadzimy indukcję po strukturze danej formuły.Należy pokazać, że języki rozpoznawane przez automaty NBA są zamknięte na wszystkie operacje z logiki

MSO:

• ∪ wynika to z tego, że są to automaty niedeterministyczne.

• ∃ (rzutowanie) obsługujemy za pomocą niedeterminizmu, w identyczny sposób jak na poprzednimwykładzie.

• ∩ wyraża się przez ∪ i ¬. Można też zrobić konstrukcję bezpośrednio na automatach, bez korzystaniaze skomplikowanej operacji dla dopełnienia.

• ¬ (dopełnienie) jest treścią reszty tego wykładu, znajduje się w rozdziale 2.3.

2.3 Dopełnienie dla NBAW celu zakończenia dowodu twierdzenia Büchiego, wystarczy udowodnić następujący lemat:

Lemat 5. Niech L ⊆ Aω będzie językiem rozpoznawanym przez NBA. Wówczas Aω−L też jest rozpoznawanyprzez NBA.

Reszta tego rozdziału to dowód powyższego lematu. Niech A będzie NBA akceptującym L o zbiorzestanów Q i zbiorze stanów akceptujących F . Chcemy stworzyć automat B taki, że dla dowolnego w ∈ Aω:

A nie akceptuje w ⇐⇒ B akceptuje w

Równoważnie, B ma akceptować słowa, w których każdy bieg automatu A przechodzi skończenie wiele razyprzez stany akceptujące z F .

Uwaga. Nie działa następująca naiwna konstrukcja automatu B:Stanami automatu B są podzbiory zbioru Q. Stanem automatu B po przeczytaniu słowa a1a2...an jest

zbiór stanów, jakie A może mieć po przeczytaniu a1a2...an (w szczególności stanem początkowym automatuB jest zbiór stanów początkowych automatu A).

Niech dane będzie słowo nieskończone w = a1a2... i niech Pn ⊆ Q będzie stanem automatu B po prze-czytaniu prefiksu a1a2...an. Warunkiem akceptacji przez automat B słowa w jest:

∃l∀n>lPn ∩ F = ∅

(od pewnego momentu już nie ma stanów akceptujących automatu A). Warunek ten nie jest warunkiem typuBüchiego, ale łatwo automat zmienić na NBA: trzeba niedeterministycznie wybierać moment, od którego niema stanów akceptujących.

13

Page 14: Automaty a logika

Dlaczego konstrukcja ta nie działa?Jeśli automat B akceptuje słowo nieskończone w, to oczywiście w /∈ L.Przeciwna implikacja jest jednak fałszywa. Weźmy język L = ∅ nad alfabetem jednoliterowym a oraz

następujący automat A:

p q ra

aa

a

Nie akceptuje on żadnego słowa, bo każdy bieg co najwyżej raz przechodzi przez stan akceptujący. Zatemjęzykiem rozpoznawanym przez A jest ∅.

Dla słowa aω (jedynego nad tym alfabetem) zachodzi:

P0 = pP1 = p, qP2 = p, q, r = P3 = P4 = P5 = . . .

Wobec tego automat B też nie akceptuje słowa aω (a powinien). Wynika to z faktu, że automat Ama dowolniedługie biegi dochodzące do stanu akceptującego q, ale nie dają się one połączyć w jeden bieg. Potrzebna jestwięc inna, subtelniejsza konstrukcja automatu B.

Niech M oznacza zbiór macierzy A spełniających warunki:

• A jest rozmiaru |Q| × |Q|,

• wiersze i kolumny A są indeksowane przy pomocy stanów automatu A,

• elementy A należą do zbioru ⊥; 1; 0.

Każdemu słowu skończonemu w ∈ A∗ przyporządkowujemy pełną informację na jego temat jeśli chodzio automat A. Ta informacja jest macierzą Mw ∈ M zdefiniowaną następująco. W komórce (p,q) wartośćmacierzy Mw to

⊥ jeśli nie istnieje bieg automatu A na słowie w, zaczynający się w stanie p, który kończy się w stanie q

1 jeśli istnieje bieg automatu A na słowie w, zaczynający się w stanie p, który kończy się w stanie q i podrodze przechodzi przez stan akceptujący

0 w przeciwnym przypadku, czyli da się przejść z p do q, ale nie da się przechodząc przez stan akceptujący

Aby uzyskać informację na temat konkatenacji w· v (gdzie w,v ∈ A∗) wystarczy znać informację na tematw i v. Inaczej mówiąc, relacja równoważności utożsamiająca słowa o tej samej macierzy jest kongruencją zewzględu na konkatenację.

Można to zapisać i uzasadnić definiując mnożenie macierzy w odpowiednim (przemiennym) półpierścieniu.Nośnikiem półpierścienia jest ⊥; 1; 0, operacją dodawania jest maksimum według porządku

⊥ < 0 < 1

a mnożenie jest zdefiniowane następująco:

⊥·⊥= 1· ⊥=⊥· 1 = 0· ⊥=⊥· 0 =⊥1· 1 = 1· 0 = 0· 1 = 10· 0 = 0

14

Page 15: Automaty a logika

Mnożenie macierzy jest zdefiniowane następująco:

(M ·N)(p,q) = maxr∈Q

(M(p,r))· (N(r,q)).

Po wprowadzeniu tej terminologii możemy napisać, że:

Mw·v = Mw·Mv

Inaczej mówiąc, przyporządkowanie w 7→Mw jest homormofizmem monoidów (z lewej wolnego A∗, a z prawejM). Aby to udowodnić, wystarczy zauważyć, że:

• Mw·v(p,q) =⊥ ⇐⇒ dla każdego stanu r ∈ Q jedno z dwóch przejść jest niemożliwe: (po słowie wod p do r) oraz (po słowie v od r do q) ⇐⇒ dla każdego stanu r ∈ Q zachodzi Mw(p,r) =⊥ lubMv(r,q) =⊥

• Mw·v(p,q) = 1 ⇐⇒ istnieje stan r ∈ Q taki, że są możliwe przejścia (po słowie w od p do r) oraz (posłowie v od r do q) a ponadto jedno z nich przechodzi przez stan akceptujący ⇐⇒ istnieje stan r ∈ Qtaki, że zbiór Mw(p,r),Mv(r,q) jest równy 1 lub 0, 1

Lemat 6. Dla dowolnego automatu A i macierzy M ∈ M z odpowiadającego A zbioru M, regularny jestjęzyk

LM = w ∈ A∗ : Mw = M.

Dowód: Automat czyta słowo i oblicza macierz odpowiadającą już przeczytanemu prefiksowi. Ten auto-mat jest zdefiniowany następująco:

• stanami są wszystkie możliwe macierze z M

• stanem początkowym jest macierz Mε

• ze stanu N po przeczytaniu litery a automat przechodzi do stanu N ·Ma (macierz Ma jest macierządla słowa jednoliterowego a)

Jeśli stanem akceptującym uczynimy M , automat akceptuje dokładnie słowa ze zbioru LM .

Teraz sformułujemy kluczowy lemat.

Lemat 7 (Kluczowy). Niech w ∈ Aω. Wówczas istnieją

• macierze M,N takie, że M ·N = M i N ·N = N ,

• podział w = w0w1w2w3 . . ., gdzie wi ∈ A+,

takie, że

• Mw0 = M ,

• Mwi = N dla i = 1, 2, 3, . . ..

A więc:

• dla dowolnego i słowu w0w1w2 . . . wi odpowiada macierz M ,

• dla dowolnych i ≤ j słowu wiwi+1wi+2 . . . wj odpowiada macierz N .

Zanim przystąpimy do dowodu, przypomnimy twierdzenie Ramseya, które się przyda w dowodzie lematu.

15

Page 16: Automaty a logika

Twierdzenie 8 (Ramseya). Mamy dany pełny graf nieskierowany, którego wierzchołkami są liczby naturalne.Ponadto każda krawędź (i,j) (ponieważ krawędzie są nieskierowane, to zakładamy, że i < j) jest pokolorowanakolorem α(i,j) ∈ K, gdzie K jest skończonym zbiorem kolorów. Wówczas istnieje zbiór nieskończony X ⊆ Noraz kolor k ∈ K takie, że

∀i,j∈X α(i,j) = k.

Dowód (kluczowego lematu)Niech w = a1a2a3.... Zdefiniujmy α : [N]2 →M następująco:

α(i < j) = Mai...aj−1 dla i < j

Na mocy tw. Ramseya istnieją: nieskończony zbiór I ⊆ N oraz macierz N ∈M takie, że:

∀i,j∈I, i<jα(i,j) = N

Niech I = i1, i2, i3, . . .. Zdefiniujmy skończone słowa

v0 = a1 . . . ai1−1 v1 = ai1 . . . ai2−1 v2 = ai2 . . . ai3−1 · · ·

Niech Ni macierz opisująca słowo vi. Wiemy, że wszystkie macierze Ni są równe dla i ≥ 1. Wybierzmy sobie

M = N0 ·N1 N = N1 = N2 = · · ·

Macierze te odpowiadają podziałowi

w = w0w1w2 · · · dla w0 = v0v1 w1 = v2 w2 = v3 · · ·

Aby zakończyć dowód, trzeba jescze pokazać warunki na mnożenie macierzy z tezy lematu:

N ·N = N1 ·N2 = N z tezy tw. Ramseya

M ·N = N0 ·N ·N = N0 ·N = M

2

Powiemy, że para macierzy N,M spełnia warunek (?) jeśli istnieje q ∈ Q takie, że:

• M(qI ,q) 6=⊥ dla stanu inicjalnego qI automatu A

• N(q,q) = 1

Lemat 9 (Charakteryzujący). Ustalmy niedeterministyczny automat z warunkiem Büchiego A oraz słowow ∈ Aω. Niech macierze M,N i podział w = w0w1w2 . . . będą takie, jak w dowodzie kluczowego lematu.Wówczas słowo w jest akceptowane przez automat A wtedy i tylko wtedy gdy macierze M,N dodatkowospełniają warunek (?).

DowódDowód implikacji (⇐) jest oczywisty — warunek (?) wprost przekłada się na istnienie biegu akceptującego.Przejdźmy więc do implikacji (⇒).

Rozważmy bieg akceptujący automatu A na słowie w. Niech qi oznacza stan automatu w tym biegu poprzeczytaniu prefiksu w0w1 . . . wi. Ponieważ macierz opisująca ten prefiks to M (z założenia MN = M),wnioskujemy, że M(qI ,qi) 6= ⊥ dla każdego i ≥ 1. Wówczas istnieje taki stan q, że q = qi dla nieskończeniewielu i (niech I będzie zbiorem takich właśnie i). W szczególnościM(qI ,q) 6= ⊥, więc spełniona jest pierwszaczęść warunku (?). Ponieważ jest to też bieg akceptujący, to nieskończenie często pojawia się w tym automaciepewien stan akceptujący f . Zatem można wybrać taki nieskończony zbiór J ⊆ I, J = j0, j1, j2, . . ., że dlakażdego k stan akceptujący f pojawia się podczas czytania przez automat podsłowa wjk+1 . . . wjk+1 . Innymisłowy, macierz słowa wjk+1 . . . wjk+1 ma 1 w komórce (q,q). Ponieważ ta macierz to N , mamy N(q,q) = 1,więc spełniona jest druga część warunku (?). 2

16

Page 17: Automaty a logika

Wniosek 10. Dla słowa w ∈ Aω następujące warunki są równoważne:

1. w nie jest akceptowane przez A

2. istnieją M,N ∈ M oraz w = w0w1w2 . . . jak w kluczowym lemacie takie, że M,N nie spełniają (?),inaczej mówiąc słowo należy do języka opisanego wyrażeniem regularnym⋃

M,N nie spełniają warunku (?)M ·N = MN ·N = N

LM (LN )ω

To kończy dowód tw. Büchiego.

17

Page 18: Automaty a logika

Zadania

Zadanie 2.1. Pokazać, że każdy niedeterministyczny automat z warunkiem Mullera jest równoważny pew-nemu NBA. Rozwiązanie na stronie 72.

Zadanie 2.2. Pokazać, że języki rozpoznawane przez deterministyczne automaty z warunkiem Büchiego sązamknięte na przecięcie. Rozwiązanie na stronie 73.

Zadanie 2.3. Pokazać, że następujący język nie jest ω-regularny:

an1ban2b · · · : limi→∞

ni =∞.

Rozwiązanie na stronie 74.

Zadanie 2.4. Słowo ostatecznie okresowe to słowo postaci wvω dla w,v ∈ A+. Pokazać, że jeśli dwa językiω-regularne zawierają te same słowa ostatecznie okresowe, to muszą być równe. Rozwiązanie na stronie 75.

Zadanie 2.5. Wskazać język ω-regularny, który nie jest różnicą dwóch języków rozpoznawanych przez deter-ministyczne automaty z warunkiem Büchiego. Rozwiązanie na stronie 77.

Zadanie 2.6. Zaprojektować algorytm, który sprawdza czy język rozpoznawany przez dany NBA jest przeli-czalny. Rozwiązanie na stronie 78.

Zadanie 2.7. Rozważmy trzy relacje à la Myhill Nerode, które są zadane przez język słów nieskończonychL ⊆ Aω, ale porównują słowa skończone w,w′ ∈ A∗.

w ∼1L w

′ jeśli uwv ∈ L ⇐⇒ uw′v ∈ L dla każdych u ∈ A∗,v ∈ Aω

w ∼2L w

′ jeśli ∧

uwv ∈ L ⇐⇒ uw′v ∈ L dla każdych u ∈ A∗,v ∈ Aω

u(wv)ω ∈ L ⇐⇒ u(w′v)ω ∈ L dla każdych u,v ∈ A∗

w ∼3L w

′ jeśli u ∈ L ⇐⇒ u′ ∈ Lgdzie u′ ∈ Aω otrzymano z u ∈ Aωprzez zamienienie (skończonej lub nie)ilości rozłącznych wystąpień w na w′.

Niech i = 1,2. Wskazać język L, który ma skończenie wiele klas abstrakcji w relacji w relacji ∼iL, ale nie-skończenie wiele klas abstrakcji w relacji ∼i+1

L . Wskazać język L, który nie jest ω-regularny, ale dla którego∼3L ma skończenie wiele klas abstrakcji.

18

Page 19: Automaty a logika

Rozdział 3

InterpretacjeSpisali: Michał Skrzypczak

W tym rozdziale rozpatrywać będziemy logiki FO i MSO, w strukturach relacyjnych. Kluczowym poję-ciem będzie rozstrzygalność teorii.

Definicja 3. Powiemy, że teoria ustalonej logiki, przy ustalonej signaturze Σ, w modelu M jest rozstrzy-galna, jeśli istnieje algorytm wczytujący dowolną formułę ϕ i odpowiadający, czy M |= ϕ.

W zależności od logiki, sygnatury i modelu, problem spełnialności może być rozstrzygalny lub nie. Naprzykład dla logiki składającej się z jednej formuły ⊥, nie spełnionej w żadnym modelu, problem ten jestzawsze rozstrzygalny. Z drugiej strony problem spełnialności formuł logiki pierwszego rzędu w liczbach na-turalnych z dodawaniem i mnożeniem jest nierozstrzygalny (Gödel).

Celem będzie umiejętność przenoszenia rozstrzygalności problemu spełnialności z jednego modelu, nainny. Na przykład wiemy, że liczby naturalne z następnikiem mają rozstrzygalną teorię MSO. Chcielibyśmyz tego wywnioskować, że również liczby całkowite mają rozstrzygalną teorię MSO. Metodą dowodzeniatakich twierdzeń będą interpretacje.

Definicja 4. Powiemy, że struktura relacyjna M1 nad sygnaturą Σ1 interpretuje się w strukturze M2 nadsygnaturą Σ2, jeśli istnieją:

• różnowartościowe zanurzenie i : |M1| → |M2|, gdzie |Mj | oznacza nośnik odpowiedniej struktury,

• formuła logiczna p(x) nad sygnaturą Σ2, spełniona dla x ∈ |M2| wtedy i tylko wtedy, gdy x leży wobrazie i,

• dla każdego symbolu relacyjnego R ∈ Σ1 formuła ϕR(x1, . . . ,xn) nad sygnaturą Σ2, taka że dla każdychx1, . . . ,xn ∈ |M1|, mamy R(x1, . . . ,xn) wtedy i tylko wtedy, gdy M2 |= ϕR(i(x1), . . . ,i(xn)).

Nie wymagamy żadnych własności od włożenia i, może to być dowolna, teoriomnogościowa funkcja.Kluczem powyższej definicji jest możliwość mapowania dowolnej formuły ϕ nad sygnaturą M1, na formułęϕ′ nad sygnaturą Σ2, w ten sposób, byM1 |= ϕ wtw.M2 |= ϕ′. Mapowanie to odbywa się w ten sposób, że wmiejsce wystąpienia dowolnego symbolu relacyjnego R wstawiamy odpowiednią formułę ϕR, a kwantyfikatorywzbogacamy o wymaganie, by kwantyfikowana zmienna x spełniała warunek p(x). Dzięki temu, otrzymujemynastępujące twierdzenie.

Twierdzenie 11. Jeśli struktura M1 interpretuje się w strukturze M2 i teoria M2 jest rozstrzygalna, wtedyrozstrzygalna jest również teoria M1.

DowódMożna tu bezpośrednio skonstruować algorytm. Zakładamy, że dana jest formuła ϕ. Obliczamy formułęϕ′, zgodnie z podaną konstrukcją. Sprawdzamy, czy ϕ′ jest spełnione w M2. Odpowiedź jest jednocześnieodpowiedzią na pytanie, czy ϕ było spełnione w M1. 2

19

Page 20: Automaty a logika

Klasycznym przykładem zastosowania powyższej metody, jest dowód, że teoria MSO jest rozstrzygalnaw liczbach całkowitych z następnikiem. Możemy mianowicie interpretować liczby całkowite w liczbach natu-ralnych, z włożeniem

i(k) =

0 dla k = 02k dla k > 0−2k − 1 dla k < 0

Odpowiednie formuły dla relacji następnika i zera można podać jako proste ćwiczenie.Zdefiniowane powyżej interpretacje nazywane są też interpretacjami typu element-element. Znajdują one

zastosowanie dla wszystkich logik nad sygnaturami relacyjnymi. Możemy jednak ograniczyć stosowalność doszczególnych logik i rozszerzyć pojęcie interpretacji.

Definicja 5. Powiemy, że model M1 interpretuje się w M2 typu element-zbiór, jeśli istnieje włożenie i :|M1| → 2|M2| oraz formuły monadyczne p(X) i ϕR analogicznie jak w zwykłych interpretacjach.

Dzięki powyższej definicji możemy przenosić rozstrzygalność teorii MSO w M2 na rozstrzygalność FOw M1. Ciekawy przykład wykorzystania tej metody, to interpretacja liczb naturalnych z dodawaniem wliczbach naturalnych z następnikiem, metodą element-zbiór. Główną ideą jest kodowanie binarne, zaczynającod końca. Implikuje to rozstrzygalność logiki pierwszego rzędu dla arytmetyki Presburgera.

20

Page 21: Automaty a logika

Rozdział 4

DeterminizacjaSpisali: Michał Skrzypczak

W przypadku automatów dla słów skończonych, powszechnie znana jest konstrukcja automatu determini-stycznego, równoważnego danemu automatowi niedeterministycznemu A. Podstawową ideą jest, by tworzonyautomat A′ miał za stany zbiory stanów automatu A, a przejścia mapowały zbiory stanów w zbiory sta-nów. Daje to wykładniczy wzrost rozmiaru automatu i nietrudno udowodnić, że nie da się tego w ogólnymprzypadku poprawić. Automat ten nazywa się automatem potęgowym.

W tym rozdziale postaramy się przeprowadzić analogiczną konstrukcję w przypadku automatów dla słównieskończonych. W tym celu potrzebny będzie nowy, nieco inny niż do tej pory warunek akceptacji.

Definicja 6. Deterministyczny automat z warunkiem Mullera, to standardowy deterministyczny automatdla słów nieskończonych o zbiorze stanów Q, z wyróżnioną rodziną zbiorów F1,F2, . . . , Fj ⊆ Q. Powiemy, żeautomat taki akceptuje nieskończone słowo w, jeśli zbiór stanów występujących nieskończenie często w bieguna w jest jednym ze zbiorów F1,F2, . . . , Fj.

Alternatywnie (równoważnie) można mówić, że zamiast rodziny zbiorów Fi, automat taki ma formułęboolowską (czyli formułę z operacjami ∧, ∨, ¬) w której zdaniami atomowymi są zdania postaci „bieg prze-chodzi nieskończenie wiele razy przez stan q”. Przy takiej definicji, mówimy, że automat akceptuje, jeśli całaformuła jest prawdziwa.

Celem wykładu będzie wykazanie następującego twierdzenia.

Twierdzenie 12. Dla każdego niedeterministycznego automatu z warunkiem Büchiego istnieje równoważnydeterministyczny automat z warunkiem Mullera.

4.1 Podejście bezpośrednieZauważmy najpierw, że naiwne przeniesienie konstrukcji dla słów skończonych nic nie daje. W naiwnejkonstrukcji stosujemy automat potęgowy tak jak w słowach skończonych, a stanami akceptującymi czynimyte zbiory, które zawierają przynajmniej jeden stan akceptujący.

Rozpatrzmy automat A nad alfabetem jednoliterowym a o stanach p,q,r i przejściach po literce a:

pa→ p p

a→ q qa→ r r

a→ r.

Stan q jest jedynym stanem akceptującym. Rozpatrzmy warunek akceptacji Büchiego (chociaż to nie mawielkiego znaczenia jaki warunek weźmiemy). Nad aflabetem jednoliterowym a istnieje tylko jedno słowoaω. W każdym biegu na aω nasz automat przechodzi co najwyżej raz przez stan akceptujący. W związkuz tym nie akceptuje on tego słowa. Jeśli natomiast skonstruujemy automat potęgowy, o stanach 2p,q,r, toprzejścia wyglądać będą następująco:

p a→ p,q p,q a→ p,q,r p,q,r a→ p,q,r.

21

Page 22: Automaty a logika

Czyli już po wczytaniu trzeciej literki a automat na zawsze pozostanie w stanie p,q,r, z czego nie daje sięwywnioskować, czy pierwotny automat akceptuje, czy nie.

Problem z automatem potęgowym polega na tym, że pojawienie się stanów akceptujących w nieskończeniewielu zbiorach oznacza tylko tyle, że istnieją biegi oryginalnego automatu niedeterministycznego, które majądowolnie daleko stan akceptujący. Niekoniecznie można z tych biegów stworzyć jeden bieg mający stanyakceptujące nieskończenie często, czy choćby dwa razy, jak w powyższym przykładzie. Widzimy więc, żepotrzebna będzie subtelniejsza konstrukcja, zdolna do wychwycenia sytuacji takich jak powyższa.

Subtelniejsza konstrukcja przedstawiona w tym wykładzie nazywa się konstrukcją Safry i jest opisanaponiżej.

4.2 Drzewa Safry

Podstawową ideą omawianej konstrukcji jest, by tak wzbogacić strukturę informacji pamiętanych w stanachautomatu, by dało się z nich wywnioskować kiedy miało miejsce przejście przez stan akceptujący. Okazujesię, że właściwą konstrukcją są drzewa Safry.

Definicja 7. Drzewo Safry dla zbioru stanów Q, to skończone drzewo T złożone z podzbiorów Q. Wierzchołkibędziemy oznaczać przez x,y,z, a ich etykiety przez T (x),T (y),T (z) ⊆ Q. Dodatkowo każdy wierzchołek maprzypisany identyfikator ze zbioru 0,1,2, . . . ,2|Q| − 1. Niektóre z wierzchołków T są oznaczone jako świeże.Jak to w drzewie używamy następujących określeń: syn, ojciec, brat, potomek (domknięcie przechodnie syna).Dla relacji potomka używamy znaku x < y, gdzie y jest potomkiem x. Oprócz tego zakładamy, że w obrębiesynów każdego wierzchołka wprowadzony jest pewien porządek liniowy (czyli są synowie starsi i młodsi).Dodatkowo wymagamy następujących warunków:

1. Suma etykiet synów jest właściwym podzbiorem etykiety ojca.

2. Zbiory stanów w etykietach braci są rozłączne.

3. Każdy wierzchołek ma niepustą etykietę.

Nie ma żadnych warunków na to które wierzchołki drzewa są świeże, ani jak przydzielone są identyfikatory.

Pisząc o drzewie Safry T , myślimy o wszystkich informacjach naraz: zbiór wierzchołków, struktura drzewa,porządek liniowy na braciach, etykiety wierzchołków, identyfikatory wierzchołków, oraz zbiór wierzchołkówświeżych. Łatwo sprawdzić, że zbiór wszystkich możliwych drzew Safry dla określonego zbioru stanów Q jestskończony. Można wykazać, że jego rozmiar wynosi asymptotycznie 2|Q| log(|Q|).

4.3 Symulacja

Opiszemy teraz jak można symulować za pomocą drzew Safry bieg danego A na słowach nieskończonych.Rozpoczniemy z drzewem Safry o jednym węźle, będącym singletonem stanu początkowego w A. Węzeł tennie będzie świeży, a jego identyfikator będzie to np. 0. Oznaczamy takie drzewo T0.

Teraz opiszemy jak zmienia się dane dowolne drzewo Safry T pod wpływem wczytania nowej litery a.Będzie się to odbywało w kilku krokach:

1. Stosujemy automat potęgowy do każdej etykiety drzewa. Inaczej mówiąc, dla każdego wierzchołka xdrzewa T zmieniamy etykietę z T (x) na

p : w automacie A jest przejście q a→ p dla pewnego q ∈ T (x).

Nie zmieniamy identyfikatorów. Warunki 1, 2 i 3 mogą być potencjalnie niespełnione.

22

Page 23: Automaty a logika

2. Dla każdego wierzchołka x drzewa T tworzymy nowego syna y, składającego się ze wszystkich stanówakceptujących zawartych w tym momencie w x (czyli już po zastosowaniu automatu potęgowego).Nowy wierzchołek porządkujemy jako najmłodszego. Nadajemy mu jakiś nowy, wolny identyfikator.Wciąż warunki 1, 2 i 3 mogą być potencjalnie niespełnione.

3. Dla każdego wierzchołka x i każdego stanu q, jeśli q występuje też w jakimś starszym bracie wierzchołkax, to usuwamy q z x i potomków x. Kolejność wyboru x nie ma znaczenia. Teraz warunek 2 jest jużspełniony, natomiast warunki 1 i 3 wciąż mogą być niespełnione.

4. Usuwamy wszystkie wierzchołki o pustych zbiorach stanów. Jedyny warunek jaki może teraz być nie-spełniony, to 1.

5. Wycieramy z drzewa oznaczenie świeżości, tak by żaden węzeł nie był świeży.

6. Dla każdego wierzchołka x jeśli suma etykiet dzieci x daje etykietę x, to kasujemy wszystkie dzieci xwraz z potomkami i oznaczamy x jako świeży. W tym momencie wszystkie warunki jakie ma spełniaćdrzewo Safry są spełnione.

W ten sposób zdefiniowaliśmy nowe drzewo Safry S, powstałe z T . Powyższą konstrukcję modyfikacji Tprzez literkę a oznaczamy T a→ S. Rozszerzamy tę notację na skończone słowa, do T w→ S.

Poniżej udowodnimy kilka dodatkowych warunków jakie powyższa konstrukcja gwarantuje. Weźmy do-wolne w ∈ Σ∗ i weźmy T takie by T0

w→ T .

1. T jest niepuste (ma korzeń) wtw. istnieje bieg automatu A na słowie w.

2. Jeśli T jest niepuste, to etykieta korzenia składa się z dokładnie tych stanów q ∈ Q, które są osiągalnez q0 po przejściu przez słowo w.

3. Jeśli przy przejściu T a→ S wierzchołek x ∈ T zostaje skasowany, to w S nie ma wierzchołka o takimidentyfikatorze jak x.

4. Gdy wierzchołek powstaje to zawsze zawiera same stany akceptujące.

5. Wierzchołek może zostać skasowany na dwa sposoby, albo gdy staje się pusty, albo gdy jego ojciec stajesię świeży.

4.4 Automat

Pozostaje, w oparciu o drzewa Safry, zdefiniować deterministyczny automat Mullera równoważny danemuniedeterministycznemu automatowi Büchiego. Przyjmijmy za jego stany wszystkie drzewa Safry, stan po-czątkowy niech będzie równy T0, a przejścia będą zgodne z opisanymi powyżej. Poniższy lemat pokazuje jakiwarunek akceptacji należy rozpatrzyć w tworzonym automacie.

Lemat 13. Weźmy słowo nieskończone w = a1a2 · · · . Rozważmy drzewa Safry

T0a1→ T1

a2→ T2a3→ T3

a4→ · · ·

Równoważne są warunki:

a) istnieje bieg akceptujący A na w,

b) istnieje identyfikator wierzchołka j ∈ 0,1, . . . ,2|Q|−1, taki że od pewnego momentu wierzchołek o takimidentyfikatorze zawsze jest obecny w Ti i nieskończenie wiele razy wierzchołek o tym identyfikatorze jestświeży.

23

Page 24: Automaty a logika

Łatwo zobaczyć, że warunek w punkcie b) jest typu Mullera, więc jeśli mamy powyższy lemat, to dowódjest zakończony, gdyż opisany powyżej automat Safry rozpoznaje dokłądnie te same słowa co pierwotnyautomat A.

Dowód z a) do b). Rozważmy bieg akceptujący

q0a1→ q1

a2→ q2a3→ q3

a4→ · · ·

Oznaczmy przez xi najgłębszy wierzchołek drzewa Ti, w którego etykiecie znajduje się stan qi. Z poczynionychwcześniej obserwacji wynika, że taki wierzchołek zawsze istnieje. (Jest też jednoznaczny, z rozłącznośći etykietbraci).

Oznaczmy korzeń drzewa Ti przez yi. Oczywiście qi ∈ Ti(yi) dla każdego i. Skoro korzenie nie są nigdykasowane, wszystkie wierzchołki yi mają ten sam identyfikator. Jeśli nieskończenie wiele razy yi jest świeży, tokoniec, bo dla identyfikatora korzenia zachodzi b). Załóżmy przeciwnie. W takim razie od pewnego momentu,nazwijmy ten moment i0, wierzchołek yi nie jest nigdy odświeżany. Jednocześnie nieskończenie często qi jeststanem akceptującym. Znaczy to, że nieskończenie często po momencie i0 wierzchołek yi znajduje się w nowostworzonym wierzchołku, czyli głębiej niż w korzeniu. Po momencie i0 wierzchołek xi nie może wrócić dokorzenia, a więc od pewnego momentu wierzchołek xi znajduje się poza korzeniem. Ponieważ wśród synówkorzenia nie nieskończonego ciągu starzejącego się, istnieje syn korzenia, nazwijmy go zi, nie kasowany odpewnego momentu, w którym od pewnego momentu zawsze zachodzi xi ≥ zi.

Możemy teraz rozumowanie z powyższego akapitu powtórzyć dla zi. Albo jest on nieskończenie częstoświeży, albo ma syna. I tak dalej. . . . Ale drzewa Ti mają ograniczoną wysokość, więc w pewnym momenciemusimy przerwać postępowanie, znalazłszy wierzchołek który od pewnego momentu zawsze istnieje i jestnieskończenie wiele razy świeży.

Aby wykazać implikację z b) do a) najpierw udowodnimy lemat.

Lemat 14. Weźmy dowolne drzewo Safry T . Załóżmy, że przechodzimy po słowie w 6= ε do drzewa S.Załóżmy, że x jest świeży w T,S i nie jest kasowany w trakcie. Wtedy dla każdego stanu p ∈ S(x) istniejestan q ∈ T (x) i bieg po w z q do p przechodzący przez stan akceptujący.

Dowód. Patrzymy na stan p ∈ x w S. Skoro x jest świeży w S, to istnieje stan p′ który w poprzednim drzewienależał do pewnego syna x oznaczonego x′ i ostatnia literka w może przenieść go w p. Patrzymy na historięx′, w szczególności na ciąg stanów prowadzących do p′. Dopóki idąc wstecz x′ istnieje, wszystko dobrze. Wpewnym momencie x′ powstał, bo w T x nie miał dzieci. To był moment w którym wszystkie stany należącedo x′ były akceptujące. W szczególności pewien poprzednik p′. Cofamy się dalej do T uzyskując szukanywierzchołek q wraz z biegiem od q przez stan akceptujący do p′ i wreszcie do p, po słowie w.

Możemy teraz zakończyć dowód twierdzenia.

Dowód z b) do a). Istnieje wierzchołek x który od pewnego momentu nie jest nigdy skasowany i jest świeżyw momentach i1,i2, . . ..

Zdefiniujmy zbiór H takich skończonych ciągów stanów (p1,p2, . . . ,pn), że istnieje bieg automatu A nasłowie w, który:

• dla każdego 1 ≤ k ≤ n w momencie ik jest w stanie pk,

• dla każdego 1 < k ≤ n pomiędzy momentami ik−1 i ik przechodzi przez jakiś stan akceptujący.

Jak widać z definicji H jest zamknięty ze względu na prefiksy, więc tworzy drzewo. Dodatkowo drzewo toma skończone rozgałęzienie, gdyż występują w nim tylko znaki ze skończonego zbioru Q.

Korzystając z lematu, dla każdego n > 0 istnieje stan q osiągalny w momencie in (ściślej należący do x wdrzewie Tin) oraz taki bieg z q0 do q, który przechodzi przez stany akceptujące pomiędzy momentami ik−1 iik dla 1 < k ≤ n. Więc drzewo H zawiera dowolnie długie ścieżki. Więc posiada pewną nieskończoną gałąź.Gałąź ta odpowiada nieskończonemu biegowi A na słowie w, który przechodzi nieskończenie wiele razy przezstany akceptujące.

24

Page 25: Automaty a logika

4.5 Twierdzenie odwrotneMa miejsce również twierdzenie odwrotne do wykazanej powyżej determinizacji.

Twierdzenie 15. Dla każdego deterministycznego automatu Mullera A istnieje równoważny niedetermini-styczny automat Büchiego.

Dowód. Z definicji A jest boolowską kombinacją ϕ niedeterministycznych automatów Büchiego. A jak spraw-dziliśmy automaty te są zamknięte ze względu na operacje logiczne. Więc można skonstruować automatrównoważny całej formule ϕ. Jest on równoważny A.

W tym rozumowaniu korzystamy istotnie z faktu, że niedeterministyczne automaty Büchiego są za-mknięte na dopełnienia. Można stworzyć odpowiednią konstrukcję bardziej bezpośrednio, nie korzystając ztego faktu. Oznaczmy przez A dany deterministyczny automat Mullera. Poniżej znajduje się opis konstrukcjiniedeterministycznego automatu Büchiego B, który akceptuje te same słowa.B zgaduje który ze zbiorów Fi będzie realizować. Formalnie rzecz biorąc, język rozpoznawany przez B

jest sumą języków automatów Bi odpowiadających zbiorom Fi. A wiemy, że suma jest łatwa dla automatównideterministycznych. Załóżmy, że Fi = f0,f1, . . . ,fk−1. Bieg składa się z dwóch faz:

• Najpierw Bi po prostu symuluje bieg A. W tej fazie Bi nie ma żadnych stanów akceptujących. Następniew pewnym momencie automat zgaduje, że stany spoza Fi nie będą się już pojawiać i przechodzi dodrugiej fazy, która odbywa się na kopii A składającej się tylko ze stanów Fi.

• W tej fazie automat stale pamięta na który ze stanów fj ∈ Fi czeka. W momencie przejścia przezszukany stan fi automat ma swój stan akceptujący i od tego momentu zaczyna oczekiwać na stanfi+1 mod k .

Jeśli opisany powyżej automat przechodził przez stan akceptujący nieskończenie wiele razy, oznacza to żew pewnym momencie przeszedł do drugiej fazy i każdego ze stanów fi się doczekał nieskończenie wiele razy.Odpowiada to akceptującemu biegowi A. Z drugiej strony jeśli A ma akceptujący bieg, opisany automat Bmógł zgadnąć dobry zbiór Fi i dobry moment przejścia do drugiej fazy. Następnie na każdy ze stanów fi sięw końcu doczekał, więc w sumie przechodził przez swój stan akceptujący nieskończenie wiele razy.

4.6 Alternatywna konstrukcjaNiedawno, p. Damian Niwiński zaproponował alternatywny pomysł determinizacji automatów dla słów nie-skończonych. Jest to uproszczona i zmodyfikowana konstrukcja Safry. Kluczowy pomysł jest taki, by zamiastprzypisywać wierzchołkom w abstrakcyjnym drzewie, zbiory stanów automatu, można odwrócić to przypi-sanie. Dzięki temu, rozpatrywane pojęcie to funkcja ze zbioru Q w ciągi liczb, odpowiadające położeniuodpowiedniego stanu w drzewie. Obiekt taki nazywać będziemy mapą Safry.

Ustalmy niedeterministyczny automat Büchiego A = 〈Q,q0,δ,F 〉. Oznaczmy przez n liczbę stanów A.Najważniejszą częścią mapy Safry jest funkcja częściowa W : Q → 1,2, . . . ,2n∗, o następujących wła-

snościach:

1. obraz W (Q) jest zamknięty ze względu na prefiksy,

2. jeśli jakaś liczba i ∈ 1,2, . . . ,2n występuje w słowach W (q1) i W (q2), to słowa te mają wspólnyprefiks, zawierający liczbę i,

3. każde ze słów w W (Q) jest różnowartościowe, czyli poszczególne litery występują tam co najwyżej raz.

Dodatkowo, każda mapa Safry niektóre słowa w W (Q), oznacza jako świeże.Podobnie jak poprzednio, łatwo sprawdzić że wszystkich możliwych map Safry jest skończenie wiele, więc

można przyjąć je wszystkie za stany nowego automatu. Jako stan początkowy oznaczmy mapę W0 która jestwszędzie nie określona, poza stanem q0 i tam przyjmuje wartość ε.

Pozostaje zdefiniować przejścia konstruowanego automatu. Weźmy dowolną mapę Safry W , oraz literkęa. Przekształceń dokonywać będziemy w kilku krokach:

25

Page 26: Automaty a logika

1. Zdefiniujmy nową mapę Safry W ′ na stanie q ∈ Q. Weźmy wszystkie stany p ∈ Q, takie że p a→ q.Rozważmy wszystkie ciągi W (p) i wybierzmy z nich alfabetycznie najmniejszy, a spośród porównywal-nych najdłuższy, oznaczmy go w. Połóżmy W ′(q) = w. Dla stanów q ∈ Q, gdzie nie ma żadnego p ∈ Qspełniającego p a→ q, nowa mapa W ′ będzie nieokreślona.

2. Dla każdego q ∈ F , zmieńmy wartość W ′(q) na wartość W ′(q)i, gdzie i to pewna litera, nie używananigdzie indziej w obrazie funkcji W ′.

3. Dopóki istnieje takie słowo w nad alfabetem 1,2, . . . ,2n, że dla pewnego stanu q ∈ Q zachodziW ′(q) > w i dla żadnego stanu p ∈ Q nie zachodzi W ′(p) = w, zmieniamy wartość W ′(r) na w nawszystkich stanach r ∈ Q spełniających W ′(r) > w. Można na to patrzeć tak, że jeśli obraz W ′(Q)nie jest zamknięty ze względu na prefiksy, to wszystkie słowa, których jakiś prefiks nie leży w W ′(Q)skracamy.

4. Wszystkie słowa w których dotyczyły zmiany z poprzedniego punktu (i wciąż są w obrazie) W ′(Q)oznaczmy jako świeże, pozostałe oznaczmy jako nie świeże.

Zauważmy, że kolejność wykonywania operacji 3) nie ma znaczenia, a jeśli jakieś słowo w jest oznaczonejako świeże w W ′, to żadne jego przedłużenie nie leży w obrazie W ′(Q).

Powyższa operacja jest deterministyczna, dostajemy więc deterministyczny automat o stanach będącychmapami Safry. Oznaczmy go S. Pozostaje zdefiniować warunek akceptacji. Powiemy, że ciąg map Safry Wi

jest akceptujący, jeśli istnieje takie słowo w ∈ 1,2, . . . ,2n∗, że od pewnego momentu jest ono zawsze obecnew zbiorze Wi(Q) i nieskończenie często jest świeże. Dość prosto przełożyć to na warunek Mullera (a nawetRabina).

Pozostaje pokazać, że zdefiniowany powyżej automat jest równoważny A.Przydatne będą następujące spostrzeżenia:

1. Zbiór stanów na których określona jest odpowiednia mapa Safry, to zbiór stanów osiągalnych w danymmomencie ze stanu początkowego.

2. Jeśli dla i < j oraz pewnego stanu q ∈ Q mamy Wj(q) = w, w jest świeże w Wi,Wj i w jest obecne wewszystkich zbiorach Wi(Q),Wi+1(Q), . . . ,Wj(Q), to istnieje stan p spełniający Wi(p) = w oraz bieg zestanu p w momencie i, do stanu q w momencie j, przechodzący przez stan akceptujący.

Ostatnia własność jest kluczowa dla zrozumienia konstrukcji, stanowi ona bezpośredni odpowiednik ana-logicznego lematu w przypadku zwykłych drzew Safry.

Dowód L(A) ⊆ L(S). Załóżmy, że istnieje bieg akceptujący q0,q1, . . . automatu A na danym słowie α ∈ Aω.Załóżmy, że mapy Safry uzyskane w trakcie czytania słowa α, to W0,W1, . . .. Pokażemy, że istnieje takiesłowo w ∈ 1,2, . . . ,2n, które od pewnego momentu jest obecne w obrazach Wi(Q) i nieskończenie wielerazy pewien stan q spełniający Wi(q) = w jest świeży.

Spójrzmy na wartości Wi(qi). Rozważmy L = lim infi |Wi(qi)|. Od pewnego momentu słowa Wi(qi)|L sięstabilizują na pewnym słowie H ∈ 1,2, . . . ,2nL, bo gdy prefiks długości L przestanie być kasowany, nierośnie on leksykograficznie. W takim razie H od pewnego momentu jest stale obecne w Wi(Q). Jednocześnienieskończenie często qi jest akceptujący, więc nieskończenie często słowo Wi(qi) ≥ H zostaje wydłużone ododatkową literkę. Ale po każdym takim wydłużeniu, prędzej czy później długość odpowiednich słów znówwraca do L, więc nieskończenie często H jest świeże.

Dowód L(S) ⊆ L(A). Dowód analogiczny jak w przypadku zwykłych drzew Safry:Załóżmy, że istnieje słowo w ∈ 1,2, . . . ,2n∗, które od pewnego momentu jest stale obecne w Wi(Q)

i nieskończenie często jest świeże. Więc istnieją dowolnie długie biegi automatu, które w momentach gdyw jest świeże są mapowane w w przez funkcje Wi. Więc w tych biegach występują dowolnie duże liczbywystąpień stanów akceptujących. Więc korzystając z lematu Königa istnieje bieg, który nieskończenie wielerazy przechodzi przez stan akceptujący.

26

Page 27: Automaty a logika

4.7 WnioskiJeśli w powyższym twierdzeniu zastosujemy konstrukcję bezpośrednią, można w oparciu o dwa powyższetwierdzenia wykazać w prosty sposób zamknięcie NBA na dopełnienia. Możemy mianowicie wziąć dowolnyNBA A rozpoznający język L, rozpatrzyć równoważny mu DMA, tam zanegować formułę boolowską defi-niującą biegi akceptujące, wreszcie wrócić do NBA, uzyskując automat B rozpoznający dopełnienie L.

27

Page 28: Automaty a logika

Zadania

Zadanie 4.1. Przez WMSO, z angielskiego Weak Monadic Second-Order Logic, oznaczamy wariant MSO,w którym wolno kwantyfikować wyłącznie po elementach oraz skończonych podzbiorach uniwersum.

Pokazać, że każda formuła WMSO(≤) na słowach nieskończonych jest równoważna formule logiki MSO(≤). Rozwiązanie na stronie 80.

Zadanie 4.2. Rozważmy topologię na zbiorze Aω, w której bazowymi zbiorami otwartymi są zbiory postaciwAω dla w ∈ A∗. Innymi słowy, jest to topologia zadana przez odległość

d(w,v) =1n

gdzie n to pierwsza pozycja, na której różnią się w,v ∈ Aω.

(Niektórzy wolą 1/2n zamiast 1/n w powyższym napisie.) Pokazać, że każdy język ω-regularny jest booleowskąkombinacją przeliczalnych iloczynów zbiorów otwartych. (Inaczej mówiąc, na poziomie bool(Π2) w hierarchiiborelowskiej.)

Zadanie 4.3. Wskazać algorytm, który sprawdza czy język ω-regularny (dany przez NBA czy DMA) jestzbiorem otwartym.

Zadanie 4.4. Porównać powyższą topologię z topologią zadaną przez odległość:

e(w,v) =1n

gdzie n to najmniejsza ilość stanów w NBA, który akceptuje w ale nie v.

Rozwiązanie na stronie 82.

Zadanie 4.5. Niech α : A∗ → G homomorfizm w grupę. Dla elementów g,h ∈ G wskazać automat, któryakceptuje słowa postaci α−1(g)(α−1(h))ω.

Zadanie 4.6. Wykaż, że języki rozpoznawane przez automaty deterministyczne z warunkiem parzystości,używające priorytetów i, . . . , j dla i ∈ 0, 1, j ≥ i tworzą ścisłą hierarchię. Rozwiązanie na stronie 84.

28

Page 29: Automaty a logika

Rozdział 5

Języki regularne słów skończonychSpisali: Marek Kiszkis

5.1 Języki regularne słów skończonych a logika pierwszego rzędu(FO)

Podczas tego wykładu ograniczamy się do słów skończonych, i języków składających się ze słów skończonych.Celem wykładu jest opisanie które języki regularne (słów skończonych) dają się opisać formułami FO,

tzn sformułowanie i udowodnienie twierdzenia:

Twierdzenie (v1) Niech L - język regularny. Równoważne są warunki:

1. L opisuje się formułą FO

2. ...

Chcielibyśmy mieć jakiś inny, rozstrzygalny warunek równoważny z (1). Przypomnijmy sobie języki regu-larne, które nie dają się opisać formułą FO. Przykładami takich języków są: (aaa)∗, a3n, (abab)∗ (parzyściewiele razy “ab′′).

Zastanówmy się jak wyglądają minimalne automaty deterministyczne (MDF) rozpoznające powyższejęzyki.

W obu przypadkach możemy zauważyć “cykl po słowie” (w pierwszym automacie istnieje stan q, w którympo 3-krotnym przeczytaniu słowa “a′′ wracamy do q, w drugim - istnieje stan r, w którym po 2-krotnymprzeczytaniu słowa “ab′′ wracamy do r). Bierze się to stąd, że automat pierwszy “liczy” ilość liter “a′′ modulo3, a drugi - ilość wystąpień “ab′′ modulo 2.

Intuicyjnie (i bardzo nieformalnie): jeżeli MDF rozpoznający język L cokolwiek “liczy”, L nie da się opisaćformułą FO.

W celu sformalizowania powyższej hipotezy, wprowadźmy definicję:

Definicja (Automat bezlicznikowy) Automat jest bezlicznikowy, jeśli

¬∃q∈Q,w∈A+,k>1qwk−→ q

Zatem hipoteza na wersję drugą twierdzenia brzmi:

Twierdzenie (v2) Niech L - język regularny. Równoważne są warunki:

1. L opisuje się formułą FO

29

Page 30: Automaty a logika

2. MDF rozpoznający język L jest bezlicznikowy

Istotne jest rozpatrywanie minimalnego automatu deterministycznego rozpoznającego język L. Je-żeli bowiem rozpatrywalibyśmy automat nieminimalny, mógłby w nim istnieć stan q spełniający powyższywarunek, ale nieosiągalny ze stanu początkowego (a taki q nas nie interesuje). Konieczność rozpatrywaniaautomatu deterministycznego jest oczywista.

Przeprowadzimy dowód (1)⇒ (2) (dokładnie: ¬(2)⇒ ¬(1)

Załóżmy więc, że MDF rozpoznający język L nie jest bezlicznikowy, zatem: ∃q∈Q,w∈A+,k>1qwk−→ q, q

w−→q′ 6= q

Zauważmy, że stan q musi być osiągalny ze stanu początkowego (gdyby tak nie było, q byłby niepotrzebny,zatem automat nie byłby minimalny), powiedzmy po słowie u. Ponadto stan akceptujący musi być osiągalnyz q - gdyby tak nie było, q byłby śmietnikiem, a wiemy że z q możemy dojść do stanu q′ 6= q.

Istnieje więc słowo v, takie że uv ∈ L, uwv /∈ L lub odwrotnie. Gdyby tak nie było, nie umielibyśmyodróżnić stanów q i q′, co przeczy założeniu o minimalności automatu.

Załóżmy teraz, że istnieje formuła ϕ, opisująca język L. Niech n - maksymalne zagłębienie kwantyfikatoróww ϕ. Rozpatrzmy słowa s1 = u(wk

n

)v i s2 = u(wkn+1)v. Na podstawie powyższych rozważań, s1 ∈ L, s2 /∈ L

lub odwrotnie. Wynika to z faktu, że po przeczytaniu słowa u(wlk) dla dowolnego l ≥ 0, automat znajdujesię w stanie q, zaś po przeczytaniu słowa u(wlk+1) - w stanie q′.

Jednak jesteśmy w stanie, za pomocą gry Ehrenfeuchta–Fraïssé pokazać, że formuła ϕ nie odróżni tychdwóch słów, co kończy dowód.

Implikacji (2) ⇒ (1) nie udowodnimy bezpośrednio. Zamiast tego wprowadzimy warunek (3), po czym,udowodnimy (3)⇒ (1) i (2)⇒ (3).

Twierdzenie (v3) Niech L - język regularny. Równoważne są warunki:

1. L opisuje się formułą FO

2. MDF rozpoznający język L jest bezlicznikowy

3. L opisuje się formułą LTL

LTL - logika temporalna, bez zmiennych, jedyne do czego możemy się odwoływać to bieżąca pozycja.Formuły w LTL definiujemy indukcyjnie:

• formuła a jest predykatem sprawdzającym, czy na danej pozycji znajduje się litera a

• jeżeli ϕ,ψ to formuły LTL to ϕ ∨ ψ też jest formułą LTL

• jeżeli ϕ jest formułą LTL, to ¬ϕ też jest formułą LTL

• jeżeli ϕ,ψ to formuły LTL, to ϕ⋃ψ (ϕ until ψ) też jest formułą LTL, mówiącą: na pewnej pozycji j

na prawo od aktualnej pozycji spełniona jest formuła ψ, zaś na wszystkich pozycjach od aktualnej do(j − 1)-szej spełniona jest formuła ϕ

Zaś formalnie (po lewej stronie równoważności formuły LTL, po prawej FO lub mniejsze LTL):

• w |= a⇔ w1 = “a′′

• w |= ϕ ∨ ψ ⇔ w |= ϕ ∨ w |= ψ

• w |= ¬ϕ⇔ ¬(w |= ϕ)

30

Page 31: Automaty a logika

• w |= ϕ⋃ψ ⇔ ∃1<i≤|w| (wi..|w| |= ψ, i ∀1<j<i wj..|w| |= ϕ)

Zauważmy, że powyższa definicja dowodzi implikacji (3)⇒ (1).

Wprowadzimy jeszcze operator X oraz prawdę, aby pokazać konkretne przykłady formuł LTL.(true 7→ a ∨ ¬a)Xϕ 7→ false

⋃ϕ

Widać, że w |=Xϕ⇔ w2..|w| |= ϕ

Przykładowa formuła w LTL rozpoznająca słowo abc i nic więcej to:a ∧ X (b ∧ X (c ∧ ¬X true))

Z definicji LTL możemy wyciągnąć jeszcze jeden wniosek: dla danej formuły LTL, odpowiadająca jejformuła w FO nie musi używać więcej niż trzech zmiennych.

Nie jest to prawda w ogólności - np. gdybyśmy rozważali formuły działające na drzewach. Jednak wprzypadku formuł działających na słowach, jest to prawda. Zatem możemy sformułować ostateczną jużwersję twierdzenia:

Twierdzenie (v4) Niech L - język regularny. Równoważne są warunki:

1. L opisuje się formułą FO

2. MDF rozpoznający język L jest bezlicznikowy

3. L opisuje się formułą LTL

4. L opisuje się formułą FO używającą co najwyżej trzech zmiennych

Implikacja (4)⇒ (1) jest oczywista, implikację (3)⇒ (4) pozostawiamy Czytelnikowi jako proste ćwicze-nie.

Pozostała nam do udowodnienia już tylko implikacja (2) ⇒ (3) (najtrudniejsza). Udowodnimy ją przezindukcję po dwóch parametrach: po rozmiarze automatu (konkretnie po ilości stanów) i po rozmiarze alfabetu.

Niech A - automat deterministyczny, bezlicznikowy. Nasz cel: dla każdych dwóch stanów p, q w automacieA działającym nad alfabetem Σ, chcemy podać formułę ϕA,Σp,q (w LTL) akceptującą język w : p w−→ q, tznjęzyk słów po których wczytaniu w stanie p, przejdziemy do stanu q. Najbardziej oczywiście będzie nasinteresować formuła ϕA,Σqi,qf

.

Dla danego słowa w, definiujemy funkcję wA : Q→ Q następująco:jeżeli q w−→ q′, to wA(q)← q′

Rozważmy 2 przypadki:

1. (baza indukcyjna).∀a∈Σ aA = idwtedy ϕA,Σp,p = true, ϕA,Σp,q = false dla p 6= q

2. (krok indukcyjny).∃a∈Σ aA 6= idZauważmy, że aA nie może być permutacją nad Q, bo wtedy automat A nie byłby bezlicznikowy (zpewnego stanu, po słowie jednoliterowym “a′′, istniałby cykl długości > 1).Zatem aA(Q) = P ⊂ Q

Formułę ϕA,Σp,q napiszemy jako alternatywę trzech formuł:ϕA,Σp,q ∨ ϕA,Σp,q ∨ ϕA,Σp,q ,gdzie

31

Page 32: Automaty a logika

(a) ϕA,Σp,q będzie formułą akceptującą język w : p w−→ q i w nie zawiera żadnej litery a,

(b) ϕA,Σp,q - formułą akceptującą język w : p w−→ q i w zawiera dokładnie jedno wystąpienie litery a,

(c) ϕA,Σp,q - formułą akceptującą język w : p w−→ q i w zawiera ≥ 2 wystąpienia litery a.

ϕA,Σp,q = ϕA,Σ\ap,q

Nowy alfabet jest mniejszy, zatem mamy żądaną formułę z założenia indukcyjnego.

ϕA,Σp,q = (“litera a występuje”) ∧(∃r∈Q do litery a jest ϕA,Σ\ap,r ,za literą a jest ϕA,Σ\ar′,q ∧ r a−→ r′)

Pierwszy nawias możemy zrealizować formułą: (a ∨ true⋃a)

za literą “a′′ jest ϕA,Σ\ar′,q -

idziemy o jeden krok za “a′′, i odpalamy ϕA,Σ\ar′,q

do litery “a′′ jest ϕA,Σ\ap,r -będzie oczywiście bazować na ϕA,Σ\ap,r . Jednak w tej formul mogą znaleźć się untile, które w nowymsłowie chciałyby “wyjść” za “a′′. Musimy więc przerobić tę formułę tak żeby faktycznie dotyczyła onatylko części słowa znajdującej się przed literą “a′′:

Na podstawie ϕ tworzymy ϕ, w następujący sposób:

• b = b

• ϕ ∨ ψ = ϕ ∨ ψ• ¬b = ¬b ∧ ¬a (żeby dobrze działało na słowie pustym)

• ϕ⋃ψ = (ϕ ∧ ¬a)

⋃(ψ ∧ ¬a)

Formalnie:Lemat 1. wav |= ϕ⇔ w |= ϕ

Dowód - wprost z definicji daszka.

ϕA,Σp,q =(“są przynajmniej 2a”) ∧(∃r,s′∈Q “do pierwszego a jest ϕA,Σ\ap,r ” ∧

“za ostatnim a jest ϕA,Σ\as′,q ”)∧ (“pomiędzy pierwszym a ostatnim a jest dobrze”)

Pierwszy nawias łatwo realizujemy podobnie jak poprzednio. Również obie formuły pod kwantyfikato-rem konstruujemy z mniejszych, tak jak w poprzednim przypadku.

Pozostaje jeszcze napisać formułę sprawdzającą “środek” słowa.

Podzielmy słowo według wystąpień litery a:

....a([]....a)([].......a)([].....a)([]..a)......r r’ s s’

Każdy fragment

32

Page 33: Automaty a logika

([]....a)

chcemy potraktować jak pojedynczą literę. Zauważmy, że przy powyższym podziale słowa każdy takifragment startuje w pewnym stanie ze zbioru P , i kończy w pewnym stanie z P . Możemy więc rozpa-trywać te fragmenty jako funkcje P → P , tym samym utożsamiając niektóre słowa, ale to nie szkodzi.

Utwórzmy nowy automat B, jak następuje:

• Stany B - tylko stany ze zbioru P ,

• Alfabet Γ = f : P → P

• Przejścia - p f−→ f(p)

Oczywiście alfabet automatu B jest najprawdopodobniej o wiele większy niż automatu A, ale B mamniej stanów (P jest właściwym podzbiotem Q), z założenia indukcyjnego mamy więc formułę ϕB,Γr′,s .

Formuła ta jednak działa na słowach nad alfabetem Γ, musimy więc trochę ją przerobić: Każde “f ′′ wtej formule zamieniamy na:∃p∈Q (“jest przejście z p do f(p) kończące się przed najbliższym wystąpieniem litery a”)

Wymaga to jeszcze przerobienia tak, żeby untile nie mogły byc prawdziwe w środku “małych” słów,tylko pod koniec fragmentów kończących się na a:ϕ⋃ψ = (¬a ∨ (a ∧ X ϕ))

⋃(a ∧ X ψ)

Konstrukcja formuły ϕA,Σp,q kończy krok indukcyjny i dowód implikacji (2)⇒ (3).

33

Page 34: Automaty a logika

34

Page 35: Automaty a logika

Rozdział 6

AlternacjaSpisali: Michał Pilipczuk i Oskar Skibski

6.1 Alternacja na słowach skończonych

Standardowy automat niedeterministyczny akceptuje słowo, gdy istnieje bieg akceptujący. Od teraz bę-dziemy go nazywali także automatem egzystencjalnym. Analogicznie możemy rozważać ten sam automatz inną semantyką — automat będzie akceptował słowo, jeśli każdy bieg na tym słowie jest akceptujący.Ten automat będziemy nazywać uniwersalnym. W ten sposób możemy zdefiniować dwie semantyki tegosamego automatu. Zależnie od definicji będzie on akceptował różne języki. Dla automatu egzystencjalnegojęzyk ten będziemy nazywać L∃(A), dla uniwersalnego L∀(A).

p q0ε

a q1

q2

a

a

εa

a

r0 r1

Przykład: Automat z rysunku nad alfabetem jednoliterowym, rozważany jako automat egzystencjalny ak-ceptuje słowa o długości podzielnej przez 2 lub 3, czyli przystającej do 0,2,3 lub 4 modulo 6. Ten samautomat rozumiany jako automat uniwersalny będzie akceptował jedynie słowa o długości podzielnej przez2 i 3, czyli przez 6.

Nasuwa się pytanie: jakiej długości jest najkrótsze słowo akceptowane przez dany automat, o ile istnieje?Łatwo sprawdzić, że dla automatu egzystencjalnego będzie ono nie większe niż wielkość automatu — gdyżdługość najkrótszej ścieżki do stanu akceptującego szacuje się z góry przez liczbę stanów. Da się pokazać, że wautomatach uniwersalnych może być ono wykładniczej długości. Wystarczy rozszerzyć przytoczony przykładna więcej liczb pierwszych niż tylko 2 i 3.

35

Page 36: Automaty a logika

Fakt 16. ProblemDane: Automat uniwersalny APytanie: Czy L(A) = ∅?

jest PSPACE-zupełny.

W ogólności zachodzi tabela:

L∀(A) L∃(A)czy = ∅? PSPACE-zupełny Pczy = A∗? P PSPACE-zupełny

Problem pustości dla automatu egzystencjalnego oczywiście jest w P , gdyż po prostu za pomocą BFS-a stwierdzamy, czy któryś stan akceptujący jest osiągalny. Z przytoczonego faktu problem pustości dlaautomatu uniwersalnego jest PSPACE-zupełny. Problem pełności, czyli czy język definiowany przez automatjest całym A∗, jest dualny do problemu pustości poprzez:

Fakt 17. Jeśli automatowi A przyporządkujemy automat A poprzez zamianę każdego stanu akceptującegona nieakceptujący i vice versa, to zachodzi równość

L∃(A) = A∗ − L∀(A)

DowódAutomat egzystencjalny A akceptuje słowo wtedy i tylko wtedy, gdy istnieje bieg akceptujący, czyli wtedy itylko wtedy gdy nie każdy bieg jest nieakceptujący, czy wtedy i tylko wtedy gdy automat A nie akceptujesłowa. Stąd słowo należy do języka L∃(A), wtedy i tylko wtedy gdy nie należy do języka L∀(A), co dowodzitezy. 2

Naturalnym zdaje się w tym momencie próba połączenia uniwersalności i egzystencjalności w nową klasęautomatów: automatów alternujących. Dla każdego stanu powiemy, czy jest on uniwersalny, czy egzy-stencjalny. W ten sposób zarówno automaty uniwersalne jak i egzystencjalne będą podklasą alternujących,gdzie wszystkie stany są jednego rodzaju.

Definicja 8. Automatem alternującym nazywamy szóstkę uporządkowaną

(Q∃,Q∀,q0 ∈ Q,F ⊆ Q,A, δ ⊆ Q×A×Q)

gdzie Q∃ ∪ Q∀ jest rozłącznym podziałem zbioru Q na stany egzystencjalne i uniwersalne, q0 jest stanempoczątkowym, F jest zbiorem stanów akceptujących, A jest alfabetem a δ jest funkcją przejścia pomiędzystanami.

Teraz trzeba będzie zdefiniować co to znaczy, że automat akceptuje słowo w = a1a2 . . . an. Pierwszepodejście będzie uogólniało standardową definicję biegu.

Definicja 9. Biegiem akceptującym automatu alternującego A = (Q∃,Q∀,q0,F,A, δ) nazywamy ciąg zbio-rów stanów Q0, Q1, . . . ,Qn, takich, że:

(a) q0 ∈ Q0,

(b) Qn ⊆ F ,

(c) dla przejścia z Qi−1 do Qi po literze ai:

– jeśli q ∈ Qi−1 ∩Q∃ to istnieje tranzycja (q,ai,p) ∈ δ dla pewnego p ∈ Qi,– jeśli q ∈ Qi−1 ∩Q∀ to dla każdej tranzycji (q,ai,p) ∈ δ zachodzi p ∈ Qi.

36

Page 37: Automaty a logika

Intuicja stojąca za tą definicją jest taka, że Qi opisuje zbiór stanów z których musimy zaakceptowaćpo wczytaniu i-tej litery. Początkowo musimy zaakceptować co najmniej ze stanu początkowego, na końcumusimy wiedzieć, że stany, w których się potencjalnie znaleźliśmy, są akceptujące. Przejście egzystencjalneodpowiada temu, że automat niedeterministycznie zgaduje stan p, do którego przejdzie. Przejście uniwersalneodpowiada temu, że dla wszystkich potencjalnych przejść musimy umieć dalej zaakceptować.

Powyższa konstrukcja pokazuje też, że automaty alternujące nie mają większej siły wyrazu niż zwyczajneautomat niedeterministyczne (czy deterministyczne).

Fakt 18. Dla każdego automatu alternującego A istnieje automat niedeterministyczny B taki, że

Lalt(A) = L∃(B).

DowódAutomat B za zbiór stanów będzie miał P (Q), gdzie Q są stanami automatu A. Jego stanem początkowymbędzie q0, stany akceptujące to podzbiory F , zaś przejścia są opisane w definicji biegu akceptującego. 2

Z tego faktu płynie następujący, ważny wniosek:

Twierdzenie 19. ProblemDane: Automat alternujący APytanie: Czy Lalt(A) = ∅?

jest w PSPACE.

DowódPoprzez determinizację maszyn Turinga o wielomianowej pamięci da się udowodnić, że PSPACE=NPSPACE.Wykażemy zatem, że rozważany problem jest w NPSPACE. Istotnie, trzymając w wielomianowej pamięcizbiór stanów automatu A możemy symulować działanie automatu niedeterministycznego B z poprzedniegofaktu. Dzięki temu, że działamy w NPSPACE możemy symulować jego niedeterminizm. Algorytm zgadujebieg w automacie B i w wielomianowej pamięci weryfikuje jego poprawność. 2

Warto uczynić uwagę, że problem ten jest oczywiście trudniejszy od PSPACE-trudnego zagadnieniapustości dla automatu uniwersalnego. Stąd jest on też PSPACE trudny, więc w sumie PSPACE-zupełny.

Definicja biegu jest dość niewygodna w użyciu, zwłaszcza we wszelkich dowodach kombinatorycznych.Dlatego wprowadzimy drugą definicję akceptacji słowa, która korzysta z gier.

Grą GAw na słowie w = a1a2 . . . an i automacie alternującym A nazwiemy grę w której gracze ∃ i ∀generują bieg automatu A na słowie w. Pozycjami gry są pary (q,i) ∈ Q × 0,1, . . . ,|w|. Gra zaczyna sięod pozycji (q0,0). Ruch wykonuje gracz „kontrolujący” stan — dla stanu egzystencjalnego gracz ∃, dla stanuuniwersalnego gracz ∀. Ruch polega na zmianie pozycji (q,i) na (p,i+ 1) pod warunkiem, że (q,ai+1,p) ∈ δ.Czyli gracz, który wykonuje ruch w pozycji (q,i), wybiera jedną z tranzycji automatu. Grę wygrywa gracz ∃jeśli gra dotrze do pozycji (q,|w|) dla q ∈ F , w przeciwnym razie grę wygrywa gracz ∀. (Jeśli w pozycji (q,i)nie ma żadnej tranzycji odpowiadającej stanowi q i literze ai+1, to przegrywa gracz kontrolujący q.)

Definicja 10. Powiemy, że automat A akceptuje słowo w jeśli gracz ∃ w grze GAw ma strategię wygrywającą.

Zanim formalnie udowodnimy równoważność tych dwóch definicji, zobaczmy, że druga z nich jest kombi-natorycznie dużo prostsza.

Fakt 20. Automatowi alternującemu A przypiszmy automat dualny A, w którym wszystkie stany akceptującezostały zamienione na nieakceptujące i vice versa oraz wszystkie stany uniwersalne zostały zamienione naegzystencjalne i vice versa. Wówczas zachodzi równość

L(A) = A∗ − L(A).

DowódZauważmy, że gra GAw jest dokładnie grą GAw , tylko zamieniamy graczy rolami. Istotnie, gracze kontrolują

37

Page 38: Automaty a logika

dualne zbiory stanów i na dualnych zbiorach wygrywają, stąd sytuacja wygląda tak, jakby się zamienili. Zeskończoności gry w GAw gracz ∃ ma strategię wygrywającą wtedy i tylko wtedy gdy ∀ nie ma, czyli wtedy itylko wtedy gdy ∃ nie ma strategii wygrywającej w GAw . Stąd automat A akceptuje wtedy i tylko wtedy, gdyA nie akceptuje co wprost tłumaczy się na tezę. 2

W drugiej definicji potrafimy także opisywać zbiory stanów podobne jak w definicji biegu akceptującego.

Fakt 21. Dla danego automatu alternującego A istnieje deterministyczny automat lustrzany (czytający słowood końca) B o zbiorze stanów P (Q), taki, że L(A) = L(B).

DowódAutomat B będzie dynamicznie obliczał od końca zbiory stanów, w których ∃ ma strategię wygrywającą.Zaczyna ze zbioremQn = F i czytając litery od końca przechodzi od zbioru stanów wygrywających dla sufiksudo zbioru stanów dla sufiksu o jeden dłuższego. Zauważmy, że dla danego zbioru stanów wygrywającychQi i poprzedniej litery a, poprzedni zbiór stanów wygrywających Qi−1 jest wyznaczony deterministycznie.Stan uniwersalny należy doń, jeśli wszystkie przejścia po literze ai z niego prowadzą do stanów z Qi. Stanegzystencjalny zaś, jeśli istnieje chociaż jedno takie przejście. Automat akceptuje w stanach zawierającychq0. 2

Płynie stąd wniosek:

Fakt 22. ProblemDane: Automat alternujący A, słowo wPytanie: Czy w ∈ Lalt(A)?

jest w P.

DowódZauważmy, że działanie automatu deterministycznego B z poprzedniego faktu możemy wielomianowo sy-mulować poprzez algorytm dynamiczny. Trzymając za każdym razem zbiór stanów Qi i tworzymy zeń przypomocy ai zbiór Qi−1 zgodnie z opisanymi regułami. Po n krokach otrzymawszy Q0 sprawdzamy, czy q0 dońnależy. 2

Do pełni szczęścia pozostał formalny dowód równoważności obu definicji akceptacji.

Twierdzenie 23. Definicja akceptacji automatu alternującego przez bieg jest równoważna definicji przezgrę.

DowódWpierw dowiedziemy implikacji (⇐). Załóżmy, że gracz ∃ ma strategię wygrywającą w grze. Wówczas, biorącciąg zbiorów (Qi) z dowodu poprzednich faktów, otrzymujemy bieg akceptujący automatu:

• warunek (a) jest spełniony, gdyż ∃ ma strategię wygrywającą,

• warunek (b) jest spełniony, bo Qn = F ,

• warunek (c) jest spełniony z konstrukcji zbiorów Qi.

Przejdźmy zatem do implikacji (⇒). Niech (Qi) będzie biegiem akceptującym. Wówczas ∃ będzie poruszałsię tak, że dla każdej możliwej pozycji (q,i) w której GAw się znajdzie, zajdzie q ∈ Qi. Ruch gracza ∀ oczywiścienie złamie tego warunku, gdyż wszystkie stany do których są przejścia ze stanu uniwersalnego po danejliterze słowa należą do kolejnego ze zbiorów Qi. Jednocześnie gracz ∃ może tak grać, by tego warunku niezłamać, gdyż w stanach egzystencjalnych mamy zagwarantowane istnienie przejścia nie wyprowadzającegopoza kolejne Qi. Grając tą strategią gracz ∃ zagwarantuje, że dla końcowej pozycji gry (q,n) zajdzie q ∈ Qn,czyli wobec tego, że Qn ⊆ F , również q ∈ F . 2

38

Page 39: Automaty a logika

6.2 Alternacja na słowach nieskończonychW świetle poprzednich wykładów naturalnym pomysłem zdaje się rozszerzenie pojęcia automatów alternu-jących na słowa nieskończone. W tym celu musimy przedefiniować pojęcie akceptacji. Wpierw podejdziemydo problemu wykorzystując warunek Mullera, choć później okaże się to nie najlepszym pomysłem.

Zauważmy, że pojęcie gry GAw w sposób naturalny przedłuża się na automat nieskończony! Wystarczy,że warunkiem wygranej będzie spełnienie warunku Mullera przez wygenerowany w czasie gry nieskończonyciąg stanów, zamiast po prostu znalezienia się w stanie akceptującym. Oczywiście powstała gra jest grą oniekończonych rozgrywkach, co będzie wkrótce wymagało pewnych wyjaśnień.

Uogólnienie pojęcia biegu wymaga nieco więcej pracy. Tym razem bieg będzie drzewem — intuicyjniejest to drzewo kodujące strategię gracza ∃.Definicja 11. Biegiem akceptującym alternującego automatu z warunkiem Mullera na słowie nieskoń-czonym w = a1a2 . . . jest drzewo T etykietowane stanami z Q o następującym własnościach:

(a) etykieta korzenia to q0,

(b) jeśli węzeł o zagłębieniu i ma etykietę q ∈ Q∃ to ma on dokładnie jednego syna o etykiecie p takiej, że(q,ai+1,p) ∈ δ.

(c) jeśli węzeł o zagłębieniu i ma etykietę q ∈ Q∀ to dla każdego p takiego, że (q,ai+1,p) ∈ δ ma on syna oetykiecie p,

(d) na każdej ścieżce nieskończonej idącej w dół drzewa jest spełniony warunek Mullera.

Oczywiście słowo jest akceptowane, jeśli istnieje dlań bieg akceptujący w sensie powyższej definicji.

Twierdzenie 24. Definicja akceptacji automatu alternującego na słowach nieskończonych przez bieg jestrównoważna definicji przez grę.

DowódZauważmy, że strategia dla gracza ∃ w grze GAw przekłada się na budowę biegu akceptującego. Bieg budujemyindukcyjnie — jedyny niedeterminizm w konstrukcji występuje w stanach egzystencjalnych. Wybierzemy tamp tak, jak wybrałby gracz ∃ w swojej stategii. Dzięki temu, że strategia jest wygrywająca, warunek Mullerajest spełniony na każdej ścieżce — w przeciwnym razie gracz ∀ mółgby pokierować grę zgodnie z tą ścieżkąi wygrać grę, podczas gdy ∃ gra strategią wygrywającą.

Teraz mając dany bieg skonstruujemy strategię. Pokażemy, że gracz ∃ może tak grać, aby ciąg kolejnychstanów odwiedzanych w czasie gry tworzył ścieżkę idącą w dół drzewa będącego biegiem. W stanach eg-zystencjalnych gracz ∃ wybiera ruch zagwarantowany przez warunek (b) i w ten sposób przechodzi w dółdrzewa. W stanach uniwersalnych dzięki warunkowi (c) gracz ∀ musi pójść w dół drzewa. Grając tą strategiągracz ∃ niezależnie od ruchów ∀ doprowadzi do zbudowania z odwiedzanych stanów ścieżki idącej w dółdrzewa, na której na mocy warunku (d) jest spełniony warunek Mullera. 2

Teraz chcielibyśmy przełożyć także inne rezultaty uzyskane na słowach skończonych, przede wszystkimwynik o komplementarności języków akceptowanych przez automat i automat dualny. Tym razem automa-towi alternującemu z warunkiem Mullera A przyporządkujemy automat dualny, w którym warunek Mullerajest zanegowany, zaś wszystkie stany egzystencjalne zamienione na uniwersalne i vice versa. Chcielibyśmywykazać, że

L(A) = Aω − L(A).

Próbując powtórzyć dowód skończony łatwo zobaczyć, że wystarczy wykazać, że w grze GAw gracz ∃ma strategię wygrywającą wtedy i tylko wtedy, gdy ∀ nie ma. Dla gier skończonych stwierdzenie to jestoczywiste. Dla gier nieskończonych wręcz przeciwnie — jest w ogólności nieprawdziwe! (W ogólności znaczyprzy niektórych dziwacznych warunkach wygrywających, bardziej złożonych od warunku Mullera.) Mogą siębowiem zdarzyć takie gry, w których żaden z graczy nie ma strategii wygrywającej — dla każdej strategiiktóregokolwiek z graczy drugi z nich ma strategię lepszą. Aby to zademonstrować, przytoczymy przykładpochodzący od Eryka Kopczyńskiego. Wpierw jednak kilka definicji:

39

Page 40: Automaty a logika

Definicja 12. Funkcją parzystości na zbiorze Ω (lub nieskończonym XORem czy też flip setem) nazywamytaką funkcję f : 2Ω → 0,1, że jeśli x i y są elementami 2Ω różniącymi się na jednej pozycji, to f(x) 6= f(y).

Widać, że warunek z definicji poprzez trywialną indukcję przedłuża się do wzajemnej relacji wartości fna ciągach różniących się na skończonej liczbie pozycji. Jeśli różnią się one na parzystej liczbie elementów,to wartości f nań są równe, w przeciwnym razie są różne. Stąd widzimy, że na skończonym Ω istnieją tylkodwie różne funkcje parzystości odpowiadające zadaniu wartości f na dowolnym elemencie i jednoznacznemuprzedłużeniu na pozostałe. Intuicja teoriomnogościowa podpowiada jednak:

Fakt 25. Na zbiorze Ω takim, że |Ω| = κ ≥ ω istnieje 22κ funkcji parzystości.

DowódOkreślmy relację v na 2Ω taką, że x v y wtedy i tylko wtedy, gdy x i y różnią się na skończonej liczbie pozycji.Oczywiście v jest relacją równoważności. Jednocześnie każda klasa abstrakcji v ma moc κ<ω = κ, gdyżkażdy element pozostający w relacji z danym odpowiada jednoznacznie wyborowi skończonej liczby pozycjina których się różni. Jeśli klas abstrakcji jest λ, to sumując je uzyskujemy, że λ · κ = 2κ. Ponieważ κ < 2κ

z twierdzenia Cantora oraz λ · κ = max(λ,κ) z twierdzenia Hessenberga, to λ = 2κ. Korzystając z pewnikawyboru wybieramy reprezentanta z każdej klasy abstrakcji v i określamy wartość f , która jednoznacznieprzedłuży się na jego klasę abstrakcji. Jednocześnie łatwo sprawdzić, że każde takie określenie przedłużysię w sposób spójny z definicją funkcji parzystości, gdyż sprawdzamy w niej jedynie elementy należące dojednej klasy abstrakcji. Stąd funkcji parzystości będzie co najmniej tyle, ile sposobów zadania wartości nareprezentantach, czyli 22κ , i na pewno nie więcej, gdyż tyle jest też w ogóle funkcji 2Ω → 0,1. 2

Do konstrukcji przykładu naszej gry wystarczy jedna funkcja parzystości f na Ω = ω, która na mocywłaśnie dowiedzionego faktu istnieje. Zauważmy, że funkcję f możemy równie dobrze traktować jako językLf = f−1(1) ⊆ 0,1ω.

Nasza gra nazywa się Gf . Gra rozpoczyna się od słowa pustego. Gracze ∃ i ∀ na przemian dopisują doniego dowolne niepuste, skończone słowa nad alfabetem 0,1. Gracz ∃ wygrywa grę, jeśli wytworzone słowonieskończone należy do Lf , w przeciwnym razie wygrywa ∀. Grę zaczyna ∃.

Twierdzenie 26. W grze Gf żaden z graczy nie ma strategii wygrywającej.

DowódIdeą przewodnią dowodu będzie możliwość „przeskoczenia” ruchu i zamiany graczy rolami.

Załóżmy, że ∃ ma strategię wygrywającą. Pokażemy strategię ∀, która jest lepsza niż strategia ∃. Załóżmy,że ∃ zaczął od pewnego słowa v1. Gracz ∀ myśli, co by się stało, gdyby odpowiedział 1. Znając strategię∃ wie, że odpowie on dopisując słowo v2. Odpowiada więc 0v2 i następnie gra strategią ∃ zakładającą, żezostało już napisane v11v2 i ruch należy do gracza ∀. Strategia ta oczywiście istnieje, bo po napisaniu v11gracz ∃ napisałby v2. Jednocześnie, grając tą strategią to on wygra, gdyż słowo powstające w wyniku grypo słowie v11v2 należy do Lf (bo wtedy ∃ wygrywa), zatem to samo słowo tylko z zamienionym v11v2 nav10v2 nie należy.

Załóżmy teraz, że ∀ ma strategię. Podobnie jak poprzednio pokażemy lepszą strategię dla ∃. Patrzy on,jakie słowo v1 odpowiedziałby ∀, gdyby ∃ rozpoczął od 1. Rozpoczyna więc grę od słowa 0v1 i przyjmujestrategię ∀ zakładającą, że zostało skonstruowane już słowo 1v1 oraz ∃ ma ruch. Argument podobny dopoprzedniego pokazuje, że przyjmując tę strategię ∃ zawsze wygrywa. 2

40

Page 41: Automaty a logika

6.3 Determinacja gier nieskończonych a automaty alternująceW dalszej części tego rozdziału zastanowimy się kiedy gra jest zdeterminowana, czyli dla jakich warunkówakceptowania zawsze któryś z graczy ma strategię wygrywającą. W tym celu najpierw bardziej formalniezdefiniujemy pojęcie gry oraz strategii.

Definicja 13. Grą (nieskończoną) nazywamy trójkę uporządkowaną

(V = V∃ ∪ V∀, E ⊆ V × V,Win∃ ⊆ V ω)

gdzie V jest wierzchołkami graczy (V∃ gracza ∃, V∀ gracza ∀), E jest zbiorem krawędzi między wierzchołkami,a Win∃ jest warunkiem zwycięstwa gracza ∃. Wierzchołki z krawędziami nazywamy czasem areną.

Rozgrywką nazywamy ciąg wierzchołków v = v1v2v3... ∈ V ω taki że ∀i>0(vi, vi+1) ∈ E. Gracz ∃ wy-grywa rozgrywkę v kiedy v ∈Win∃.

Dla dalszych rozważań zakładamy że z każdego wierzchołka wychodzi co najmniej jedna krawędź. Wartozwrócić też uwagę na to, że nie wskazujemy wierzchołka początkowego - gra może zacząć się w dowolnymmiejscu.

Definicja 14. Strategią dla gracza ∃ nazywamy funkcję σ∃ : V ?V∃ → V , przy czym jeżeli σ∃(v1v2...vn) =vn+1 to (vn, vn+1) ∈ E.

Strategię nazywamy bezpamięciową kiedy nie zależy od wcześniejszego przebiegu rozgrywki, a jedynie odstanu w jakim się znajduje. Można ją wówczas zdefiniować jako σ∃ : V∃ → V .

Powiemy że strategia σ∃ wygrywa z wierzchołka vi jeśli dla każdej strategii σ∀ rozgrywka wyznaczonaprzez strategie jest zwycięska dla gracza ∃. Gracz ∃ wygrywa z wierzchołka vi jeśli ma w tym wierzchołkustrategię wygrywającą.

Wszystkie powyższe definicję analogicznie defniujemy dla gracza ∀.Gra jest zdeterminowana w vi jeśli ∃ albo ∀ ma strategię wygrywającą w vi.

Aby wprowadzić twierdzenie Martina będziemy musieli przypomnieć czym są zbiory borelowskie.

Definicja 15. Zbiorem otwartym nazywamy zbiór, w którym dla każdego jego punktu istnieje otoczeniew całości zawarte w tym zbiorze. Zbiór słów nieskończonych jest otwarty kiedy to czy słowo należy do zbioruzależy wyłącznie od jego prefisku (zbiory te są zatem postaci

⋃i∈I wi0, 1ω gdzie wi ∈ V ?.

Dopełnienie zbioru otwartego nazywamy zbiorem domkniętym.Zbiorem borelowskim nazywamy każdy element najmniejszego ciała zawierającego wszystkie zbiory

otwarte. Wynika z tego, że zbiór będący przeliczalną sumą / iloczynem przeliczalnych sum / iloczynów, ...,zbiorów otwartych jest zbiorem Borelowskim.

Twierdzenie 27. (Martina) Rozważmy grę, gdzie Win∃ jest zbiorem borelowskim. Wówczas gra jest zde-terminowana w każdym wierzchołku.

To twierdzenie pozostawimy bez dowodu, w późniejszej części tej pracy udowodnimy za to twierdzeniemocniejsze którego to będzie bezpośrednią konsekwencją.

Spróbujemy teraz skorzystać z twierdzenia Martina dla gry automatowej GAw zdefiniowanej w poprzednimrozdziale. Udowodnijmy najpierw mniejszy fakt - że warunek wygrywający jest borelowski.

Fakt 28. Warunek wygrywający w grze automatowej GAw jest borelowski.

Dowód. Zdefiniujmy grę automatową zgodnie z nową formalną definicją gry. Zbiorem wierzchołków są pary(stan, numer ruchu) (czyli V = Q×N), przy czym V∃ = Q∃×N i V∀ = Q∀×N. Zbiór krawędzi E składa sięz par (q, i)× (p, i+ 1) o ile w A jest przejście z q do p po literze ai+1 (zaczynamy ze stanu (q, 0) wczytującliterę a1). Warunek zwycięstwa gracza ∃ - Win∃ ⊆ (Q×N)ω - składa się zatem z wszystkich ciągów krotek,dla których q0q1q2... spełnia warunek Mullera z A.

Czemu ten warunek jest borelowski? Win∃ jest boolowską kombinacją warunków “stan q występuje nie-skończenie często”, z kolei ten warunek możemy zapisać jako

⋂i∈N⋃j≥i “stan q występuje na pozycji j”.

Skoro środek tego wyrażenia jest zbiorem otwartym, to całe wyrażenie (jako iloczyn sum zbiorów otwartych)jest zbiorem bolerowskim.

41

Page 42: Automaty a logika

Korzystając z powyższego faktu oraz twierdzenia Martina udowodnimy teraz nowy fakt.

Fakt 29. Niech A będzie automatem alternującym z warunkiem Mullera. Wówczas dla w ∈ Aω zdania “wjest akceptowane przez A” i “w nie jest akceptowane przez A” są równoważne.

Dowód. Fakt ten pokażemy poprzez ciąg zdań równoważnych:

(a) w jest akceptowane przez A

(b) ∃ wygrywa grę GAw

(c) ∀ wygrywa grę GAw

(d) ∃ nie wygrywa gry GAw

(e) w nie jest akceptowane przez GAw

Równoważność zdań (a) i (b) jest oczywista i wynika z definicji gry automatowej GAw .Równoważność zdań (b) i (c) wynika natomiast z definicji automatu dualnego. Skoro ∃ wygrywa w GAw ,

ma jakąś strategię wygrywającą σ∃. W grze dualnej ∀ grając analogiczną strategią σ∀ wygrywa - gdyby niewygrywał strategię pokonującą go można by było przenieść na grę oryginalną.

Wynikanie zdanie (d) z (c) jest oczywista, natomiast w drugą stronę musimy skorzystać z twierdzeniaMartina - możemy, bo warunek wygrywający jest borelowski, co udowodniliśmy powyżej.

W końcu równoważność zdań (d) i (e) wynika z definicji gry.

Następne twierdzenie jakie zdefiniujemy mówi, że dla pewnych warunków akceptacji dla każdego wierz-chołka któryś z graczy ma bezpamięciową strategię wygrywającą (Tw. Martina mówiło też o strategiach zpamięcią). Zastanówmy się najpierw czy warunek Mullera gwarantował prawdziwość tego zdania.

Weźmy następującą arenę z warunkiem Mullera mówiącym że stany 2∃ oraz 3∃ występują nieskończenieczęsto.

1∃

3∃

2∃

Łatwo zauważyć, że gracz ∃ grając strategią bezpamięciową za każdym razem kiedy znajdzie się w wierz-chołku 1∃ pójdzie w tą samą stronę - do wierzchołka 2∃ lub 3∃ - czym spowoduje że drugi wierzchołekwystąpi skończoną ilość razy! Nie istnieje zatem bezpamięciowa strategia wygrywająca dla ∃, przy czymistnieje oczywiście strategia wykorzystująca pamięć - wystarczy zapamiętać gdzie poszliśmy z wierzchołka1∃ i kiedy się w nim znowu znajdziemy skręcić w drugą stronę.

Twierdzenie 30. Niech G będzie będzie grą w której warunek akceptacji jest warunkiem parzystości. Wów-czas dla każdego wierzchołka v jeden z graczy ma bezpamięciową strategię wygrywającą.

Zanim przejdziemy do dowodu przypomnimy czym jest warunek parzystości oraz zdefiniujemy pomocni-czy fakt o łączeniu strategii.

42

Page 43: Automaty a logika

Definicja 16. Określmy dodatkową funkcję Ω: V → 0, 1, ...n przypisującą każdemu wierzchołkowi pewnąliczbę naturalną. Warunek parzystości spełniają wówczas tylko te ciągi v1v2..., dla których lim sup Ω(vi)jest parzyste.

Warunek parzystości możemy zdefiniować także określając porządek liniowy na wierzchołkach i zbiórF ⊆ V . Wówczas warunek parzystości spełniają te ciągi, dla których największy wierzchołek występującynieskończenie często należy do zbioru F .

Fakt 31. Załóżmy że dla W ⊆ V w każdym wierzchołku w ∈ W gracz ∃ ma strategię wygrywającą σ∃,w.Niech win∃(σ∃) będzie zbiorem wierzchołków z których wygrywa ∃ grając zgodnie z σ∃. Wówczas istniejestrategia σ∃ taka, że W ⊆ win∃(σ∃).

Dowód. Postaramy się ze strategii dla wierzchołków zbioru W skonstruować wspólną strategię zdefiniowanąna całym zbiorzeW . W tym celu ponumerujmy strategie σ∃,w kolejnymi liczbami naturalnymi (równie dobrzemożemy zdefiniować dobry porządek na W ). Czym będzie nasze σ∃(v)?

Niech Xv = w ∈ W : v ∈ win(σ∃,w), czyli niech będzie zbiorem wszystkich wierzchołków z W takich,że ich strategia (σ∃,w) jest zdefiniowana dla wierzchołka v. Niech xv = inf(X), czyli będzie najmniejszymtakim wierzchołkiem (zgodnie ze zdefiniowanym porządkiem). Wówczas naszą uogólnioną strategię σ∃ wwierzchołku v określamy zgodnie ze strategią z tego wierzchołka - σ∃(v) = σ∃,xv (v).

Dlaczego nasza konstrukcja działa? Łatwo zauważyć, że grając strategią σ∃ z każdym kolejnym ruchemnumer strategii jaką naśladujemy może się tylko zmniejszyć - jeżeli wykonaliśmy ruch zgodny ze strategią onumerze i to w wierzchołku w którym się znaleźliśmy ta strategia jest także zdefiniowana. Skoro tak, to poskończonej ilości ruchów będziemy naśladować tę samą wygrywającą strategię.

Możemy teraz przejść do dowodu twierdzenia.

Dowód. Dowód przeprowadzimy przez indukcję po n, gdzie n jest maksymalną rangą funkcji parzystości.Załóżmy także, że n jest parzyste (czyli “dobre” dla ∃) - gdyby nie było w dalszym dowodzie wystarczyłobyzamienić graczy ∃ i ∀ miejscami.

Podzielimy teraz wierzchołki na dwa zbiory: zbiórW∀ z wierzchołkami z których ∀ ma pozycyjną strategięwygrywającą oraz W∃ - z resztą. Naszym celem jest zatem pokazanie, że dla każdego wierzchołka z W∃ gracz∃ ma pozycyjną strategię wygrywająca.

Najpierw zauważmy, że skoro ∀ ma strategię pozycyjną z każdego wierzchołka W∀ to z faktu udowodnio-nego powyżej wiemy, że ma pewną uogólnioną strategię pozycyjną σ∀ która wygrywa ze wszystkich wierz-chołków tego zbioru. Wiemy też, że nie opuścimy zbioru W∀ jeżeli w nim zaczniemy:

- gdyby gracz ∃ wykonał ruch poza obszar W∀ po którym mógłby nie przegrać, wówczas wierzchołek zktórego wykonał ten ruch nie może należeć do W∀ - gracz ∀ nie ma z niego strategii wygrywającej!Gdyby natomiast mógł wyjść, ale i tak by przegrał, wówczas wierzchołek do którego wychodzi takżepowinien należeć do W∀ - sprzeczność

- gdyby gracz ∀ wykonujący ruchy zgodnie ze strategią σ∀ wyszedł poza W∀ to oznaczałoby, że z wierz-chołka do jakiego wyszedł także ma strategię pozycyjną - sprzeczność

Rozpatrzmy teraz jakie krawędzie mogą wychodzić z wierzchołków w zbiorze W∃.

43

Page 44: Automaty a logika

W∀∀

W∃

G

Czerwone strzałki oznaczają krawędzie które nie mogą wystąpić.Na diagramie zaznaczone zostały trzy proste, ale ważne dla dalszego dowodu, uwagi. Po pierwsze nie

może istnieć wierzchołek gracza ∀ z którego jakakolwiek krawędź prowadziłaby do zbioru W∀ - wówczaswierzchołek ten także powinien należeć do tego zbioru, jako że gracz ma pozycyjną strategię wygrywającaz niego - wejście do W∀ i dalej granie zgodnie z σ∀. Po drugie, skoro z wierzchołków ∀ nie ma krawędzi doW∀, to zgodnie z założeniem poczynionym odnośnie gier musi istnieć jakaś krawędź prowadząca do W∃. Potrzecie, także każdy wierzchołek gracza ∃ musi mieć co najmniej jedną krawędź prowadzącą do W∃ - gdybyjej nie było wówczas z tego wierzchołka gra przeniosłaby się do W∀ i by przegrał, czyli byłby to kolejnywierzchołek zgodny z definicją W∀.

Z powyższych uwag wynika, że każdy wierzchołek wW∃ ma krawędź prowadzącą do innego wierzchołka wW∃. Możemy zatem określić grę obciętą do wierzchołków z tego zbioru. Zanim zajmiemy się nią, zdefiniujemypojęcie atraktora które przyda nam się w dalszej części dowodu.

Definicja 17. Niech H będzie grą, a U pewnym zbiorem wierzchołków. Wówczas atraktor dla gracza ∃(zapisywany jako Attr∃(U)) jest pierwszym punktem stabilizacji funkcji Attrα∃ (U) zdefiniowanej następująco:

- Attr0∃(U) = U

- Attrα+1∃ (U) = Attrα∃ (U) ∪ v ∈ W∃ : istnieje krawędź z v prowadząca do Attrα∃ (U) ∪ v ∈ W∀: każda

krawędź z v prowadzi do Attrα∀ (U)

- Attrα∃ (U) =⋃β<αAttr

β∃(U) dla przypadków granicznych

Funkcja Attrα∃ zdefiniowana jest nie tylko dla liczb naturalnych ale dla wszystkich liczb porządkowych.Dlaczego jest to potrzebne możemy zobaczyć na poniższym przykładzie.

44

Page 45: Automaty a logika

∃ ∃∃ ∃

1 2 3

ω + 1

ω + 2

Zbiorem U jest wierzchołek zaznaczony na żółto, a wierzchołków w ciągu jest nieskończenie wiele. Przywierzchołkach zapisane są indeksy pierwszych zbiorów Attrα∃ do których one wpadają - wierzchołki “górne”wpadają do zbioru ciągu atraktorów dopiero po nieskończenie wielu iteracjach powiększania.

Zdefiniujmy teraz strategię atraktorową.

Definicja 18. Określmy pozycyjną strategię w oparciu o zbiory Attrα∃ (U) użyte w definicji atraktora dlawierzchołka v∃ ∈ Attr∃(U). Jeżeli v∃ ∈ U , to strategię definiujemy jakkolwiek. Jeżeli nie, to musi istniećtakie najmniejsze β, że v∃ ∈ Attrβ+1

∃ i v∃ 6∈ Attrβ∃ . Skoro tak, to wierzchołek v∃ wpadł do zbioru, ponieważjakaś krawędź z niego prowadzi do zbioru Attrβ∃ . Niech zatem nasza strategia prowadzi gracza ∃ tą krawędzią.Tak zdefiniowaną strategię nazywamy strategią atraktorową.

Fakt 32. Jeśli gracz ∃ gra zgodnie ze strategią atraktorową i gra zaczyna się w atraktorze, to w skończonejliczbie kroków wyląduje w zbiorze U .

Dowód. Rozważmy rozgrywkę v1,v2,v3,v4,... aż do uzyskania wierzchołka z U zgodną ze strategią atrak-torową. Oznaczmy przez αi indeks pierwszego elementu ciągu Attrα∃ zawierającego wierzchołek vi. Jeżeliwierzchołek vi jest wierzchołkiem gracza ∃ to zgodnie ze strategią atraktorową αi+1 jest mniejszy o jeden.Jeśli natomiast vi jest gracza ∀, to zgodnie z definicją atraktora wszystkie krawędzie z tego wierzchołkaprowadzą do któregoś z wcześniejszych zbiorów Attrα∃ . Udowodniliśmy w ten sposób, że ciąg αi jest monoto-nicznie malejący. Pozostaje dowieść, że rozgrywka jest skończona, czyli że zbiór U osiągniemy w skończonejilości kroków. [niejasne]

Wróćmy zatem do naszego dowodu. Rozważmy teraz nową grę obcietą do wierzchołków W∃: H = G|W∃(powiedzieliśmy już że jest ona dobrze zdefiniowana). Niech N będzie zbiorem wierzchołków o randze n wzbiorzeW∃. Jak pokażemy później, gracz ∃ w jakimś sensie będzie chciał wpadać do wierzchołków o randze n(zW∃,W∀ jest dla gracza ∃ nieporządane), wyznaczmy zatem atraktor zbioru N : AttrH∃ (N). Przeanalizujmytą sytuację.

45

Page 46: Automaty a logika

U

H

N

AttrH∃ (N)

Sytuacja jest dość podobna do tej z poprzedniego diagramu, tylko tym razem zamiast zbioru W∀ “złego”dla gracz ∃, mamy zbiór atraktor AttrH∃ (N) “zły” dla gracza ∀. Rozpatrzmy krawędzie wychodzące z wierz-chołków zbioru U . Jeżeli jest to wierzchołek gracza ∃ to oczywiście nie może istnieć krawędź do atraktora,czyli musi istnieć co najmniej jedna krawędź do zbioru U . Natomiast jeżeli jest to wierzchołek ∀, to takżemusi on posiadać strzałkę do U - gdyby wszystkie prowadziły do atraktora ten wierzchołek także zawierałbysię w atraktorze! Możemy zatem na zbiorze U określić nową grę - oznaczmy ją jako F - i nareszcie użyćzałożenia indukcyjnego, ponieważ w zbiorze U nie ma rangi n. Wiemy więc, że zbiór U możemy podzielićna dwa zbiory - zbiór U∃ w którym z każdego wierzchołka pozycyjną strategię wygrywającą ma gracz ∃ orazU∀ w którym z każdego wierzchołka taką strategię ma ∀. Ponownie łącząc strategie gracza ∃ otrzymujemyjedną pozycyjną strategię wygrywającą σU∃ zdefiniowaną na zbiorze U∃.

Zastanówmy się teraz nad zbiorem U∀. Skoro z każdego wierzchołka gracz ∀ ma strategię wygrywającąw grze F , to czy ma ją także w grze G? Czyli czy gracz ∃ w grze G może opuścić zbiór U∀? Gracz ∃nie ma oczywiście krawędzi do U∃, bo stamtąd by wygrał. Nie może też mieć krawędzi do atraktora, costwierdziliśmy powyżej. Pozostaje mu tylko ewentualna krawędź do zbioru W∀ w którym i tak przegrywa!Oznacza to zatem, że strategia pozycyjna w U∀ jest dobra też w grze G, czyli tak naprawdę U∀ powinnozawierać się w W∀. Musi zatem być puste. Wiemy więc, że gracz ∃ ma strategię określoną na całym zbiorzeU .

Kończąc dowód zdefiniujmy strategię pozycyjną σ∃ w całej grze G (wygrywającą dla wszystkich wierz-chołków W∃):

- dla w ∈W∀ idziemy gdziekolwiek

- dla w ∈ N idziemy gdziekolwiek poza W∀

- dla w ∈ AttrH∃ (N) \N σ∃ zachowuje się zgodnie ze strategią atraktorową

46

Page 47: Automaty a logika

- dla w ∈ U σ∃ zachowuje się zgodnie z σU∃

Dlaczego ta strategia przyniesie graczowi ∃ sukces? Rozgrywka zaczęta z poza W∀ tam nie wejdzie - ∃unika ruchów do W∀, a ∀ nie ma takich ruchów. Jeżeli rozgrywka nieskończenie często zahacza o zbiór N togracz ∃ wygrywa - najwyższa ranga jest parzysta. Jeżeli nie, oznacza to, że gra od pewnego momentu toczysię w U , a na tym zbiorze gracz ∃ ma zdefiniowaną strategię wygrywającą.

Z powyższego twierdzenia możemy wyciągnąć następujący wniosek o ekspresywności automatów alter-nujących z warunkiem parzystości:

Fakt 33. Dla każdego automatu alternującego z warunkiem parzystości istnieje równoważny automat niede-terministyczny z warunkiem Büchiego (NBA).

Dowód. Niech A będzie naszym automatem alternującym z warunkiem parzystości. Z definicji automatualternującego wiemy, że A akceptuje słowo, o ile gracz ∃ wygrywa grę automatową GAw . Przypomnijmy żewierzchołkami gry automatu A ze stanami Q są krotki (Q × N), natomiast gra zaczyna się w stanie (q0, 0)dla q0 - stanu początkowego automatu.

Q∃

Q∀

0 1 2 3σ∃...

a b a a

Skoro automat ma warunek parzystości, to wiemy że z każdego wierzchołka któryś gracz ma pozycyjnąstrategię wygrywającą. Oznacza to zatem, że aby słowo w było akceptowane gracz ∃ musi mieć pozycyjnąstrategię wygrywającą ze stanu startowego. Czym jest strategia pozycyjna w naszej grze GAw? Dla każdegoswojego wierzchołka, czyli (q, i) dla q ∈ Q∃, gracz ∃ musi wybrać jedną z krawędzi. Krawędzie prowadzą dowierzchołków (q, i+1) dla q ∈ Q∃∪Q∀, zatem na każdym poziomie dla każdego stanu z Q∃ gracz ∃ automatuwybieramy jeden dowolny stan automatu (niekoniecznie swój). Strategię możemy więc zakodować jako słowonieskończone [σ∃] ∈ (QQ∃)ω. Analogicznie strategię gracza ∀ możemy zakodować jako [σ∀] ∈ (QQ∀)ω.

Pokażemy teraz, że zdanie “istnieje pozycyjna strategia σ∃, która wygrywa z każdą pozycyjną strategiąσ∀” jest rozpoznawalne przez automat niedeterministyczny z warunkiem Büchiego, co zakończy nasz dowód.

Najpierw rozważmy język L1 = w ⊗ [σ∃] ⊗ [σ∀]: w grze GAw pozycyjna strategia σ∃ wygrywa z pozy-cyjną strategią σ∀ (L1 ⊆ (A×QQ∃ ×QQ∀)ω). Nie powinno być problemem stworzenie deterministycznegoautomatu, który symulując grę na A sprawdza czy finalna ścieżka jest wygrywająca dla ∃.

Rozważmy teraz dwa kolejne języki - L2 oraz docelowy L3:L2 = w ⊗ [σ∃]: w grze GAw pozycyjna strategia σ∃ wygrywa z każdą pozycyjną strategią σ∀.L3 = w: w grze GAw istnieje pozycyjna strategia σ∃, która wygrywa z każdą pozycyjną strategią σ∀.

Załóżmy, że L2 jest regularny i że możemy go zapisać formułą MSO ϕ2. Wówczas język L3 możemy (małoformalnie) zapisać formułą ∃σ∃ϕ2, czyli L3 jest rzutem języka L2 - a języki regularne są zamknięte na rzuty.Upewnijmy się zatem, że L2 jest językiem regularnym. Rozpatrzmy relację pomiędzy L2 a regularnym L1 -jeżeli L1 zapiszemy jako formułę ϕ1, to L2 możemy zapisać jako ¬∃σ∀¬ϕ1, czyli słowami “nie istnieje takapozycyjna strategia gracza ∀, że formuła ϕ1 nie jest spełniona”. Czyli tym razem mamy dopełnienie rzutudopełnienia języka regularnego. Zatem L2 też jest regularny, co kończy nasz dowód.

47

Page 48: Automaty a logika

Zadania

Słowa skończone.

Zadanie 6.1. Pokazać, że problem niepustości jest PSPACE-trudny dla automatów alternujących na słowachskończonych.

Zadanie 6.2. Pokazać, że dla każdej formuły LTL istnieje równoważny automat alternujący (z ε-przejściami)rozmiaru liniowego.

Zadanie 6.3. Pokazać, że wzrost automatu alternującego przy rzutowaniu potrafi być gorszy niż wielomia-nowy. Wskazówka: niepustości dla MSO(s) nie można rozstrzygać w czasie wykładniczym.

Zadanie 6.4. (MB: Nie zastanawiałem się nad tym). Alfabet jest jednoliterowy. Ile potrzeba stanów wautomacie alternującym, żeby zdefniować język a2n?

Zadanie 6.5. Rozważmy automaty alternujące dwukierunkowe. To znaczy, przejścia są typu: „jeśli stanto p, litera to a, pozycja jest (pierwsza/ostatnia/inna) to zmień stan na q i przesuń głowicę do (następ-nej/poprzedniej) pozycji”. Pokazać, że takie automaty rozpoznają wyłącznie języki regularne, oraz że niepu-stość jest też w PSPACE.

Zadanie 6.6. Wskazać algorytm wielomianowy, który sprawdza, czy dany automat alternujący dwukierun-kowy akceptuje dane słowo wejściowe.

Słowa nieskończone.

Zadanie 6.7. Pokazać, że żaden nieskończony XOR nie jest językiem ω-regularnym.

Zadanie 6.8. Rozważmy grę G o pozycjach V , gdzie warunek wygrywający W ⊆ V ω jest rozpoznawanyprzez automat A z warunkiem Büchiego o stanach Q. Rozważmy nową grę GA. Jej pozycje to V ×Q. Gra zpozycji (v,q) wygląda następująco. Najpierw gracz ∃ (niezależnie od tego, kto kontroluje v w grze G), wybierastan p taki, że w automacie A jest przejście z q do p po literze v ∈ V . Następnie gracz który kontroluje v wgrze G wybiera, zgodnie z zasadami G, nowy wierzchołek w ∈ V . Gra toczy się dalej z pary (w,p). Gracz ∃wygrywa rozgrywkę, jeśli nieskończenie często na drugiej współrzędnej jest stan akceptujący.

Pokazać, że gry G i GA nie są równoważne. Dokładniej, pokazać, że może być pozycja v w grze G, w którejwygrywa ∃, ale taka, że z pozycji (v,q0) w grze GA nie wygrywa ∃. (Gdzie q0 to stan początkowy automatuA.)

Zadanie 6.9. Poprawić definicję gry GA tak, aby była ona równoważna grze G, a jednocześnie była grą zwarunkiem parzystości.

Zadanie 6.10. Wywnioskować z tego, że jeśli gracz ma strategię wygrywającą w grze G, to ma także wygry-wającą strategię ze skończoną pamięcią.

Zadanie 6.11. Wywnioskować z tego, że automaty alternujące z warunkiem Mullera rozpoznają wyłączniejęzyki regularne.

Zadanie 6.12. Pokazać, że automaty alternujące dwukierunkowe rozpoznają wyłącznie języki regularne.

Zadanie 6.13. Rozważmy następujący problem Parity: dany skończony graf gry parzystości G (rozgrywkitej gry są nieskończone, pierwszy gracz wygrywa, gdy warunek parzystości jest spełniony) z wyróżnionymwierzchołkiem startowym x; pytamy, czy pierwszy gracz ma strategię wygrywającą.

Pokazać, że problem Parity jest w klasie NP∩co-NP.

Zadanie 6.14. Rozwiązać problem Parity w czasie O(nd), gdzie d to liczba różnych rang występujących wG. Rozwiązanie na stronie 85.

48

Page 49: Automaty a logika

Zadanie 6.15. Problem Rabinity powstaje przez zastąpienie w problemie Parity warunku parzystości przezwarunek Rabina. Rozgrywka spełnia warunek Rabina zadany przez ciąg zbiorów pozycji (F1, Z1), (F2, Z2), . . . , (Fk, Zk),jeśli istnieje takie i, że pewna pozycja z Fi pojawia się nieskończenie często i każda pozycja z Zi pojawia siętylko skończenie często. Pokazać, że problem Rabinity jest NP-zupełny.

Zadanie 6.16. WeakParity powstaje przez zamianę warunku parzystości na słaby warunek parzystości:największy priorytet pojawiający się choć raz jest parzysty. Pokazać, że problem WeakParity jest PTIME-zupełny (w sensie redukcji w LOGSPACE). Rozwiązanie na stronie 87.

Zadanie 6.17. WeakRabinity definiujemy podobnie, za pomocą słabego warunku Rabina: istnieje takie i,że jakaś pozycja z Fi się pojawia i żadna pozycja z Zi się nie pojawia. Jaką złożoność ma ten problem?

49

Page 50: Automaty a logika

50

Page 51: Automaty a logika

Rozdział 7

DrzewaSpisali: Mateusz Kopeć, Maciek Zdanowicz i Adam Witkowski

7.1 Drzewa skończoneBędziemy rozważać drzewa binarne (każdy wierzchołek ma 0,1 lub 2 synów), uporządkowane (kolejnośćna synach jest określona, w szczególności wiemy, czy pojedynczy syn wierzchołka jest lewy czy prawy), nadalfabetem Σ. Możemy zdefiniować drzewo jako następującą funkcję, przypisującą wierzchołkom drzewa literyz alfabetu Σ:

t : D → Σ

gdzie D opisuje wierzchołki drzewa binarnego, tak że korzeń opisany jest słowem ε, a synowie wierzchołkaopisanego słowem w są opisani słowami w · 0 (lewy syn) i w · 1 (prawy syn). Zatem

D ⊆ 0,1∗ :w · 0 ∈ D → w ∈ Dw · 1 ∈ D → w ∈ D

Przykład tak opisanego drzewa wygląda następująco:

a

b

aa

a

b a

b

ε

0

00 01 10 11

1

110

Definicja 19. Niedeterministyczny automat działający na drzewach to uporządkowana czwórka

A = (Σ, Q, δ,QF )

51

Page 52: Automaty a logika

gdzie

• Σ - alfabet

• Q - zbiór stanów

• δ ⊆ (Q ∪ ·)× (Q ∪ ·)× Σ×Q - relacja przejść

• QF - stany akceptujące w korzeniu

Relacja przejścia wyznacza dozwolone przypisania stanów wierzchołkom drzewa. Jeśli (q1, q2, a, q) ∈ δ,dozwolone jest przypisanie stanu q do wierzchołka z literą a, o ile jego lewy syn ma przypisany stan q1, aprawy q2. Ponieważ wierzchołek może mieć tylko 1 syna lub nie mieć synów, dopuszczamy przejścia postaci(·, q2, a, q), (q1, ·, a, q) i (·, ·, a, q).

Przykładowe przejście (q1, q2, a, q):

a q

q1 q2

Bieg automatu to przypisanie stanów wszystkim wierzchołkom. Bieg akceptujący to bieg, w którym ko-rzeniowi przypisano stan akceptujący.

Przykład. Automat A rozpoznający język L - „w drzewie istnieje litera a”. Stany A to qOK i q, stanakceptujący to qOK . Przejścia wyglądają następująco: (? oznacza dowolną literę z alfabetu automatu)

52

Page 53: Automaty a logika

a qOK

q q

? qOK

qOK q

? qOK

q qOK

? qOK

qOK

? qOK

a qOK

qOK

? q

q

? q

? q

q

? q

q q

a qOK

q

a qOK

q

Ten automat rozpoznaje L, bo po napotkaniu litery a przypisuje stan qOK , który następnie jest propagowanyw górę, do korzenia.

Rozważmy teraz deterministyczną wersję automatów na drzewach. Relacja przejścia jest zastąpiona przezfunkcję przejścia. Możliwe są dwa podejścia - przypisywanie stanów idąc w dół lub w górę drzewa.

Definicja 20. Deterministyczny automat działający na drzewach (wersja z dołu do góry) to uporządkowanapiątka

A = (Σ, Q, δ,QF , qI)

gdzie

• Σ - alfabet

• Q - zbiór stanów

• δ : (Q ∪ ·)× (Q ∪ ·)× Σ→ Q - funkcja przejść

• QF - stany akceptujące w korzeniu

• qI - stan startowy, przyjmujemy go wszędzie tam, gdzie nie ma syna

Automat taki przypisuje stany kolejnym wierzchołkom zgodnie z funkcją przejść, poczynając od liści istopniowo przesuwając się w stronę korzenia. Warunkiem akceptacji drzewa jest przypisanie korzeniowi stanuakceptującego (należącego do QF ).

Definicja 21. Deterministyczny automat działający na drzewach (wersja z góry do dołu) to uporządkowanapiątka

A = (Σ, Q, δ,QF , qI)

gdzie

53

Page 54: Automaty a logika

• Σ - alfabet

• Q - zbiór stanów

• δ : (Q ∪ ·)× Σ→ Q×Q - funkcja przejść

• QF - stany akceptujące, sprawdzane wszędzie tam, gdzie nie ma syna

• qI - stan startowy w korzeniu

Ta wersja automatu przypisuje stany kolejnym wierzchołkom zgodnie z funkcją przejść, poczynając odkorzenia i stopniowo schodząc w dół w stronę liści drzewa. Warunkiem akceptacji drzewa jest przypisaniestanów należących do QF wszędzie tam, gdzie nie ma syna.

Najpierw zajmijmy się wersją z góry do dołu.

Przykład. Niech L = t : któryś wierzchołek to a. Przypuśćmy, że istnieje automat deterministyczny wwersji z góry do dołu, rozpoznający L. Rozważmy trzy słowa:

b

a b

1.

b

b a

2.

b

b b

3.Automat, zaczynając w stanie qI , po przeczytaniu w korzeniu litery b, zgodnie ze swoją funkcją przejść

δ przypisuje niżej stany q1 i q2. Obydwa stany muszą być akceptujące, aby automat zaakceptował słowo 1. isłowo 2., należące do L. Automat zaakceptuje też zatem słowo 3., które nie należy do L.

L nie da się zatem rozpoznać za pomocą automatu w wersji z góry do dołu.

Wniosek 34. Automaty deterministyczne w wersji działającej z góry do dołu rozpoznają istotnie mniej niżautomaty niedeterministyczne.

Twierdzenie 35. Dowolny automat niedeterministyczny A ze stanami Q można zdeterminizować, to znaczyistnieje automat deterministyczny w wersji z dołu do góry rozpoznający L(A).

DowódPokażemy, że automat A = (Σ, Q, δ, QF , QI) determinizuje automat A = (Σ, Q, δ,QF ), czyli L(A) = L(A).Automat A zdefiniujmy nastepująco:

Q = P (Q)

QI = QIQF = qF : qF ∩Q 6= ∅

δ = (Q1, Q2, a,Q3) : Q3 = q : ∃q1 ∈ Q1,q2 ∈ Q2(q1, q2, a, q) ∈ δTu by się przydała jakaś agitacja, czemu to działa.

Jeśli mamy akceptujący bieg automatu niedeterministycznego, to indukcja w górę. W drugą stronę -odtwarzamy od góry bieg automatu niedeterministycznego. 2

Zastanówmy się teraz, jak wygląda minimalny (dla danego języka) deterministyczny automat działającyna drzewach.

54

Page 55: Automaty a logika

Ustalmy język L i wprowadźmy relację równoważności ∼L:

t1 ∼L t2 ⇐⇒ ∀k(k · t1 ∈ L ⇐⇒ k · t2 ∈ L)

gdzie k to kontekst, czyli drzewo z dokładnie jednym wyróżnionym wierzchołkiem - liściem o etykiecie 4,natomiast k · t to drzewo powstałe z kontekstu k poprzez zastąpienie 4 przez drzewo t.

4

kontekst k

drzewo t

Definicja 22. Minimalny automat na drzewach dla języka L definiujemy następująco:

• Stany automatu minimalnego to klasy abstrakcji relacji ∼L.

• Stan początkowy: [drzewopuste].

• Stany akceptujące: [t] : t ∈ L.

• Przejścia są zdefiniowane następująco: δ([t1], [t2],a) =

a

t1 t2

.

Zauważmy, że jeśli drzewa t1 i t2 po zastosowaniu do niech automatu uzyskują w korzeniu ten sam stanq, to t1 ∼L t2. Minimalny automat A jest „lepszy” od każdego innego deterministycznego automatu rozpo-znającego L (to znaczy posiada najmniejszą ilość stanów).

Przejdźmy teraz do związku automatów z MSO ze zdefiniowanymi predykatami i , oznaczającymiodpowiednio lewego i prawego syna danego wierzchołka.

55

Page 56: Automaty a logika

Twierdzenie 36. MSO(,) wyraża to samo, co automaty.

Dowód (←)Formuła opisująca ten sam język co automat wygląda następująco:

∃X1∃X2 . . . ∃Xn(każdy wierzchołek należy do jakiegoś ze zbiorów ∧ przejścia)

X1 to zbiór wierzchołków, którym automat w biegu akceptującym przypisał pierwszy stan, X2 - drugi stan,itd. . . 2

Dowód (→)Dowód opiera się na następujących faktach:

1. proste języki da się rozpoznawać

2. negacja - bo istnieją automaty deterministyczne - możemy zamienić stany akceptujące na nieakceptu-jące i odwrotnie

3. suma - łatwe (w niedet)

4. rzutowanie - łatwe (w niedet)

2

7.2 Drzewa nieskończone

Naturalne wydaje się rozszerzenie naszych dotychczasowych rozważań o automaty działające na drzewachnieskończonych. Oczywiście będą interesować nas teraz wyłącznie automaty niedeterministyczne, ponieważautomaty deterministyczne w wersji z dołu do góry nie mają skąd zacząć przetwarzać drzewo (bo jest nieskoń-czone), a w wersji z góry do dołu nigdy nie skończą rzeczonego przetwarzania (bo drzewo jest nieskończone).

Drzewo nieskończone jest binarnym drzewem pełnym, to znaczy każdy wierzchołek ma dokładnie dwóchsynów. Ulega zmianie akceptacja automatu - teraz automat akceptuje dane słowo ⇐⇒ na każdej ścieżcespełniony jest dany warunek akceptacji. Warunkiem akceptacji mogą być znane nam warunki: Büchiego,Müllera, parzystości.

Przykład. Zdefiniujmy trzy języki:L1 = na pewnej ścieżce nieskończenie wiele a.L2 = na każdej ścieżce skończenie wiele a.L3 = na każdej ścieżce słowo z języka L.

L1 można rozpoznawać automatem z warunkiem Müllera.L2 można rozpoznawać automatem z warunkiem Müllera.L3 można rozpoznawać automatem z warunkiem Müllera, o ile język L jest rozpoznawany przez automatdeterministyczny.

Twierdzenie 37. Automaty drzew nieskończonych z warunkiem Büchiego rozpoznają istotnie mniej niżautomaty z warunkiem Müllera.

DowódRozważmy na przykład język L2. Przypuśćmy, że automat A z warunkiem Büchiego rozpoznaje L2. A man stanów.Rozważmy następujące słowo S z języka L2:wierzchołkom (0∗1)k dla k ≤ n+ 1 przypisujemy a, pozostałym wierzchołkom b.

56

Page 57: Automaty a logika

b

b a

b

b

b

b

a

a

b

b a

b a

Ponieważ S należy do L2 na ścieżce 0* musi znajdować się jakiś wierzchołek v1 oznaczony stanem akceptu-jącym qf1 . Rozważając prawego syna wierzchołka v1 i wiodącą z niego maksymalnie lewą ścieżkę, dostajemywierzchołek v2 ze stanem akceptującym qf2 (Rys. powyżej - oznaczone błękitnym kolorem).Powtarzając tę procedurę (schodzenie do prawego syna z akceptującego wierzchołka i rozważanie ścieżki naj-bardziej w lewo) n+1 razy dostajemy ciąg par (wierzchołek,stan akceptujący): (v1,qf1),(v2,qf2),..,(vn+1,qfn+1).Ze względu na ilość stanów automatu A, któryś stan qfi musi się powtórzyć, tworząc zaprezentowane poniżejkalesony.

57

Page 58: Automaty a logika

qf

kalesony drzewiaste utworzone przezpowtrzony stan qf na opisanej sciezce

qf

qI

Zamieniając kontynuację słowa zaczepioną w dolnym wierzchołku qf przez wielokrotnie połączone kalesony,dostajemy słowo, które będzie spełniać warunek Büchiego na każdej ścieżce (jedyna wątpliwa ścieżka zawieranieskończenie wiele stanów qf ), ale nię będzie należeć do języka L2 (dołączenie jednych kalesonów zwiększaliczbę liter a na ścieżce o 1).

qf

qf

qI

To daje nam sprzeczność z przypuszczeniem, że automat A rozpoznawał język L2. Jak już wspomnieliśmy,język ten jest rozpoznawany przez automat z warunkiem Müllera, co daje nam tezę twierdzenia.

2

Formalnie, drzewem nieskończonym t będziemy nazywać funkcję t : 0,1∗ → A, gdzie A to skończonyalfabet. Możemy rozpatrywać takie drzewo jako strukturę logiczną:

t =< 0,1∗, a(x)a∈A, s0(x,y), s1(x,y) > (7.1)

58

Page 59: Automaty a logika

gdzie a(x) jest prawdą ⇐⇒ wierzchołek x ma przypisaną literę a, s0(x,y) znaczy x jest lewym synem y as1(x,y) oznacza x jest prawym synem y. Zauważmy, że do struktury moglibyśmy dodać porządek starszeń-stwa, ale nie jest to konieczne, gdyż taki porządek można łatwo zdefiniować.

Twierdzenie 38. Spełnialność formuł logiki monadycznej jest rozstrzygalna w drzewach nieskończonych,tzn. rozstrzygalny jest nastepujący problem:Dana jest formuła φ ∈MSO(s0, s1) nad alfabetem A.Pytanie: Czy φ jest prawdziwa w pewnym drzewie t?.

To twierdzenie zostało udowodnione w 1969 roku przez Rabina w sformułowaniu:

Twierdzenie 39. Teoria MSO struktury R =< 0,1∗, s0(x,y), s1(x,y) > jest rozstrzygalna.

Strukturę R nazywamy drzewem Rabina.Zanim przystąpimy do właściwego dowodu, nakreślmy jego ideę:

Najpierw zdefiniujemy automaty alternujące i niedeterministyczne dla drzew nieskończonych i udowodnimyrównoważność tych dwóch klas automatów. Następnie pokażemy, że MSO na drzewach nieskończonych jestrównoważna automatom na takich drzewach. Na koniec udowodnimy, że problem pustości dla automatów nadrzewach jest rozstrzygalny.

Definicja 23. Warunek parzystości dla ścieżki w drzewie nieskończonym.Zakładamy, że każdy wierzchołek na ścieżce ma przypisaną rangę, czyli liczbę naturalną ze zbioru 0, · · · , n.Warunek parzystości dla ścieżki jest spelniony, gdy największa z rang, które wystąpiły nieskończenie często,jest liczbą parzystą.

Mając zdefiniowany warunek parzystości dla ścieżki w drzeenie nieskończonym, możemy przystąpić dodefinicji automatów niedeterministycznych i alternujących. Oba automaty na wejściu dostają drzewo nie-skończone t.

Definicja 24. Automat niedeterministyczny z warunkiem parzystości dla drzew nieskończonych.Automat niedeterministyczny A to piątka: < Q, qε, A, δ,Ω >, gdzie

Q - stany automatu

qε - stan początkowy

A - alfabet

δ ⊂ Q×A×Q×Q - przejścia

Ω : Q→ 0, · · · , n - rangi

Bieg automatu to przyporządkowanie stanów wierzchołkom, czyli funkcja ρ : 0, 1∗ → Q. Przejścia opisująmożliwe przypisania stanów, tzn. przejście (q, a, q0, q1) ∈ δ oznacza, że jeśli wierzchołkowi drzewa v o etykie-cie a jest przypisany stan q, to jego lewemu synowi można przypisać q0, jednocześnie przypisując prawemusynowi vstan q1. Przykładowe przejście:

59

Page 60: Automaty a logika

Zakładamy, że korzeń ma przypisany stan qε Bieg ρ nazywamy akceptującym, gdy bieg jest zgodny z δ, wkorzeniu jest qε oraz na każdej ścieżce spełniony jest warunek parzystości z definicji 23. Automat A akceptujedrzewo, gdy dla tego drzewa A ma bieg akceptujący.

Definicja 25. Automat alternujący z warunkiem parzystośc dla drzew nieskończonych.Automat alternujący A to szóstka: < Q∀, Q∃, qε, A, δ,Ω >, gdzie

Q∀ - stany gracza "dla każdego"

Q∃ - stany gracza "istnieje"

qε - stan początkowy

A - alfabet

δ ⊂ Q×A×Q× ε, 0, 1 - przejścia

Ω : Q→ 0, · · · , n - rangi

Q = Q∀∪Q∃ i Q∀∩Q∃ = ∅. Przejście (q,a, p, x) oznacza, że automat będąc w stanie q, widząc wierzchołek v o

etykiecie a może przejść do stanu p, jednocześnie obserwowanym wierzchołkiem zostaje:

lewy syn v x = 0v x = εprawy syn v x = 1

Aby określić warunek akceptacji dla A, zdefiniujmy grę GAt (t to drzewo, które automat otrzymał na wejściu).Nasz automat będzie akceptował drzewo t, gdy gracz ∃ ma strategię wygrywającą dla GAtStany gry to pary (q, v) ∈ Q × 0,1∗. Gra zaczyna się w (qε, ε). Jest dwóch graczy, ∃ i ∀. W stanie (q, v)ruch wykonuje ten gracz, do którego należy q, tzn. jeśli q ∈ Q∃ to ruch wykonuje gracz ∃, itd. Przejścia wgrze muszą być zgodne z δ, czyli przejściami automatu. Przebiegiem gry GAt nazwiemy ciąg stanów gry ρ,zaczynający się w (qε, ε), taki, że pary kolejnych wyrazów ciągu (tzn. pary (qi, vi), (qi+1, vi+1)) to poprawneprzejścia w grze GAt . Zauważmy, że taki ciąg opisuje ścieżkę w drzewie t, ponadto do każdego wierzchołka tejścieżki jest przypisany stan automatu. Gracz ∃ wygrywa grę GAt o przebiegu ρ gdy jest spełniony warunekparzystości dla ścieżki określonej przez ρ.

Do końca tego wykładu wszystkie automaty będą akceptować drzewa zgodnie z warunkiem parzystości.

Lemat 40. Dla drzew nieskończonych następujące klasy automatów są równoważne:

1. automaty niedeterministyczne.

2. automaty alternujące.

Dowód (1 → 2)Rozważmy dowolny automat niedeterministyczny A = 〈QA, qε, A, δA,Ω〉. Skonstruujemy równoważny auto-mat alternujący B. Stany B zdefinujemy następująco: QB = QA ∪ δA. Oryginalne stany automatu A zostanąstanami ∃, a stany-przejścia będą stanami ∀. Stan początkowy automatu się nie zmienia. Rangi oryginalnychstanów A pozostają bez zmian, za to stany-przejścia otrzymują rangi 0. Gdy B widzi wierzchołek v z literąa, możliwe są następujące przejścia:

• ze stanu q ∈ QA do każdego (q, a, q0, q1) ∈ δA. Przy takim przejściu automat pozostaje w tym samymwierzchołku drzewa.

• ze stanu będącego przejściem (q,a, q0, q1) ∈ δA do q0, jednocześnie schodząc w lewo w drzewie lub q1,przy jednoczesnym zejściu w prawo.

Intuicyjnie, podczas biegu B, gdy B jest w stanie q ∈ QA gracz ∃ wybiera z możliwych przejść A jedno, anastępnie gracz ∀ wybiera czy za pomocą takiego przejścia pójść w prawo czy w lewo.

Zauważmy, że każda strategia gracza ∃ wyznacza pewien bieg automatu A (i każdy dozwolony bieg jestprzez pewną strategię wyznaczany) - strategia dla drzewa t mówi jakiego przejścia użyć w wierzchołku v,

60

Page 61: Automaty a logika

który ma stan q i literę a, co wystarcza do określenia które stany przypisać poszczególnym wierzchołkom,jeśli założymy, że korzeniowi przypisujemy qε.

Z kolei strategia gracza ∀ polega na wybraniu ścieżki w drzewie, starając się, by na tej ścieżce nie zostałspełniony warunek parzystości.

Jeśli w automacie A jest bieg akceptujący dla drzewa t, to dowolna strategia gracza ∃ wyznaczająca tenbieg jest wygrywająca, gdyż wtedy na każdej ścieżce w t spełniony jest warunek parzystości.

Musimy jeszcze pokazać, że gdy gracz ∃ nie ma strategii wygrywającej dla t, to A nie akceptuje t. Jeśli∃ nie ma strategii wygrywającej, to taką strategię ma ∀. Wtedy, dla każdej strategii ∃, gracz ∀ może takwybierać ścieżkę w drzewie, że na tej ścieżce nie będzie spełniony warunek parzystości. Z faktu, że każdybieg A na drzewie t odpowiada jakiejś strategii gracza ∃, otrzymujemy, że istnienie strategii wygrywającejdla gracza ∀ dla drzewa t implikuje to, że A nie akceptuje t. To kończy dowód. 2

Dowód (2 → 1)

Do dowodu tej równoważności będziemy potrzebować następującego lematu:

Lemat 41 (o każdej ścieżce). Niech A - pewien skończony alfabet. Niech K ⊂ (A × 0,1)ω - język ω-regularny. Wówczas język ńa każdej ścieżce K"jest rozpoznawany przez automat niedeterministyczny dladrzew.

DowódNiech A,K jak w tezie lematu. Na początek zauważmy, że każde słowo v ∈ K opisuje ścieżkę w pewnymdrzewie nieskończonym t.Np. v = (a,0)(b,1)(a,1)... odpowiada następującej ścieżce :

Pominięto tutaj wszystkie pozostałe wierzchołki drzewa.

Niech A - automat deterministyczny rozpoznający K. Konstruujemy automat niedeterministyczny A′, takiże A′ akceptuje drzewo t ⇐⇒ każda ścieżka t rozumiana jako słowo nad (A× 0,1)ω należy do K. W A′stany (ozn. Q), stan początkowy, alfabet i rangi pozostają jak w automacie A. Przejścia A′ konstruujemynastępująco:Dla każdego stanu q ∈ Q, dla każdej litery a ∈ A dodajemy przejście (q, a, q0, q1) ∈ Q × A × Q × Q, takie,że q0 to stan A do którego A przechodzie z stanu q po przeczytaniu (a,0), a q1 to stan A do którego Aprzechodzie z stanu q po przeczytaniu (a,1).

Oczywiście A′ akceptuje drzewo t tylko jeśli każda ścieżka drzewa (rozumiana jako słowo) należy do K.2

Rozważmy dowolny automat alternujący A. Taki automat akceptuje drzewo t : 0,1∗ → A gdy gracz ∃ ma

61

Page 62: Automaty a logika

strategię wygrywającą w GAt . Pozycje w grze to pary (q, v) ∈ Q× 0,1∗. Widać, że strategia σ∃ to drzewoσ∃ : 0,1∗ → (Q× 0, 1, ε)Q∃ (to znaczy, że alfabetem są funkcje z Q∃wQ× 0, 1, ε ) Rozważmy

L = t⊗ σ∃|σ∃ jest strategią wygrywającą w GAt (7.2)

Język A to rzut L na alfabet A. Wystarczy pokazać, że L jest rozpoznawany przez automat niedetermini-styczny. L jest językiem ńa kazdej ścieżce K", gdzie K to "każdy wybór strategii dla ∀ który pozostaje naścieżce kończy się zwycięstwem ∃". Oczywiscie jest to język ω-regularny. Stąd, z lematu o każdej ścieżcewynika, że żądany automat niedeterministyczny istnieje. 2

Ostatnim elementem dowodu rozstrzygalności MSO na drzewach nieskończonych jest pokazanie, że pro-blem pustości języka automatu niedeterministycznego jest rozstrzygalny.

Twierdzenie 42. Problem niepustości:Dane: Automat niedeterministyczny z warunkiem parzystości dla drzew nieskończonych A.Pytanie: Czy istnieje takie drzewo t, że A akceptuje t?

jest rozstrzygalny.

DowódMając dany A = 〈Q, qε, A, δ,Ω〉 konstruujemy grę parzystości o skończonej planszy HA, taką, że jeden zgraczy (gracz Automat) ma strategię wygrywającą w tej grze ⇐⇒ istnieje drzewo t, które A akceptuje.Jak wiadomo, rozwiązywanie gier parzystości o skończonej planszy jest w NP∧ co−NP, więc jeśli potrafimytaką grę skonstruuować, to problem niepustości jest rozstrzygalny.

Przejdźmy do konstrukcji HA. W grze będzie dwóch graczy, Automat i Tropiciel. Stany gry Qgry = Q∪δ,tzn. stanami gry są stany i przejścia automatu A. Rangi stanów gry będących stanami A zachowują rangi zA, stany gry będące przejściami A otrzymują rangi 0. Zauważmy, że rangi stanów-przejść nie mają wpływuna wynik gry (jeżeli 0 jest najwi ększą rangą, która wystąpiła nieskończenie często podczas gry, to 0 jestjedyną rangą, która wystąpiła nieskończenie często).

Przebieg gry wygląda następująco: Stanem początkowym HA jest qε - stan początkowy A. W stanachgry będących stanami A rusza się gracz Automat - wybiera jedno przejście (w ten sposób wybiera też literę),które jest możliwe z obecnego stanu w A. W stanie będącym przejściem A, gracz Tropiciel wybiera, doktórego z dwóch możliwych stanów przechodzimy.

Automat wygrywa, gdy warunek parzystości jest spełniony, tzn. największa ranga spośród rang wystę-pujących nieskończenie często podczas gry jest parzysta.

Intuicyjnie, gra polega na tym, że Automat wybiera, jakie jest drzewo, które A mógłby zaakceptować,jednocześnie proponując przypisanie wierzchołkom stanów A a Tropiciel stara się znaleźć najgorszą możliwąścieżkę.

Jeśli istnieje takie drzewo, które A akceptuje, to istnieje dla tego drzewa bieg akceptujący, tzn. takieprzypisanie stanów wierzchołkom drzewa, że na każdej ścieżce jest spełniony warunek parzystości. Wtedyoczywiście jeśli Automat wybiera przejścia zgodne z takim biegiem, to niezależnie od wyborów Tropiciela,warunek parzystości będzie spełniony, a więc Automat ma strategię wygrywającą w HA.

Z kolei gdy nie ma drzewa, które A akceptuje, to dla każdego drzewa, dla każdego biegu automatu istniejetaka ścieżka w drzewie z przypisanymi stanami, na której warunek parzystości nie jest spełniony. Wystarczy,że Tropiciel będzie wybierał kierunki przejścia zgodne z taką ścieżką, wtedy Automat nie może wygrać, więcnie ma strategii wygrywającej. 2

Wiedząc to wszystko, możemy przystąpić do dowodu głównego twierdzenia tego wykładu, dla przypo-mnienia sformułujmy je raz jeszcze:

Twierdzenie 43. Spełnialność formuł logiki monadycznej jest rozstrzygalna w drzewach nieskończonych,tzn. rozstrzygalny jest nastepujący problem:Dana jest formuła φ ∈MSO(s0, s1) nad alfabetem A.Pytanie: Czy φ jest prawdziwa w pewnym drzewie t?

62

Page 63: Automaty a logika

DowódJasne jest, że dla prostych formuł można skonstruować równoważne im automaty dla drzewach. Jak wia-domo automaty niedeterministyczne są zamknięte an operację rzutowania, z kolei automaty alternujące sązamknięte na negację. Ponieważ dla drzew nieskończonych te klasy automatów są równoważne i obie te klasysą zamknięte ze względu na sumę to, z poprzednio udowodnionych twierdzeń wiemy, że formuły MSO sąrównoważne automatom.

Z twierdzenia 42 wiemy, że problem pustości jest rozstrzygalny dla automatów niedetereministycznych,a więc także problem spełnialności dla formuł logiki MSO jest rozstrzygalny. 2

63

Page 64: Automaty a logika

Zadania

Drzewa skończone.

Zadanie 7.1. Pokazać, że dla automatów niedeterministycznych i deterministycznych (top-down) problempustości jest PTIME-zupełny (w sensie redukcji w LOGSPACE).

Zadanie 7.2. Pokazać, że dla automatów niedeterministycznych problem uniwersalności (tj. sprawdzenie,czy automat akceptuje każde drzewo) jest EXPTIME-zupełny.

Zadanie 7.3. Problem niepustości przecięcia polega na rozstrzygnięciu dla danego n i danych automatówA1,A2, . . . ,An, czy L(A1) ∩ L(A2) ∩ . . . ∩ L(An) 6= ∅. Pokazać, że (dla deterministycznych i niedetermini-stycznych automatów) problem niepustości przecięcia jest EXPTIME-zupełny.

Drzewa nieskończone.

Zadanie 7.4. Czy język „nieskończenie wiele wierzchołków ma etykietę a” jest regularny?

Zadanie 7.5. Czy dla każdej formuły WMSO istnieje równoważna formuła MSO?

64

Page 65: Automaty a logika

Rozdział 8

Inne teorie rozstrzygalneSpisali: Michał Gołębiowski

Przypomnijmy, że na mocy poprzedniego rozdziału wiemy, że zachodzi

Twierdzenie 44. Teoria MSO drzewa Rabina

〈0, 1∗, s0(x, y), s1(x, y)〉

jest rozstrzygalna.

W rozdziale tym powrócimy do interpretacji zdefiniowanych w rozdziale 3 i spróbujemy pokazać parękonsekwencji powyższego twierdzenia.

Twierdzenie 45. Teoria FO struktury 〈N, ·〉 jest rozstrzygalna.

Dowód. Jako że interpretacje były zdefiniowane dla struktur czysto relacyjnych, traktujemy tu mnożeniejako relację trzyargumentową, do której trójka (x, y, z) należy wtedy i tylko wtedy, gdy x · y = z. Będziemyjednak stosować zwyczajowe oznaczenia.

Ponieważ zajmujemy się logiką FO, adekwatną będzie interpretacja element-zbiór, tj. liczby będziemy in-terpretować jako zbiory w drzewie Rabina. Przedstawiamy mianowicie liczbę n jako iloczyn n = pα1

1 pα22 . . . pαkk ,

gdzie pi to i-ta liczba pierwsza, zaś αk 6= 0 (jest to oczywiście przedstawienie jednoznaczne). Każdy z czyn-ników pαii interpretujemy osobno. Liczbę pαii będziemy reprezentować jako podzbiór gałęzi 0i1∗, gdzie naczęści składającej się z jedynek kodujemy binarnie w porządku odwrotnym (tj. najmniej znaczące bity sąnajbliżej „zakrętu”) liczbę αi.

Zdefiniujmy formułę ϕel(X) (patrz: rozdział 3), która będzie wyrażać zdanie: „X jest skończonym pod-zbiorem 0∗1∗” jako koniunkcję formuł α(X) i β(X), gdzie:

(a) α(X) ≡ X jest skończony

(b) β(X) ≡ X ⊆ 0∗1∗

Aby zdefiniować β(X), zauważmy, że musimy zapisać właśność: „ jeśli w drodze od korzenia do wierzchołkax ∈ X skręcimy na drzewie w prawo, to potem nie skręcimy już nigdy w lewo”, a więc:

β(X) ≡ ∀x∈X¬∃y1,y2,y3≤x s1(y1, y2) ∧ s0(y2, y3)

Pozostało zdefiniować drugą z formuł. W tym celu zauważmy, że zbiór X jest nieskończony wtedy i tylkowtedy, gdy zbiór prefiksy(X) jest nieskończony. Zbiór prefiksy(X) jest zamknięty na obcięcia, a stąd oraz zfaktu, że drzewo Rabina ma skończone rozgałęzienie na mocy lematu Königa wynika, że zbiór prefiksy(X)ma nieskończoną ścieżkę tworzącą gałąź w drzewie Rabina. Stąd mamy:

α(X) ≡ ∃Y ((∀y∈Y ∃x∈X y ≤ x) ∧ (∀y∈Y ∃z∈Y s0(y, z) ∨ s1(y, z)))

65

Page 66: Automaty a logika

Pierwsza z podformuł głównej koniunkcji w α(X) mówi, że Y zawiera się w zbiorze prefiksy(X), zaś druga,że każdy element Y ma następnika w Y (czyli że Y zawiera nieskończoną gałąź). Pozostaje zdefiniowaćinterpretację relacji mnożenia w tej strukturze, tj. formułę ϕ•(X,Y, Z). W tym celu zdefiniujmy najpierwtaką formułę przy założeniu, że X, Y i Z definiują liczby będące potęgami dwójki, a zatem leżą w całościna gałęzi 1∗ (oznaczmy ją przez ψ(X,Y, Z)). Podstawową rzeczą, jaką musimy zapewnić, jest poprawneprzenoszenie „nadwyżkowych” cyfr. Reguła jest prosta – przechodzimy linię reprezentującą cyfry od najmniejznaczącego bitu w kierunku bardziej znaczących; gdy zaś natkniemy się na pozycję, na której obie liczby Xi Y mają cyfrę 1, szukamy pierwszego miejsca, na którym obie te liczby mają cyfrę 0, po drodze wszędziedodając cyfry „z nadwyżką”:

∀x(x ∈ X ∧ x ∈ Y → ∃y>x

(y /∈ X ∧ y /∈ Y ∧ y ∈ Z∧

∧∀z(x < z < y → ((z ∈ X ∧ z /∈ Y ∧ z /∈ Z)∨

∨(z /∈ X ∧ z ∈ Y ∧ z /∈ Z)∨

∨(z ∈ X ∧ z ∈ Y ∧ z ∈ Z)))))

W pierwszej linii ustalamy pozycję x, na której X i Y mają jedynki i szukamy dla niej pierwszej pozycjiy, na której obie te liczby mają zera. W obszarze pomiędzy zachodzi binarne dodawanie cyfr z nadwyżką.Zauważmy, że nie mówimy, jaką wartość ma przyjmować Z na pozycji x. Wynika to stąd, że nie wiemy, czydo tej pozycji nie „nadeszła” do nas nadwyżka przejęta z dodawania poprzednich cyfr.

Trzeba teraz poradzić sobie z fragmentami, do których nie dotarł „nadwyżkowy” bit. Jest to albo począt-kowy fragment zapisu (innymi słowy, na tej i żadnej wcześniejszej pozycji nie było jedynki jednocześnie wX i Y ) lub fragment od pozycji, na której obie X i Y mają zera do pierwszego miejsca, gdzie obie mająjedynki. Oto owa formuła:

∀x(∃y≤x (y = 0 ∨ (y /∈ X ∧ y /∈ Y ))∧

∧∀z(y ≤ z ≤ x→((z /∈ X ∧ z /∈ Y ∧ z /∈ Z)∨∨(z ∈ X ∧ z /∈ Y ∧ z ∈ Z)∨

∨(z /∈ X ∧ z ∈ Y ∧ z ∈ Z))))

y równe 0 oznacza początek pierwszy z wymienionych przypadków, y /∈ X∧y /∈ Y – drugi. Na całym obszarzeod y do x tym razem dodajemy cyfry normalnie.

Konstrukcja formuły dla drzewa jest analogiczna; trzeba tylko pamiętać o tym, że „początkiem” będzie jużnie element, który nie ma poprzednika, lecz taki, który jest lewym synem swego ojca (pozostałe wierzchołkibędą synami prawymi).

Definicja 26. Niech M – automat ze stosem rozpoznający słowa nad alfabetem jednoliterowym. Rozważmygraf konfiguracji:

GM = 〈V = Q× Γ∗, E〉

gdzie pierwsza współrzędna (z Q) oznacza stan, druga (z Γ∗) symbolizuje zawartość stosu, zaś E jest zdefi-niowane następująco:

E = ((q, v), (p, w)) : maszyna przechodzi z (q, v) do (p, w) czytając jedną literę

Twierdzenie 46. Dla każdego automatu ze stosem M graf GM ma rozstrzygalną teorię MSO.

Dowód. Ponieważ tym razem mamy do czynienia z teorią MSO, niezbędna będzie interpretacja element-element. Narzucającą się reprezentacją stosu jest włożenie grafu GM w drzewo k-arne, gdzie k to wielkośćalfabetu stosu (Γ). Musimy jednak jeszcze w jakiś sposób reprezentować aktualny stan. Jako że stanówmamy skończenie wiele, pomysł polega na zwiększeniu arności drzewa o 1, numerowanie alfabetu stosu

66

Page 67: Automaty a logika

wyłącznie liczbami dodatnimi i reprezentowanie stanu qi przez i kolejnych zer (oczywiście wymaga to najpierwponumerowania stanów). Mamy więc włożenie elementów V :

(〈qi, ai1ai2 . . . aik〉) = i1i2 . . . ik0i

Włożenie zbioru krawędzi E jest wyznaczone jednoznacznie przez włożenie zbioru wierzchołków V . Należeniedo obrazu i[V ] definiuje poniższa pseudodefinicja:

ϕV (x) ≡ x ∈⋃

1≤i≤m

1, 2, . . . , n∗0i

gdzie n jest objętością alfabetu stosu, zaś m – ilością stanów. Oczywiście łatwo ją sformalizować w MSO(≤)(z predykatem i(z) mówiącym, że na pozycji z występuje znak i):

ϕV (x) ≡ ∃y∈x

∀z∈x z < y →∨

i∈1,2,...,n

i(z)

∧ (∀z∈x z ≥ y → 0(z))

Pozostała interpretacja krawędzi ϕE(x, y). Zauważmy, że opisuje ona własność „lokalną” – stanów jest skoń-czenie wiele, więc zmiany pomiędzy nimi można zapewnić formułami z wspólnie ograniczoną liczbą kwantyfi-katorów, zaś w jednym kroku możemy przeczytać jedynie najwyższy symbol na stosie. Zamiast wyjściowegozbioru E można więc rozpatrywać:

E′ = ((q, a), (p, k, w)) : maszyna po przeczytaniu jednej litery przechodzi ze stanu q, gdy znakna szczycie stosu to a do stanu p, zdejmując k znaków i dodając słowo w

Taki sposób zapisu bardziej akcentuje zmiany pomiędzy poszczególnymi stanami automatu, niż same stany;to z kolei łatwiej już zapisać w postaci formuły. Odpowiednia „pseudoformuła” (po ponumerowaniu stanówi alfabetu stosu) wygląda tak:

ϕE(x, y) ≡∨

((qi,ai),(qj ,k,w))∈E′„część dodatnia x kończy się na i ∧

∧ „część zerowa x to 0i, część zerowa y to 0j” ∧∧ „część dodatnia y to skrócona o k końcowych znaków część dodatnia x

powiększona o słowo w”

Dokładne przedstawienie powyższej formuły pozostawiam jako ćwiczenie czytelnikowi.

Wnioski: Następujące trzy problemy są rozstrzygalne:

Twierdzenie 47. Dane: automat ze stosem, konfiguracja (q, v).Teza: czy konfiguracja ta jest osiągalna?

Dowód. Rozwiązanie: zgadujemy zbiór konfiguracji i sprawdzamy, czy tworzy on ścieżkę z konfiguracji po-czątkowej.

Twierdzenie 48. Dane: automat ze stosem.Teza: czy istnieje nieskończenie wiele konfiguracji osiągalnych?

Dowód. Postępujemy podobnie jak przy dowodzie twierdzenia 45 – zbiór konfiguracji osiągalnych jest nie-skończony wtedy i tylko wtedy, gdy zbiór ich przodków (w sensie relacji E) w ścieżkach bezcyklowych jestnieskończony. Stąd i z lematu Königa wiemy, że w takiej sytuacji istnieje bieg nieskończony bez cyklu,wystarczy więc go zgadnąć i sprawdzić, że jest poprawny.

Twierdzenie 49. Dane: automat ze stosem.Teza: czy istnieje bieg nieskończony, który ma dowolnie głębokie stosy?

67

Page 68: Automaty a logika

Dowód. Bieg nieskończony o dowolnie głębokich stosach istnieje wtedy i tylko wtedy, gdy istnieje nieskoń-czony bieg bezcyklowy. Jest to zatem problem identyczny z poprzednim.

Do tej pory rozważaliśmy głównie formuły w uniwersum konkretnego grafu nieskończonego. Można rów-nież rozważać klasy grafów skończonych, w których spełnialność dla MSO jest rozstrzygalna.

Definicja 27. Ustalmy k. Konstruujemy grafy nieskierowane (dopuszczamy pętle jednoelementowe), którychwierzchołki są pokolorowane na jeden z kolorów ze zbioru 1, 2, . . . , k. Zaczynamy od grafu pustego; mamydo dyspozycji następujące operacje:

• 0-argumentowe:

– •i: tworzy jednowierzchołkowy graf z wierzchołkiem o kolorze i

• 1-argumentowe:

– dodaj(i, j): dodaje krawędzie pomiędzy wszystkimi parami wierzchołków, z których jeden ma kolori, zaś drugi kolor j

– zamien(i, j): koloruje wszystkie wierzchołki o kolorze i na kolor j

• 2-argumentowe:

– G1

⊎G2: tworzy sumę rozłączną grafów G1 i G2

Minimalne k, dla jakiego da się w ten sposób skonstruować graf G nazywa się szerokością klikową grafu G.

Twierdzenie 50. Ustalmy k ∈ N. Rozstrzygalny jest problem:Dane: ϕ ∈MSO(E)Teza: czy istnieje skończony graf nieskierowany G o szerokości klikowej ≤ k taki, że G |= ϕ?

Przykład.

• Przy k = 1 możemy jedynie uzyskać skończone sumy klik z antykliką. Polecenie zamien(i, j) nie masensu przy k = 1, zaś każde użycie dodaj(1, 1) zmienia aktualny graf w klikę. Jeśli nie użyjemydodaj(1, 1), pozostaje nam jedynie operacja •i, za pomocą której stworzymy dowolnie dużą antyklikę.Suma rozłączna dwóch grafów powyższej postaci też jest oczywiście powyższej postaci. To ostateczniedowodzi, że żadnych innych grafów nie otrzymamy.

• Jak stworzyć linię długości n? (przez linię rozumiem pewien początkowy podzbiór zbioru liczb natural-nych z krawędziami pomiędzy elementami różniącymi się o 1) Okazuje się, że wystarczą do tego trzykolory, niezależnie od wielkości n. Początek (linię jednopunktową) uzyskujemy łatwo, kolorując wierz-chołek na kolor 2 (operacja •2). Załóżmy, że mamy już linię długości m, której wszystkie wierzchołkipoza największym są koloru 1, zaś ów największy – koloru 2 lub 3; dla ustalenia uwagi załóżmy, że jestto 2. Postępujemy następująco – dodajemy nowy wierzchołek koloru 3 (•3), łączymy ów nowy punktz jego poprzednikiem (dodaj(2, 3)), a następnie zamieniamy kolor poprzednika na 1 (zamien(2, 1)).

• Zauważmy, że gdybyśmy wyeliminowali możliwość istnienia pętli jednoelementowych, to w poprzednimprzykładzie wystarczyłyby dwa kolory (zamiast 2 i 3 używalibyśmy wszędzie 2).

Dowód twierdzenia 50. Interpretacją będzie dla nas funkcja i : T 7→ G, gdzie T jest drzewem, zaś G – grafem.Zauważmy, że każda konstrukcja grafu za pomocą operacji zdefiniowanych w definicji szerokości klikowej da sięprzedstawić na drzewie skończonym, którego każdy wierzchołek ma tyle synów, ile wskazuje arność operacji,jaką on reprezentuje (w szczególności operacje •i to dokładnie liście). Przyjmijmy następującą definicję:

Definicja 28. Drzewo opisujące k-derywację to skończone drzewo etykietowane operacjami z definicji sze-rokości klikowej (przy i, j ∈ 1, 2, . . . , k.

(Uwaga: dla ustalonego k zbiór k-derywacji jest regularnym językiem drzew Lk)[cdn...]

68

Page 69: Automaty a logika

Rozdział 9

Rozwiązania zadań

69

Page 70: Automaty a logika

Zadanie 1.7. Napisać formuły FOL (logiki pierwszego rzędu) definiujące następujące własności:

a istnieje dokładnie k elementów w uniwersum,

b pomiędzy wierzchołkami u, v istnieje ścieżka długości ≤ k,

c w uniwersum nie ma cyklu długości k,

Czy można napisać także formuły definiujące następujące własności (na pierwszy rzut oka prostsze wersjepodpunktów wyżej)?

a’ uniwersum ma parzyście wiele elementów,

b’ istnieje ścieżka między wierzchołkami u i v,

c’ w uniwersum nie istnieje cykl.

Rozwiązanie. (Zapisał Mateusz Kopeć.)

Niech E(u,v) ⇐⇒ między u i v istnieje krawędź.

a∃x1,...,xk(

∧1≤i,j≤ki 6=j

xi 6= xj) ∧ (∀y∨

1≤i≤k

y = xi)

bE(u, v) ∨

∨1≤i<k

∃x1,x2,...,xiE(u, x1) ∧ E(xi, v) ∧∧

1≤j<i

E(xj , xj+1)

c¬∃x1,x2,...,xkE(xk, x1) ∧

∧1≤i<k

E(xi, xi+1)

W logice pierwszego rzędu nie da się napisać formuły definiującej pozostałe własności. Aby to wykazać,skorzystamy z twierdzenia o zwartości:

Twierdzenie 51. Nieskończony zbiór rachunku predykatów jest spełnialny jeśli tylko jego każdy podzbiórskończony jest spełnialny. Równoważnie, jeśli taki zbiór jest sprzeczny, to istnieje jego skończony podzbiór,który jest sprzeczny.

a’ Załóżmy, że istnieje formuła ϕ definiująca własność a’. Wtedy niech:

ϕk = ¬∃x1,...,xk(∧

1≤i,j≤ki 6=j

xi 6= xj) ∧ (∀y∨i

y = xi)

ϕk - formuła mówiąca, że uniwersum nie ma k elementówϕ - formuła mówiąca, że uniwersum ma parzyście wiele elementówKorzystając z twierdzenia o zwartości dla zbioru predykatów

ϕ,ϕ2, ϕ4, ϕ6, ϕ8, . . .

wiemy, że cały nieskończony zbiór predykatów jest spełnialny. Jest to sprzeczność, ponieważ uniwersumma parzyście wiele elementów i jednocześnie wykluczyliśmy wszystkie skończone parzyste liczebnościuniwersum za pomocą formuł ϕ2k, gdzie k ∈ N. Zatem w FOL nie istnieje formuła definiująca własnośća’.

70

Page 71: Automaty a logika

b’ Załóżmy, że istnieje formuła ϕ definiująca własność b’. Wtedy niech:

ϕk = ¬E(u, v) ∧ ¬∨

1≤i<k

∃x1,x2,...,xiE(u, x1) ∧ E(xi, v) ∧∧

1≤j<i

E(xj , xj+1)

ϕk - formuła mówiąca, że nie istnieje ścieżka długości ≤ k z u do vϕ - formuła mówiąca, że istnieje ścieżka z u do vKorzystając z twierdzenia o zwartości dla zbioru predykatów

ϕ,ϕ1, ϕ2, ϕ3, ϕ4, . . .

wiemy, że cały nieskończony zbiór predykatów jest spełnialny. Jest to sprzeczność, ponieważ istniejeścieżka z u do v i jednocześnie wykluczyliśmy wszystkie ścieżki o skończonych długościach za pomocąformuł ϕk, gdzie k ∈ N. Zatem w FOL nie istnieje formuła definiująca własność b’.

c’ Załóżmy, że istnieje formuła ϕ definiująca własność c’. Wtedy niech:

ϕk = ¬∃x1,x2,...,xkE(xk, x1) ∧∧

1≤i<k

E(xi, xi+1)

ϕk - formuła mówiąca, że nie istnieje cykl długości kϕ - formuła mówiąca, że nie istnieje cyklKorzystając z twierdzenia o zwartości dla zbioru predykatów

¬ϕ,ϕ1, ϕ2, ϕ3, ϕ4, . . .

wiemy, że cały nieskończony zbiór predykatów jest spełnialny. Jest to sprzeczność, ponieważ nie istniejecykl (wynika to z ϕ) i jednocześnie wykluczyliśmy wszystkie cykle o skończonych długościach za pomocąformuł ϕk, gdzie k ∈ N. Zatem w FOL nie istnieje formuła definiująca własność c’.

71

Page 72: Automaty a logika

Zadanie 2.1. Pokazać, że każdy niedeterministyczny automat z warunkiem Mullera jest równoważny pew-nemu NBA.

Rozwiązanie. (Zapisał Michał Pilipczuk.)

Niech AM będzie automatem o stanach Q z warunkiem Mullera akceptującym język L. Warunek automatuAM (oznaczony jako ψA) jest boolowską kombinacją warunków typu Büchiego, czyli zdań ϕq mówiących„stan q wystąpił nieskończenie często”. Rozważmy wszystkie wartościowania zdań ϕq i podzielmy je na dwiegrupy: grupa tych, przy których ψA jest prawdziwe, i grupa tych, przy których jest fałszywe. Budowanyautomat NBA musi mieć tę własność, że akceptuje słowa w których wartościowanie ϕq należy do tych,przy których ψA jest prawdziwe. Automat będzie więc niedeterministycznie zgadywał, które wartościowaniejest spełnione i je sprawdzał.

Niech więc τ : ϕq : q ∈ Q → 0,1 będzie boolowskim wartościowaniem warunków ϕq, dla któregomamy zbudować automat NBA Aτ akceptujący jedynie takie słowa nieskończone, w których wartościowanieϕq to po prostu τ . Niech Binf = τ−1(1) oraz Bfin = τ−1(0). Poprzez utożsamienie stanu z warunkiemBüchiego dlań możemy rozumieć Binf i Bfin jako odpowiednio zbiory stanów, w których automat musi sięznaleźć nieskończenie wiele razy lub też skończenie wiele razy. Niech AM będzie automatem AM z usuniętymistanami z Bfin. Automat Aτ będzie składał się z jednej kopii automatu AM oraz |Binf | kopii automatu AM ,indeksowanych stanami z Binf : Aq1 ,Aq2 , . . . ,Aq|Binf | . Automat Aτ zaczyna w kopii AM dokładnie tak jakAM i kręci się tam ile chce. Ponadto z każdego stanu spoza Bfin za pomocą ε-przejścia może przeskoczyć dotego samego stanu w automacie Aq1 . Następnie kręci się w Aq1 , ale ze stanu q2 za pomocą ε-przejścia możeprzeskoczyć do q2 w automacie Aq2 . Konstruujemy tak dalej, aż wreszcie ze stanu q1 w automacie Aq|Binf |za pomocą ε-przejścia przechodzi do q1 w automacie Aq1 . Stanem akceptującym w tym NBA jest sztucznystan dodany wewnątrz któregokolwiek ε-przejścia pomiędzy qi a qi+1.

Łatwo sprawdzić, że automat tak skonstruowany spełnia nałożone nań warunki. Moment opuszczeniakopii AM i przejścia do Aq1 odpowiada decyzji „od teraz nie będzie już stanów z Bfin”, co załatwiamy zapomocą usunięcia ich z automatów Aqi . Krążenie po pętli (Aq1 ,Aq2 , . . . ,Aq|Binf |) odpowiada poszukiwaniukolejno: następnego wystąpienia q2, następnego wystąpienia q3 itd., co odpowiada dokładnie warunkowi,że każdy z stan z Binf wystąpił nieskończenie wiele razy. Umiejscowienie stanu akceptującego zapewnia namnieskończenie wiele obrotów pętli.

Cały automat budujemy poprzez zbudowanie Aτ dla każdego τ spełniającego warunki z pierwszegoakapitu oraz podłączenie ε-przejściami ich stanów startowych do nowego, sztucznego stanu startowego. Jeślinie lubimy ε-przejść, to dzięki niedeterminizmowi możemy je usunąć — w szczególności można to zrobić tak,by nie móc „omijać” stanów akceptujących automatów Aτ .

72

Page 73: Automaty a logika

Zadanie 2.2. Pokazać, że języki rozpoznawane przez deterministyczne automaty z warunkiem Büchiego sązamknięte na przecięcie.

Rozwiązanie. (Zapisał Michał Pilipczuk.)

Niech A1 oraz A2 będą dwoma automatami DBA. Chcemy skonstruować jeden automat DBA rozpoznającyL(A1)∩L(A2). Automat ten (nazwijmy go A) będzie chodził po trzech kopiach produktu automatów A1×A2.Pierwsza kopia (oznaczana B1) będzie odpowiadała rozpoznawaniu wystąpień stanów akceptujących w A1,druga (B2) w A2. Trzecia kopia (BF ) będzie kopią stanów akceptujących.

Przejścia w automacie B1 są takie same jak w standardowym automacie produktowym, oprócz przejśćdo stanów postaci (q,p) dla q akceptującego w A1. Zamiast odpowiedniego przejścia do (q,p) w B1 przejścieto prowadzi do (q,p) w automacie BF . Ze stanu (q,p) w BF idzie ε-przejście do (q,p) w B2.

Podobnie, w automacie B2 przejścia do stanów postaci (q,p) dla p akceptującego w A2 zamieniamy naprzejścia do stanu (q,p) w kopii B1.

Zauważmy, że usuwając ε-przejścia w tak skonstruowanym automacie uzyskamy automat DBA, gdyżjedyne ε-przejścia prowadziły ze stanów (q,p) w BF do (q,p) w B2 i dla każdego (q,p) jest tylko jedno takieprzejście. Skoro stany w B2 na mocy konstrukcji mają deterministyczne wyjścia, to po usunięciu ε-przejśćrównież stany z BF będą miały deterministyczne wyjścia.

Automat ten oczywiście rozpoznaje język L(A1) ∩ L(A2). Bieg akceptujący w nim nieskończenie częstoprzechodzi przez akceptującą część BF , co oznacza, że wykonuje nieskończenie wiele pętli pomiędzy B1 a B2.Jednocześnie każdy bieg robiący nieskończenie wiele takich pętli przechodzi przez BF . Każdorazowe przejściez B1 do B2 lub z B2 do B1 odpowiada wystąpieniu stanu akceptującego w A1 lub A2 odpowiednio. Zatembiegi akceptujące w tym automacie odpowiadają dokładnie biegom akceptowanym zarówno przez A1 jak iA2.

73

Page 74: Automaty a logika

Zadanie 2.3. Pokazać, że następujący język nie jest ω-regularny:

an1ban2b · · · : limi→∞

ni =∞.

Rozwiązanie. (Zapisał Michał Pilipczuk.)

Załóżmy przeciwnie, że język ten jest ω-regularny, jest zatem rozpoznawany przez pewien automat NBAo n stanach. Rozważmy bieg tego automatu rozpoznający słowo abaabaaab . . . (w każdym kolejnym blokujest o jedno więcej a). Rozważmy blok ak dla k > n. Z zasady szufladkowej Dirichleta któryś stan siępowtórzył przy rozpoznawaniu tego bloku, mamy więc cykl w biegu. Załóżmy, że na cyklu tym pojawił się stanakceptujący. Wówczas pompując cykl w nieskończoność uzyskujemy, że również słowo abaabaaab . . . ak−1baω

należy do języka, co jest nieprawdą. Stąd wszystkie cykle wewnątrz bloków postaci ak przechodzą jedynieprzez stany nieakceptujące. Usuwając je nie zmieniamy zatem warunku Büchiego, czyli po usunięciu słowonadal będzie w języku. Ze względu na rozmiar automatu możemy w każdym bloku wybierać cykl i usuwaćaż do momentu, kiedy jego długość będzie nie większa niż n. Uzyskujemy wniosek, że do języka należysłowo postaci ak1bak2bak3b . . . dla ki ≤ n, co stoi w sprzeczności z warunkiem ki →∞. W obu przypadkachuzyskaliśmy więc sprzeczność, stąd język ten nie jest ω-regularny.

74

Page 75: Automaty a logika

Zadanie 2.4. Słowo ostatecznie okresowe to słowo postaci wvω dla w,v ∈ A+. Pokazać, że jeśli dwa językiω-regularne zawierają te same słowa ostatecznie okresowe, to muszą być równe.

Rozwiązanie. (Zapisał Krzysztof Kąs.)

Niech A,B będą automatami niedeterministycznymi z warunkiem Büchiego rozpoznającymi te języki.Przypuśćmy, że rozważane języki nie są równe. Bez straty ogólności załóżmy więc, że istnieje słowo

nieskończone w = a0a1a2a3 . . ., które należy do języka rozpoznawanego przez automat B, ale nie należy dojęzyka rozpoznawanego przez automat A.

Dla dowolnego słowa skończonego x ∈ A+ przez MAx i MBx oznaczmy macierze odpowiadające słowu xw automatach A i B odpowiednio.

Rozważmy podział w = v0v1v2v3 . . . i macierze MB, NB otrzymane z zastosowania kluczowego lematu.Wówczas:

• MBv0 = MB

• MBvi = NB dla i = 1, 2, 3, . . .

• MB·NB = MB i NB·NB = NB.

Rozważmy teraz ten sam podział w kontekście automatu A. Otrzymamy ciąg macierzy:

MAvi dla i = 0, 1, 2, 3, . . ..

Ponownie stosujemy kluczowy lemat, ale tym razem dla trochę innych danych:

• Zamiast automatu B rozważamy automat A.

• Zamiast liter a0, a1, a2, a3, . . . rozważamy słowa v0, v1, v2, v3, . . .. Rozważanie słów zamiast pojedyn-czych liter nie ma wpływu na poprawność dowodu kluczowego lematu. Wystarczy bowiem w definicjiα zamiast macierzy Mai...aj−1 rozważać macierze Mvi...vj−1 .

Otrzymamy w ten sposób podział w = u0u1u2u3 . . ., gdzie ui = vsivsi+1 . . . vsi+1−1 dla pewnego ciągu liczbnaturalnych 0 = s0 < s1 < s2 < . . .. Kluczowy lemat wyznaczy też macierze MA i NA takie, że:

• MAu0= MA

• MAui = NA dla i = 1, 2, 3, . . .

• MA·NA = MA i NA·NA = NA.

Jednocześnie nadal w automacie B mamy:

• MBu0= MBv0 ·M

Bv1 ·M

Bv2 · . . . ·M

Bvs1−1

= MB·NB·NB· . . . ·NB = MB

• MBui = MBvsi·MBvsi+1

·MBvsi+2· . . . ·MBvsi+1−1

= NB·NB·NB· . . . ·NB = NB dla i = 1, 2, 3, . . .

• MB·NB = MB i NB·NB = NB.

Rozważmy słowo w = u0uω1 = u0u1u1u1 . . .. Wielokrotnie korzystając z lematu charakteryzującego otrzy-

mujemy kolejno:

• B akceptuje w,

• macierze MB, NB (odpowiadające podziałowi w = u0u1u2u3 . . .) spełniają warunek (?),

• macierze MB, NB (odpowiadające podziałowi w = u0u1u1u1 . . .) spełniają warunek (?),

• B akceptuje w = u0uω1 ,

• (z założenia zadania) A akceptuje w = u0uω1 ,

75

Page 76: Automaty a logika

• macierze MA, NA (odpowiadające podziałowi w = u0u1u1u1 . . .) spełniają warunek (?),

• macierze MA, NA (odpowiadające podziałowi w = u0u1u2u3 . . .) spełniają warunek (?),

• A akceptuje w, co daje sprzeczność.

Prostsze rozwiązanie. (Zapisał Paweł Parys.)

Oznaczmy te języki przez L1, L2. Niech L = L1 − L2; jest to język ω-regularny, gdyż klasa języków ω-regularnych jest zamknięta na operacje boolowskie. Rozważmy NBA A rozpoznający L. Jeśli L jest niepusty,to wA istnieje ścieżka do pewnego stanu akceptującego oraz pewien cykl zawierający ten stan. Idąc tą ścieżką,a następnie w nieskończoność tym cyklem, dostajemy bieg akceptujący pewne słowo ostatecznie okresowe.Jednak z założenia L nie zawiera słów ostatecznie okresowych, czyli L jest pusty. Przez symetrię także L2−L1

jest pusty, czyli L1 = L2.

76

Page 77: Automaty a logika

Zadanie 2.5. Wskazać język ω-regularny, który nie jest różnicą dwóch języków rozpoznawanych przezdeterministyczne automaty z warunkiem Büchiego.

Rozwiązanie. (Zapisał Mateusz Kopeć.)

Zauważmy, że wystarczy znaleźć język regularny L, który nie jest rozpoznawany przez zdefiniowaną poniżejklasę automatów. (ta klasa automatów rozpoznaje języki postaci L1 \L2, gdzie L1, L2 są rozpoznawane przezdeterministyczne automaty Büchiego)

A =< Σ,Q,q0,δ,F,Z >

Bieg q0, q1, . . . jest akceptujący wtedy i tylko wtedy, gdy

Inf(q0, q1, . . . ) ∩ F 6= ∅ ∧ Inf(q0, q1, . . . ) ∩ Z = ∅

gdzie Inf - zbiór stanów, pojawiających się nieskończenie wiele razy w biegu q0, q1, . . . .Załóżmy, że ten automat potrafi rozpoznawać język regularny L = ’nieskończenie wiele a lub skończenie wieleb’ (nad alfabetem a,b,c). ’Oszukamy’ ten automat, podobnie jak postępowaliśmy podczas ’oszukiwania’deterministycznego automatu Büchiego:

• Rozpoczynamy od ciągu liter c, aż do momentu, gdy automat wejdzie do stanu q ∈ F ,

• wstawiamy literę a,

• wpisujemy ciąg liter b, do momentu, gdy automat wejdzie do stanu p ∈ Z,

• powtarzamy postępowanie od początku.

W ten sposób napisaliśmy słowo (c∗ab∗)ω, które należy do języka L = ’nieskończenie wiele a lub skończeniewiele b’, a nie zostało zaakceptowane przez nasz automat (ponieważ nieskończenie często weszliśmy dostanów ze zbioru Z). Ze sprzeczności wynika, że żaden automat z wyżej zdefiniowanej klasy nie jest wstanie rozpoznać języka L, zatem nie jest to język postaci L1 \ L2, gdzie L1, L2 są rozpoznawane przezdeterministyczne automaty Büchiego.

77

Page 78: Automaty a logika

Zadanie 2.6. Zaprojektować algorytm, który sprawdza czy język rozpoznawany przez dany NBA jestprzeliczalny.

Rozwiązanie. (Zapisał Krzysztof Kąs.)

Na początku tworzymy deterministyczny automat A z warunkiem Mullera równoważny danemu NBA. Niechzbiorem jego stanów będzie Q, natomiast stanem początkowym - qI . Niech podzbiory F1, F2, ..., Fj ⊆ Qokreślają warunek akceptacji:

A akceptuje słowo nieskończone w wtw. zbiór stanów występujących nieskończenie często wbiegu automatu A na słowie w jest jednym ze zbiorów F1, F2, ..., Fj .

Język rozpoznawany przez automat jest przeliczalny wtedy i tylko wtedy gdy dla każdego i ∈ 1,2, . . . ,jprzeliczalny jest zbiór słów w, dla których:

zbiór stanów występujących nieskończenie często w biegu automatu A na słowie w jest równyFi.

Zatem wystarczy podać algorytm w przypadku gdy j = 1. Dla uproszczenia dalszego zapisu oznaczmyF = F1. Niech F = f1, f2, . . . , fk.

Mając dany taki automat A tworzymy graf skierowany G w następujący sposób:

• wierzchołkami są stany automatu A,

• oznaczenia qI , Q, F przenoszą się bezpośrednio na wierzchołki grafu G,

• z wierzchołka qa do wierzchołka qb istnieje krawędź wtedy i tylko wtedy, gdy w automacie A możnabyło przejść po jednej literze ze stanu qa do stanu qb.

Okazuje się, że dany problem można teraz rozstrzygnąć patrząc tylko na graf G.Niech H będzie podgrafem grafu G indukowanym przez zbiór F . Język rozpoznawany przez automat A

jest przeliczalny wtw. gdy spełniony jest co najmniej jeden spośród warunków:

• w grafie G nie istnieje ścieżka z qI do żadnego wierzchołka ze zbioru F ,

• graf H nie jest ściśle spójny (tzn. istnieją wierzchołki fα, fβ ∈ F takie, że nie istnieje w H ścieżka z fαdo fβ),

• graf H jest pojedynczym cyklem.

Pierwszy z warunków oznacza bowiem, że język rozpoznawany przez automat A jest pusty (a więc prze-liczalny).

Drugi warunek też implikuje pustość tego języka. Dla dowodu zauważmy, że wówczas istnieją takie wierz-chołki fα, fβ ∈ F , że każda ścieżka z fα do fβ w G przechodzi przez jakiś wierzchołek spoza zbioru F . Gdybywięc automat akceptował pewne słowo w, to jego bieg na tym słowie nieskończenie często przechodziłbyprzez fα i nieskończenie często przez fβ , a więc nieskończenie często musiałby przechodzić ścieżką z fα do fβprzez wierzchołki spoza zbioru F . Daje to sprzeczność, bo każdy bieg akceptujący automatu A od pewnegomomentu odwiedza tylko stany ze zbioru F .

Trzeci warunek oznacza, że każdy bieg akceptujący A na pewnym słowie w od pewnego momentu poruszasię zgodnie z cyklem H. Wobec tego w = uvω dla pewnych słów skończonych u, v. A jak wiadomo słów tejpostaci jest przeliczalnie wiele.

Pozostaje do pokazania, że niespełnienie tych trzech warunków implikuje nieprzeliczalność danego języka.Wówczas graf H ma więcej niż F krawędzi. Zatem istnieje w grafie H wierzchołek fγ oraz ścieżka z fγ do

fγ długości mniejszej niż |F | i większej od zera. Z silnej spójności wynika, że istnieje też ścieżka z fγ do fγprzechodząca przez wszystkie wierzchołki (jej długość jest oczywiście nie mniejsza niż |F |). Zatem istnieją:

• słowo skończone u,

78

Page 79: Automaty a logika

• słowo skończone x długości nie mniejszej niż |F |,

• niepuste słowo skończone y długości mniejszej niż |F |,

takie, że:

• automat A ze stanu qI przechodzi do stanu fγ po słowie u,

• automat A ze stanu fγ przechodzi do stanu fγ po słowie x, odwiedzając po drodze wszystkie stany zezbioru F ,

• automat A ze stanu fγ przechodzi do stanu fγ po słowie y (ale nie odwiedza po drodze wszystkichstanów ze zbioru F ).

Rozważmy słowa z = x|y| oraz t = y|x|. Wówczas |z| = |t|. Ponadto nadal:

• automat A ze stanu qI przechodzi do stanu fγ po słowie u,

• automat A ze stanu fγ przechodzi do stanu fγ po słowie z, odwiedzając po drodze wszystkie stany zezbioru F ,

• automat A ze stanu fγ przechodzi do stanu fγ po słowie t (ale nie odwiedza po drodze wszystkichstanów ze zbioru F ).

Ponieważ automat A jest deterministyczny, to z 6= t. Wobec tego język rozpoznawany przez automat Azawiera następujący język nieprzeliczalny:

u(z(z + t))ω.

79

Page 80: Automaty a logika

Zadanie 4.1. Przez WMSO, z angielskiego Weak Monadic Second-Order Logic, oznaczamy wariant MSO,w którym wolno kwantyfikować wyłącznie po elementach oraz skończonych podzbiorach uniwersum.

Pokazać, że każda formuła WMSO(≤) na słowach nieskończonych jest równoważna formule logiki MSO(≤).

Rozwiązanie. (Zapisał Michał Gołębiowski.)

(⊆) Pokażemy najpierw, że każda formuła WMSO(s) da się zapisać jako formuła MSO(s). Rozpatrzmyformułę w logice, w której dopuszczamy kwantyfikatory obu logik WMSO(s) i WMSO(s):

∀X−sk. ϕ(X) (9.1)

gdzie ϕ(X) jest formułą MSO(s). Jeśli w ϕ(X) występują zmienne wolne, traktujemy je jako stałe. Zdefi-niujmy formułę MSO(s):

∀y∀X ((∀x (X(x) → x ≤ y)) → ϕ(X)) (9.2)

Musimy udowodnić, że formuła (9.2) jest prawdziwa wtedy i tylko wtedy, gdy dla każdego skończonegoX zachodzi ϕ(X). Załóżmy, że X jest skończony; udowodnimy, że formuła (9.2) implikuje ϕ(X). Każdyskończony zbiór pozycji w biegu automatu jest ograniczony z góry, istnieje więc y będące ograniczeniemgórnym dla wszystkich elementów zbioru X. Ustalmy takie y. Ponieważ formuła:

(∀x (X(x) → x ≤ y)) → ϕ(X) (9.3)

ma być prawdziwa dla dowolnego y, to i również dla wybranego przez nas. Z wyboru y wynika bezpośrednio,że lewa strona implikacji jest prawdziwa. Ponieważ z założenia cała implikacja jest prawdziwa, to zachodziϕ(X), co chcieliśmy udowodnić.

Załóżmy teraz, że dla każdego skończonego X zachodzi ϕ(X). Wówczas dla każdego X i y albo y nie jestograniczeniem górnym dla X i wtedy przesłanka implikacji (9.3) jest prawdziwa, albo y jest ograniczeniemgórnym X, a zatem X jest skończony; zachodzi zatem teza implikacji (9.3).

Podobnie dla formuły:∃X−sk. ϕ(X) (9.4)

gdzie ϕ(X) jest formułą MSO(s), definiujemy zdanie w całości w MSO(s):

∃y∃X ((∀x (X(x) → x ≤ y)) ∧ ϕ(X)) (9.5)

Musimy pokazać, że formuła (9.5) jest prawdziwa wtedy i tylko wtedy, gdy dla pewnego skończonego X za-chodzi ϕ(X). Załóżmy najpierw, że (9.5) jest prawdziwa. Wybierzmy X i y realizujące prawdziwość formuły:

(∀x (X(x) → x ≤ y)) ∧ ϕ(X)

Warunek ∀x (X(x) → x ≤ y) oznacza w szczególności, że X jest skończony; z drugiego z warunków wiemy,że dla tego skończonego X zachodzi ϕ(X).

Niech teraz istnieje skończony zbiórX, dla którego zachodzi ϕ(X). Istnieje wówczas (na mocy poprzednichrozważań) jego ograniczenie górne y – ustalmy takie y. Wówczas zachodzi zarówno formuła:

∀x (X(x) → x ≤ y)

jak i ϕ(X), co dowodzi prawdziwości formuły (9.5), QED.(⊇) Załóżmy teraz, że język słów nieskończonych L jest definiowany w MSO(s). Na mocy tw. Büchiego

wiemy, że L jest ω-regularny. Niech A będzie automatem deterministycznym z warunkiem parzystości (ostanach z Q i rangach z 0, 1, . . . , n oraz wartościowaniu α : Q → 0, 1, . . . , n) rozpoznającym ten język.Dzięki temu, że automat jest deterministyczny, aby istniał nieskończony bieg, w którym największa występu-jącą dowolnie daleko ranga jest parzysta potrzeba i wystarczy, by – po „wyrzuceniu” odpowiednio długiegoprefiksu biegu automatu na słowie – istniały dowolnie długie skończone biegi tego automatu na prefiksiebadanego słowa o tej własności, że kończą się one na stanie o randze parzystej, która jest jednocześnie mak-symalną rangą występującą na owym skończonym biegu. Taką własność już w oczywisty sposób zapisuje

80

Page 81: Automaty a logika

się w WMSO(≤). Podobnie jak w przypadku formuł MSO(≤) dla języków regularnych słów skończonych,oznaczamy przez Xi zbiór pozycji, na których jesteśmy w stanie qi ∈ Q = q0, q1, . . . , q|Q|; formuła będziepostaci: ∨

k∈0,1,...,n2|k

∃x∀y≥x∃z≥x∃X0−sk.∃X1−sk. . . . ∃X|Q|−sk. (ψ ∧ φ)

gdzie ψ jest zdefiniowana jako koniunkcja następujących podformuł:

ψ =

αk(z)

na pozycji x ranga wynosi k

∀t (x ≤ t ≤ z∨l≤k αl(t))

rangi na pozycjach od x do z nie przekraczają k

zaś φ jest zdefiniowana tak, jak pierwsze cztery składniki formuły z dowodu twierdzenia Büchiego. Stądlogiki WMSO(s) oraz MSO(s) mają identyczną siłę wyrazu w uniwersum słów nieskończonych, QED.

81

Page 82: Automaty a logika

Zadanie 4.4. Porównać powyższą topologię z topologią zadaną przez odległość:

e(w,v) =1n

gdzie n to najmniejsza ilość stanów w NBA, który akceptuje w ale nie v.

Rozwiązanie. (Zapisał Krzysztof Kąs.)

Niech a, b ∈ A będą pewnymi różnymi symbolami alfabetu.1. Dla dowolnych słów w,v ∈ Aω zachodzi

11

d(w,v) + 2≤ e(w,v). (9.6)

Dla dowodu zauważmy, że ten warunek jest równoważny następującemu:

Jeśli n jest pierwszą pozycją, na której w, v się różnią (bez straty ogólności n-ta litera słowa wto a i n-ta litera słowa v to b), to istnieje NBA o n+ 2 stanach, który akceptuje w i nie akceptujev.

Poprzednik tej implikacji mówi, że istnieje słowo skończone u = c1c2c3 . . . cn−1 długości n − 1 takie, żew ∈ uaAω i v ∈ ubAω. Skonstruujemy NBA o n+2 stanach rozpoznający język uaAω w następujący sposób:

• q0, q1, q2, . . . , qn+1 są stanami,

• q0 jest stanem początkowym,

• qn jest stanem akceptującym,

• relacja przejścia jest zdefiniowane następująco (i = 0, 1, 2, . . . , n− 2):

ze stanu qi po literze ci+1 jest przejście do stanu qi+1,

ze stanu qi po literze innej niż ci+1 jest przejście do stanu qn+1,

qn−1a→ qn,

ze stanu qn−1 po literze innej niż a jest przejście do stanu qn+1,

qnA→ qn, qn+1

A→ qn+1 (czyli te stany są „czarnymi dziurami”).

Warunek (9.6) oznacza, że d(w,v)2d(w,v)+1 ≤ e(w,v), czyli w szczególności:

d(w,v) ≤ 3e(w,v). (9.7)

2. Metryki d i e dają różne topologie. Rozważmy słowo u = aω oraz ciąg słów vn = anbω. Wówczasoczywiście d(u,vn) = 1

n+1 → 0. Natomiast e(u,vn) = 12 (nie zbiega do 0). Wynika to z faktu, że minimalny

automat rozróżniający u i vn ma dwa stany: p (początkowy) i q (akceptujący). Jego przejściami są:

pa→ p p

b→ q qa→ q q

b→ q.

3. Przestrzeń (Aω, d) jest zupełna, natomiast przesrzeń (Aω, e) nie jest zupełna.Najpierw pokażemy, że przestrzeń (Aω, d) jest zupełna.Jeśli mamy ciąg słów wn ∈ Aω spełniający warunek Cauchy’ego w metryce d, to istnieje ciąg rosnący

m1 < m2 < m3 < . . ., taki, że dla każdego n i dla każdego k > mn zachodzi

d(wmn , wk) <1n.

82

Page 83: Automaty a logika

Stąd wynika, że słowa wmn , wmn+1, wmn+2, . . . na pozycji n-tej mają taki sam symbol (oznaczmy go przezan). Łatwo zauważamy, że słowo a = a1a2a3a4 . . . dla każdego n ma na pozycji n-tej ten sam symbol cosłowa wmn , wmn+1, wmn+2, . . .. Stąd wynika, że dla każdego n i dla każdego k ≥ mn zachodzi

d(a,wk) <1n.

Wobec tego a jest granicą ciągu wn w metryce d. Czyli przestrzeń (Aω, d) jest zupełna.Pokażemy teraz, że przestrzeń (Aω, e) nie jest zupełna.Udowodnimy najpierw, że jeśli m > n, to każdy NBA odróżniający słowa an!bω i am!bω ma co najmniej

f(n) stanów dla pewnej funkcji f , której wartości rosną do nieskończoności.W tym celu (na mocy ograniczenia górnego na liczbę stanów DMA równoważnemu danemu NBA) wy-

starczy udowodnić, że każdy DMA odróżniający słowa an!bω i am!bω ma co najmniej g(n) stanów dla pewnejfunkcji g, której wartości rosną do nieskończoności.

Przypuśćmy, że minimalny DMA odróżniający słowa an!bω i am!bω ma nie więcej niż n stanów. Niech q0

będzie jego stanem początkowym, natomiast qi (dla i ∈ N) - stanem po przeczytaniu słowa ai. Wówczas namocy zasady szufladkowej Dirichleta istnieją 0 < k < l ≤ n takie, że qk = ql. Wobec tego dla dowolnegoi ≥ 0 zachodzi qk+i = ql+i. Ponieważ l − k dzieli m! − n!, to także qm! = qn!. A więc an!bω i am!bω nie sąodróżniane przez ten DMA. Możemy więc przyjąć g(n) = n+ 1.

Udowodniliśmy więc, że e(an!bω, am!bω) ≤ 1f(min(n,m)) . Zatem ciąg wn = an!bω spełnia warunek Cau-

chy’ego. Przypuśćmy, że ma on granicę w metryce e. Wówczas na mocy (9.7) ma on tę samą granicę w me-tryce d. A oczywiście granicą w metryce d jest aω. Jednak (jak było wcześniej udowodnione) e(wn,aω) = 1

2 ,więc aω nie jest granicą w metryce e, co daje sprzeczność.

4. Łatwo zauważyć, że w przestrzeni (Aω, d) nie ma punktów izolowanych. Natomiast w przestrzeni (Aω, e)istnieją takie. Jest nim na przykład słowo aω.

Wynika to stąd, że dla dowolnego słowa w 6= aω minimalny NBA odróżniający w od aω ma 2 stany: p(początkowy i akceptujący) i q oraz następujące przejścia:

ze stanu p po literze a jest przejście do stanu p,ze stanu p po literze innej niż a jest przejście do stanu q,ze stanu q po dowolnej literze jest przejście do stanu q.

83

Page 84: Automaty a logika

Zadanie 4.6. Wykaż, że języki rozpoznawane przez automaty deterministyczne z warunkiem parzystości,używające priorytetów i, . . . , j dla i ∈ 0, 1, j ≥ i tworzą ścisłą hierarchię.

Rozwiązanie. (Zapisał Michał Gołębiowski.)

Przypomnijmy - deterministyczny automat z warunkiem parzystości ma stany ze zbioru i, i + 1, . . . , j iakceptuje słowo w wtedy i tylko wtedy, gdy największy stan (traktowany jako liczba całkowita) występującyna biegu automatu na w jest liczbą parzystą. Język rozpoznawany przez taki automat oznaczamy przez(i, j). Oczywiście można bez ograniczenia ogólności założyć, że i ∈ 0, 1, gdyż języki (i, j) i (i+ 2, j + 2) sąidentyczne (odp. automat dla drugiego języka konstruujemy przez dodanie 2 do wszystkich stanów automatudla pierwszego języka). Naszym celem jest pokazanie, że zachodzą zależności:

. . . . . .

| × |(0, 2) (1, 3)

| × |(0, 1) (1, 2)

| × |(0, 0) (1, 1)

gdzie linie oznaczają ścisłe zawieranie „w górę”.Zawierania (0, n) ⊆ (0, n + 1), (1, n) ⊆ (1, n + 1) oraz (1, n) ⊆ (0, n) są oczywiste. Zawieranie (0, n) ⊆

(1, n+ 2) wynika z oczywistego zawierania (2, n+ 2) ⊆ (1, n+ 2) oraz z równości języków (0, n) i (2, n+ 2).Należy jeszcze wykazać ścisłość owych zawierań. Udowodnimy, że dla dowolnego n ∈ N istnieje język

L ∈ (1, n+ 1) \ (0, n). Niech naszym alfabetem będą liczby 1, 2, . . . , n+ 1. Definiujemy:

L = w ∈ 1, 2, . . . , n+ 1ω : maxn ∈ N : ∃∞i xw(i) = n jest parzyste

gdzie xw(i) to stan, w którym automat znajdzie się po przeczytaniu pierwszych i liter słowa w. Oczywiście L ∈(1, n+1) - wystarczy zbudować automat, który po przeczytaniu dowolnej „litery” znajdzie się w stanie o liczbieidentycznej z ową „literą”. Skonstruujmy indukcyjnie słowo w ∈ 1, 2, . . . , n+1ω. Niech w(0) będzie dowolnąliterą. Załóżmy, że mamy już skonstruowane pierwsze i liter słowa w, niech x(i) = k; kładziemy wówczas w(i+1) = k + 1. Zauważmy, że maksymalna liczba występująca nieskończenie wiele razy w słowie w jest o jedenwiększa od maksymalnego stanu występującego nieskończenie wiele razy na biegu automatu na w. Ponieważjednak maksymalna liczba występująca dowolnie daleko w w jest parzysta, to maksymalny stan występującydowolnie daleko w biegu automatu na w jest nieparzysty. W szczególności, słowo w jest nieakceptowaneprzez rzeczony automat, sprzeczność. Dowodzi to, że automat żaden automat z klasy 0, . . . , n nie możezaakceptować języka L ∈ (1, n+ 1), a zatem istnieje język L ∈ (1, n+ 1) \ (0, n).

Analogicznie dla języka:

M = w ∈ 0, 1, . . . , nω : maxn ∈ N : ∃∞i x(i) = n jest parzyste

leżącego w oczywisty sposób w klasie (0, n) dowodzimy, że nie jest on akceptowany przez żaden automatz klasy 1, . . . , n + 1. Tym razem po wejściu w stan xw(i) = k kładziemy literę w(i) = k − 1. W sposóbanalogiczny do poprzedniego dochodzimy znów do sprzeczności.

Udowodniliśmy zatem, że dla każdych i, j zbiory (i, j) \ (i+ 1, j+ 1) oraz (i+ 1, j+ 1) \ (i, j) są niepuste.Z tego, że oba te zbiory są podzbiorami (i, j + 1) wynika jednoznacznie, że każda z inkluzji (i, j) ⊆ (i, j + 1)oraz (i+ 1, j) ⊆ (i, j) jest ścisła, QED.

84

Page 85: Automaty a logika

Słowa skończone.

Słowa nieskończone.

Zadanie 6.14. Rozwiązać problem Parity w czasie O(nd), gdzie d to liczba różnych rang występującychw G.

Rozwiązanie. (Zapisał Oskar Skibski.)

Pokażmy najpierw jak rozwiązać problem dla dwóch rang - 1 i 2 - przy czym gracz ∃ wygrywa przy spełnio-nym warunku parzystości. Oznaczmy przez W zbiór wszystkich wierzchołków i przez Wi zbiór wierzchołkówz rangą i. Obliczmy ciąg Ai następująco:

• A0 = W

• Ai+1 = Attr+∃ (Ai ∩W2)

Łatwo zauważyć, że Ai+1 ⊆ Ai. Intuicyjnie zbiór Ai oznacza zatem “wierzchołki z których gracz ∃ potrafispowodować, że rozgrywka i razy wejdzie do W2”. Od pewnego momentu ciąg się ustabilizuje i dostaniemyzbiór wierzchołków, z których gracz ∃ potrafi spowodować, że rozgrywka wejdzie do W2 dowolną ilość razy.Z tych wierzchołków właśnie wygrywa gracz ∃. Dlaczego z pozostałych wygrywa ∀? Opiszmy strategię tegogracza. Jeżeli gracz jest w zbiorze Ai \Ai+1 to jego strategią jest unikanie zbioru W2∩Ai. Wiemy że może torobić - gdyby nie mógł, wówczas wierzchołek ten należałby do Ai+1. Istnieją zatem dwie możliwości - albo ∀będzie chodził tylko poza W2 (wtedy wygra), albo wejdzie do W2, a dokładniej W2 \Ai. Zejdziemy wówczaszatem do zbioru Aj \ Ai dla j < i. I o to nam chodziło. Czyli gracz ∀ wygra wcześniej, albo po skończonejilości jedynek zejdzie do zbioru A0 \A1, czyli zbioru z którego może unikać wchodzenia do jedynek w ogóle.

Pokażemy teraz jak z gry z d rangami zrobić (maksymalnie) n gier z d−1 rangami dla d > 2. Przyjmijmybez straty ogólności, że d jest parzyste, czyli jeżeli powtórzy się nieskończenie wiele razy wygra gracz ∃.Konstrukcja będzie wyglądała podobnie jak w przypadku 2 rang. Ponownie określmy ciąg zbiorów Ai, niechA0 = W i Ai będzie zbiorem wierzchołków z których gracz ∃ wygrywa w grze Gi−1. Gra Gi będzie naszymodpowiednikiem atraktora z poprzedniej definicji. Budujemy ją z G w następujący sposób:

• wierzchołki z Wd \Ai będą kończyły grę ze zwycięstwem ∀,

• wierzchołkom z Wd ∩Ai zostawiamy tylko krawędzie wyjściowe i dajemy im dowolną rangę (może być1) - pojawią się w rozgrywce maksymalnie raz,

• tworzymy sztuczną kopię wierzchołków z Wd ∩ Ai i zostawiamy im tylko krawędzie wchodzące - będąkończyły grę ze zwycięstwem ∃.

Zgodne z definicją gry “kończenie” jej w wierzchołki v ze zwycięstwem gracza j uzyskujemy przez zamianęwszystkich krawędzi wychodzących na jedną krawędź prowadzącą do niego samego i przyznanie v odpowied-niej rangi (1 lub 2) - takiej która spowoduje zwycięstwo gracza j.

Ciąg Ai jest monotonicznie malejący (A1 ⊆ A0, a potem Ai+1 ⊆ Ai równoznaczne zdaniu “Gi+1 gorszeod Gi dla ∃”), zatem po pewnej ilości kroków (k) się ustabilizuje. Nasza teza jest taka, że zbiór wierzchołkówjaki będzie w zbiorze Ak jest równy zbiorowi wierzchołków z których wygrywa gracz ∃.

Najpierw pokażmy, że wszystkie wierzchołki osiągniętego zbioru są wygrywające dla ∃. Rozważmy wierz-chołki zWd∩Ak. Aby wygrać gracz ∃ musi albo dojść do wygrywającej kopii tych wierzchołków, albo wygraćniekorzystając z naszego “ułatwienia”. Jeżeli potrafi wygrać nie korzystając z ułatwienia, to tak samo potrafiw zwykłej grze. Jeżeli zaś dochodzi do sztucznych wygrywających wierzchołków, to w zwykłej grze możez osiągniętej kopii grać strategią właściwego wierzchołka - z niego też wygrywa. Teraz jeżeli wierzchołkiWd ∩ An powtórzą się nieskończenie wiele razy, to ∃ wygra. Jeżeli nie, to znaczy że na ścieżce pojawił sięwierzchołek z którego wygrywamy bez ułatwienia. To też nas urządza. Skoro mamy strategię wygrywającąz wierzchołków Wd ∩An to wystarczy dopowiedzieć, że z pozostałych wierzchołków albo dojdziemy do nich(a właściwie ich kopii) i wygramy, albo wygramy bez nich.

85

Page 86: Automaty a logika

Opiszmy teraz strategię gracza ∀ dla wszystkich wierzchołków poza Ak. Zbudujemy ją indukcyjnie. Oczy-wiście w zbiorze A0 \ A1 wygrywa ∀ - wygrana w G0 oznacza wygraną w trudniejszej grze G. Rozpatrzmyzbiór Ai \ Ai+1. Z założenia indukcyjnego mamy już określoną strategię dla A0 \ Ai, czyli też dla Wd \ Ai.Weźmy wierzchołek z tego zbioru - przynależność do tego zbioru oznacza, że ∀ wygrywa z niego w Gi i prze-grywa w Gi−1. Rozpatrzmy jego strategię. Jeżeli wykorzystuje ona ułatwienie gracza ∀ (wierzchołki Wd \Ai)to w grze G możemy grać dalej strategią określoną w założeniu indukcyjnym z tego wierzchołka. Jeżeli potrafiwygrać nie wchodząc do tego zbioru, to oczywiście strategia ta będzie możliwa do zastosowania w G.

Pokazaliśmy zatem, że zaczynając w zbiorze Ak wygrywa ∃, a poza nim - wygrywa ∀. Oznacza to, żeobliczając wyniki gier Gi dostajemy podział jakiego wyznaczenie było naszym zadaniem.

86

Page 87: Automaty a logika

Zadanie 6.16. WeakParity powstaje przez zamianę warunku parzystości na słaby warunek parzystości:największy priorytet pojawiający się choć raz jest parzysty. Pokazać, że problem WeakParity jest PTIME-zupełny (w sensie redukcji w LOGSPACE).

Rozwiązanie. (Zapisał Oskar Skibski.)

Pokażemy najpierw że problem ten jest rozwiązywalny w czasie wielomianowym. Niech najwyższa rangabędzie równa d i będzie zwycięska dla gracza i ∈ ∃,∀. Policzmy zatem atraktor dla gracza i od zbioruwierzchołków z rangą d - Attri(wierzchokizd). We wszystkich wierzchołkach atraktora oczywiście wygrywai - może dojść do najwyższej rangi i tym sposobem wygrać. Wyrzucając z gry te wierzchołki dostajemy grę zmniejszą najwyższą rangą. Gra jest poprawna - jak każda będąca obcięciem do dopełnienia atraktora - gdybyz któregoś wierzchołka wszystkie krawędzie prowadziły do atraktora sam by w nim był. Zatem po wykonaniumaksymalnie d iteracji dostaniemy podział na wierzchołki zwycięskie gracza ∃ i ∀. Złożoność algorytmu jestoczywiście wileomianowa, możemy ją ograniczyć przez O(n3) ponieważ wykonujemy maksymalnie n iteracjiobliczania atraktora, który da się policzyć w czasie O(n2).

Wiemy zatem że nasz problem jest w PTIME. Aby pokazać że problem jest PTIME-zupełny pokażemyredukcję podstawowego problemu z tej klasy - problemu obliczania wartości obwodu logicznego - do naszegoproblemu. Weźmy dowolny obwód logiczny złożony z bramek OR i AND. Nasza redukcja opiera się nastworzeniu odpowiedniej areny z obwodu podług zasad:

• niech każde wejście układu będzie wierzchołkiem o randze odpowiadającej wartości wejścia (0 lub 1),dowolnym właścicielu i jednej krawędzi prowadzącej do niego samego,

• niech wszystkie połączenia bramek będą krawędziami skierowanymi w kierunku wejścia,

• niech każda bramka OR będzie wierzchołkiem gracza ∃ o randze 0,

• niech każda bramka AND będzie wierzchołkiem gracza ∀ o randze 0,

przy czym gracz ∃ wygrywa dla rangi 1.

0

1

1

0

0

AND

OR

OR

AND

OR

∃∃

0

0

0

0

0

0

0

0

1

1

Łatwo zauważyć, że w naszej grze z pierwszego wierzchołka (będącego poprzednio wynikiem obwodu)wygrywa gracz ∃ wtedy i tylko wtedy kiedy wynikiem obwodu logicznego będzie 1. Jako że nasza redukcjajest bardzo prosta jest “przepisowa” (nie wykorzystuje zbyt dużo pamięci i działa w czasie liniowym), więcWeakParity jest PTIME-zupełny.

87

Page 88: Automaty a logika

Drzewa skończone.

Drzewa nieskończone.

88

Page 89: Automaty a logika
Page 90: Automaty a logika