1
Zarówno metoda tablic semantycznych, jak i rezolucji, to dosy sprawny algorytm do badania speªnialni±ci formuª, a wi c i tautologii. Chodzi w niej o wskazanie, je±li istnieje, modelu dla formuªy. Opiera si on o banaln obserwacj : koniunkcja zmiennych zdaniowych i ich negacji jest speªnialna (i ma tylko jeden model) wtw, gdy w niej nie wyst puje para zmienna i jej negacja. Denicja Literaªem nazywamy zmienn zdaniow lub jej negacj. Zmienn nazywamy literaªem pozytywnym, a jej negacj literaªem negatywnym. Dla formuªy A zbiór {A, A} nazywamy par formuª (lieraªów, je±li A jest literaªem) komplementarnych.
Przykªad Rozwa»my formuª A = q ( p q). Z jednej strony przy warto±ciowaniu v mamy v(a) = 1 wtw, gdy v(q) = 1 i v( p q) = 1, bo A jest koniunkcj. Z analizy p q mamy dwie mo»liwo±ci: 1 v(q) = 1 i v( q) = 1; 2 v(q) = 1 i v( p) = 1; Oczywi±cie pierwsza nigdy nie wyst puje, bo mamy par komplementarnych literaªów, a druga daje jedyny model dla A. Z drugiej strony A q p q q q p i warto±ciowanie v takie,»e v(q) = 1 i v( p) = 1 jest jedynym modelem dla ostatniej formuªy.
Powy»szy przykªad unaocznia dwie rzeczy: 1 Je±li analizowana formuªa A jest alternatyw koniunkcji literaªów, to jest ona speªnialna wtw, gdy która± z koniunkcji nie zawiera pary literaªów komplementarnych. Ponadto ka»da taka koniunkcja wyznacza pewien model dla A. 2 Dla ka»dej formuªy A mo»na efektywnie wyznaczy równowa»n z ni formuª B, która jest alternatyw koniunkcji literaªów: jest w postaci normalnej alternatywnej (PNA).
polega na przeksztaªcaniu formuªy do postaci normalnej alternatywnej i ustalaniu, czy skªadniki otrzymanej alternatywy zawieraj par literaªów komplementarnych. Cz sto przedstawia si dziaªanie tego algorytmu gracznie buduj c tabel, której elementy ªaczy si strzaªkami, które opisuj jak powstaj umieszczane w niej formuªy. Uwzgl dniaj c umieszczone straªki otrzymujemy drzewo. Dla przykªadu: q ( p q) q, ( p q) q, q q, p
Elementami tablicy s zbiory formuª, które tak dªugo przeksztaªcamy, a» ustalimy, czy zawieraj par komplementarn. Tak gaª ¹ budowanej struktury nazywamy domkni t, co odpowiednio zaznaczamy symbolem. W przeciwnym przypadku tak gaª» nazywamy otwart i oznaczymy ten fakt symbolem. B dziemy rozwa»a tylko tablice zako«czone, czyli o ka»dym li±ciu b d cym typu lub. Oto przykªad dla formuªy niespeªnialnej (p q) ( p q) (p q), ( p q) (p q), p, q p, p, q q, p, q
Zanim opiszemy algorytm musimy jeszcze sklasykowa formuªy: 1 formuªa jest typu α, je±l jest koniunkcj podformuª α 1, α 2 ; 2 formuªa jest typu β, je±li jest alternatyw podformuª β 1, β 2. B dziemy te» formuª postaci A traktowa jak formuª typu α oraz wykorzystywa znane nam prawa de Morgana.
α α 1 α 2 A A A 1 A 2 A 1 A 2 (A 1 A 2 ) A 1 A 2 (A 1 A 2 ) A 1 A 2 β β 1 β 2 B 1 B 2 B 1 B 2 (B 1 B 2 ) B 1 B 2 B 1 B 2 B 1 B 2
Opis algorytmu tabel semantycznych Wej±cie: Formuªa A. Wyj±cie: Tabela T dla A, w której ka»da gaª ¹ jest oznaczona jako domkni ta lub otwarta. Tabel buduje si rozpoczynaj c od korzenia zawieraj cego zbiór {A} i dodaj c nowe wiersze przez analiz pewnego li±cia l wedªug reguª (U(l) oznacza zbiór formuª tego li±cia):
1 Je±li zbiór formuª U(l) zawiera tylko literaªy, to sprawdzamy, czy zawiera literaªy komplementarne. Je±li tak, to oznaczamy go (i gaª ¹ przez niego wyznaczon ) jako domkni ty (domkni t ); je±li nie jako otwarty (otwart ). 2 Je±li U(l) nie jest zbiorem literaªów, to wybieramy formuª, która nie jest literaªem. 1 Je±li jest ona typu α, to tworzymy nowy wierzchoªek l b d cy potomkiem l zawieraj cy zbiór U(l ) = (U(l) \ {α}) {α 1, α 2 } 2 Je±li jest ona typu β, to tworzymy dwa nowe wierzchoªki l, l b d ce potomkami l zawieraj ce zbiory U(l ) = (U(l) \ {β}) {β 1 } U(l ) = (U(l) \ {β}) {β 2 }
Obecnie zajmiemy si dowodem caªkowitej poprawno±ci tego algorytmu. Niech T b dzie tabel semantyczn jakiejkolwiek formuªy A o wierzchoªku l. Dla zbioru U(l) symbolem F l oznaczamy koniunkcj wszystkich formuª z tego zbioru. Lemat 1 Niech l b dzie wierzchoªkiem powstaªym z l przez zastosowanie kroku 2.(a). Wtedy F l F l. 2 Niech l, l b d wierzchoªkami powstaªym z l przez zastosowanie kroku 2.(b). Wtedy F l F l F l.
Dowód Mo»emy zaªo»y,»e U(l) = {A 1,..., A n } i wybran w kroku algorytmu formuª jest A 1. 1 A 1 jest typu α, przykªadowo A 1 = (α 1 α 2 ). Wtedy A 1 α 1 α 2 oraz F l = A 1... A n α 1 α 2... A n = F l 2 A 1 jest typu β, przykªadowo A 1 = α 1 α 2. Wtedy A 1 α 1 α 2 oraz F l = A 1... A n ( α 1 α 2 ) A 2... A n ( α 1 A 2... A n ) (α 2 A 2... A n ) F l F l
Bardzo istotnym elementem dowodu poprawno±ci algorytmu jest wykazanie,»e zawsze si on zatrzymuje. W naszym wypadku chodzi o to,»e konstruowane drzewo jest sko«czone. Zanim to wyka»emy zauwa»my,»e li±cie oznakowane zawieraj tylko literaªy. St d wa»ne jest pytanie, kiedy formuªa odpowiadaj ca takiemu li±ciowi ma model. Lemat Zbór U(l) literaªów ma model wtw, gdy nie zawiera pary literaªów komplementarnych. Dowód Je±li U(l) = {A 1,..., A n } i np. A 2 = A 1,to bo 0 A 0. F l = A 1 A 2... A n = A 1 A 1... A n 0
Je±li U(l) nie zawiera pary takich literaªów, to istnieje zbiór zmiennych zdaniowych {z 1,..., z n } taki,»e A i {z i, z i } dla ka»dego i = 1,..., n. Wtedy nast puj ce warto±ciowanie jest modelem F l v(zi) = { 1 Ai = z i 0 A i = z i
Twierdzenie Algorytm tworzenia tabel semantycznych si zatrzymuje. Dowód Niech T b dzie tabel formuªy A, a l jej wierzchoªkiem. Niech b(l) równa si liczbie wyst pie«operatorów,, w formuªach zbioru U(l), a n(l) oznacza ilo± negacji w tym zbiorze. Niech w(l) = 3b(l) + n(l). Wtedy dla potomka l wierzchoªka l w(l) > w(l ). Zaªó»my przykªadowo,»e l powstaª przez zastosowanie algorytmu do formuªy (A 1 A 2 ). Stosuj c prawo de Morgana znika jeden symbol, ale pojawia si dodatkowo negacja, czyli: w(l ) = 3(b(l) 1) + n(l) + 1 = 3b(l) + n(l) 2 < w(l). Pozostaªe przypadki analizuje si podobnie. Je±li l jest korzeniem T, to poniewa» w zbiorach pojawiaj cych si w tabeli s tylko zmienne wyst puj ce w U(l) drzewo to musi by sko«czone.
Przykªad Niech A = (p q) ((q r) (p r)) A (p q) (q r) (p r) p, q (q r) p r q, r p q
Je±li zastanowimy si nad modelami dla A, to z analizy li±ci tej tablicy mamy,»e modelami s takie waro±ciowania v zmiennych p, q, r, które speªniaj jeden z podanych warunków: 1 v(p) = 1, v(q) = 0; 2 v(q) = 1, v(r) = 0; 3 v(p) = 0; 4 v(q) = 1. a oczyw±cie ka»de warto±ciowanie speªnia jeden z nich.
Prze±led¹my jeszcze dziaªanie algorytmu na formule A, czyli chcemy wykaza,»e nie jest ona speªniala (A jest tautologi ). A p q, ((q r) (p r)) p q, q r, (p r)) p q, q r, p, r p, q r, p, r q, q r, p, r q, q, p, r q, r, p, r
Oczyw±cie dwa li±cie (drugi i trzeci od lewej) s domkni te, ale pierwszy nie zostaª zanalizowany poprawnie, gdy» zawiera formuª, która nie jest literaªem! Ale nie ma potrzeby tego robi, gdy» ju» zawiera par formuª komplementarnych.
Wida,»e dziaªanie algorytmu tablic semantycznych mo»na usprawni na kilka sposobów: 1 Mo»na oznacza li± jako domkni ty, gdy zawiera par formuª komplementarnych. 2 Kopiowanie niezmodykowanych formuª nie jest konieczne. Wystarczy przechowywa zbiór wska¹ników do formuª. 3 Stosowanie ró»nych heurystyk daje mniejsze drzewa. Na przykªad, najpierw nale»y stosowa reguªy typu α, a potem typu β, dzi ki czemu unika si powstawania duplikatów formuª.
Twierdzenie Niech T b dzie tabel zako«czon dla formuªy A. Forrmuªa A jest niespeªnialna wtw, gdy ka»dy jej li± jest domkni ty. Wniosek Metoda tabel semantycznych jest procedur decyzyjn rozstrzygaj c prawdziwo± formuª rachunku zda«. Dowód Z tw. o zatrzymywaniu mamy,»e konstrukcja tabeli dla A ko«czy si utworzeniem tabeli sko«czonej. Z poprzedniego wniosku mamy,»e A jest prawdziwa wtw, gdy tabela jest domkni ta.
Dowód poprawno±ci Poka»emy ogólniejsz wªasno± : jesli poddrzewo o korzeniu n jest domkni te, to zbiór formuª U(n) jest niespeªnialny. Indukcja po wysoko±ci h drzewa U(n). Podstawa indukcji. Je±li h = 0, to n jest li±ciem. Wtedy T jest domkni ta, a U(n) zawiera par literaªów komplementarnych. Zatem U(n) jest niespeªnialny. Krok indukcyjny. Je±li h > 0, to do tworzenia potomka u»yto reguªy typu α lub β.
Przypadek 1. U»yto reguªy typu α. U(n) = {A 1 A 2 } U 0, a U(n ) = {A 1, A 2 } U 0. Wysoko± n wynosi h 1 i z zaªo»enia indukcyjnego otrzymujemy,»e U(n ) jest niespeªnialny, gdy» poddrzewo o korzeniu n jest domkni te.we¹my dowolne warto±ciowanie v zbioru U. Mamy jeszcze dwa przypadki: 1 Dla pewnej formuªy A 0 U 0 mamy v(a 0 ) = 0. 2 Dla jednej z formuª A 1, A 2 mamy v(a i ) = 0 Za ka»dym razem otrzymujemy,»e v(a) = 0, dla dobranych A, a z dowolno±i warto±ciowania otrzymujemy,»e U(n) jest niespeªnialny.
Trzeba wykaza te»,»e je±li A jest formuª niespeªnialn, to ka»da tabela dla A jest domkni ta. To jest trudne zadanie. Z tego powodu wyka»emy nieco inne twierdzenie. Mianowicie, wyka»emy, je±li pewna tabela dla formuªy A jest otwarta, to A jest speªnialna. Denicja Mówimy,»e zbiór formuª U jest zbiorem Hintikki wtw, gdy 1 Dla ka»dego atomu p wyst puj cego w pewnej formule z U zachodzi p / U lub p / U. 2 Je±li α U jest typu α, to α 1, α 2 U. 3 Je±li β U jest typu β, to β 1 U lub β 2 U.
Twierdzenie Niech l bedzie otwartym li±ciem w zako«czonej tabeli semantycznej T. Niech U = i U i, po wszystkich i na gaª zi z korzenia do wierzchoªka l. Wtedy U jest zbiorem Hintikki. Dowód Je±li literaª m wyst pi pierwszy raz w U(n), to wyst pi na drodze z U(n) do U(l). Oznacza to,»e wszystkie literaªy z U nale» do U(l). Gaª ¹ ta jest otwarta, wi c nie zawiera pary literaªów komplementarnych, czyli pierwszy warunek zachodzi. Niech α U b dzie typu α, a w pewnym wierzchoªku n u»yto reguªy typu α. Z konstrukcji tabeli wynika,»e oba jej skladniki nale» do U(n ) U, czyli warunek drugi te» jest speªniony. Trzeci przypadek rozwa»amy analogicznie.
Twierdzenie Lemat Hintikki Ka»dy zbiór Hintikki jest speªnialny. N iech {p 1,..., p n } b dzie zbiorem wszystkich formuª atomowych wyst puj cych w formuªach ze zbioru U. Deniujemy warto±ciowanie wzorami: v(p) = 1 p U 0 p U 1 p U i p U
Dowód twierdzenia o peªno±ci. Z przedostatniego twierdzenia wiemy,»e zbiór formuª U wyst pujacych w otwartej gaª zi drzewa T jest zbiorem Hintikki. Z nast pnego, istnieje model U, a A wyst puje w korzeniu T. St d A U i model U jest modelem A. a poniewa»