Logika dla informatyków/Paradygmaty dowodzenia: Różnice pomiędzy wersjami
Nie podano opisu zmian |
Nie podano opisu zmian |
||
Linia 1: | Linia 1: | ||
Sprawdzenie, czy dana formuła rachunku zdań jest tautologi±, polega zwykle na obliczeniu jej warto¶ci dla <math>2^n</math> różnych warto¶ciowań,gdzie <math>n</math> jest liczb± zmiennych zdaniowych tej formuły. Jak dot±d nie s± znane radykalnie szybsze metody. Dla | ==Paradygmaty dowodzenia== | ||
{twierdzenie}{0} | |||
Sprawdzenie, czy dana formuła rachunku zdań jest tautologi±, | |||
polega zwykle na obliczeniu jej warto¶ci dla <math>\displaystyle 2^n</math> różnych warto¶ciowań, | |||
gdzie <math>\displaystyle n</math> jest liczb± zmiennych zdaniowych tej formuły. Jak dot±d nie s± | |||
znane radykalnie szybsze metody. Dla rachunku | |||
predykatów nie istnieje w ogóle żaden algorytm sprawdzania czy | |||
dana formuła jest tautologi± (Twierdzenie [[##entscheidungsproblem|Uzupelnic entscheidungsproblem|]]). | |||
W obu przypadkach istniej± jednak metody ''dowodzenia'' pozwalaj±ce | |||
na wyprowadzanie prawdziwych formuł za pomoc± ustalonych procedur | |||
syntaktycznych. | |||
Każdy system dowodzenia zawiera dwa składniki: | Każdy system dowodzenia zawiera dwa składniki: | ||
*pocz±tkowy zbiór formuł | * pocz±tkowy zbiór formuł (lub wyrażeń zbudowanych z wielu formuł) | ||
*zbiór operacji przekształcaj±cych wyrażenia w wyrażenia ---operacje te s± nazywane {\ | zwanych ''aksjomatami''; | ||
* zbiór operacji przekształcaj±cych wyrażenia w wyrażenia --- | |||
operacje te s± nazywane ''regułami dowodzenia''. | |||
Reguły dowodzenia opisuj± warunki, przy pomocy których można otrzymać | |||
nowe wyrażenie (nazywane ''konkluzj±'') z otrzymanych już wyrażeń | |||
(nazywanych ''przesłankami''). Dowody w systemach formalnych s± | |||
ci±gami wyrażeń, być może posiadaj±cymi dodatkow± strukturę | |||
pozwalaj±c± na lepsz± wizualizację. | |||
W dalszej czę¶ci opiszemy trzy systemy dowodzenia: system typu | |||
hilbertowskiego (od nazwiska Davida Hilberta), system naturalnej dedukcji | |||
oraz rachunek sekwentów. | |||
Ostatnie dwa systemy znajduj± zastosowanie w pewnych działach sztucznej | |||
inteligencji oraz w systemach automatycznego dowodzenia twierdzeń. | |||
===System hilbertowski=== | |||
Poniższy system dowodzenia dotyczy formuł zbudowanych przy użyciu | |||
jedynie spójnika <math>\displaystyle \arr</math>, stałej <math>\displaystyle \bot</math> oraz zmiennych zdaniowych. | |||
Przypomnijmy, że dla | |||
dowolnej formuły <math>\displaystyle \varphi</math>, napis <math>\displaystyle \neg\varphi</math> jest skrótem zapisu | |||
<math>\displaystyle \varphi\arr\bot</math>. | |||
Symbole <math>\displaystyle \varphi,\psi,\vartheta</math> w poniższym systemie oznaczaj± dowolne | |||
formuły. | |||
'''Aksjomaty''' | |||
(A1) <math>\displaystyle \varphi\arr(\psi\arr\varphi)</math><br> | |||
(A2) <math>\displaystyle (\varphi\arr(\psi\arr\vartheta))\arr((\varphi\arr\psi) | |||
\arr(\varphi\arr\vartheta))</math><br> | |||
(A3) <math>\displaystyle \neg\neg\varphi\arr\varphi</math> | |||
'''Reguła dowodzenia'''<br> | |||
<center><math>\displaystyle {\rm (MP)}\hspace{1cm} \frac{\varphi\odstep | |||
\varphi\arr\psi}{\psi}</math></center> | |||
Reguła (MP) jest nazywana ''reguł± odrywania'' lub też | |||
reguł± ''modus ponens''. | |||
''Dowodem'' w powyższym systemie nazywamy taki ci±g formuł, w którym | |||
każda formuła albo jest aksjomatem, albo też została otrzymana z wcze¶niej | |||
występuj±cych formuł w wyniku zastosowania reguły odrywania. Powiemy, | |||
że formuła <math>\displaystyle \varphi</math> ''ma dowód'', lub jest ''twierdzeniem'' | |||
systemu hilbertowskiego, co zapiszemy <math>\displaystyle \vdash_H\varphi</math>, | |||
gdy istnieje dowód zawieraj±cy <math>\displaystyle \varphi</math>. Powyższ± definicję możemy | |||
nieco uogólnić. Niech <math>\displaystyle \Delta</math> będzie dowolnym zbiorem | |||
formuł. Powiemy, że formuła <math>\displaystyle \varphi</math> ma dowód | |||
ze zbioru hipotez <math>\displaystyle \Delta</math> (notacja <math>\displaystyle \Delta\vdash_H\varphi</math>), | |||
gdy <math>\displaystyle \varphi</math> jest twierdzeniem systemu, w którym zbiór aksjomatów został | |||
poszerzony o formuły ze zbioru <math>\displaystyle \Delta</math>. | |||
{{przyklad||| | |||
Niech <math>\displaystyle p</math> będzie zmienn± zdaniow±. Pokażemy, że formuła <math>\displaystyle p\arr p</math> jest | |||
twierdzeniem systemu hilbertowskiego. Poniżej podajemy dowód dla tej formuły. | |||
W nawiasach podajemy nazwę aksjomatu, je¶li dana formuła jest instancj± tego | |||
aksjomatu, lub też numery formuł z wcze¶niejszych kroków dowodu, do których | |||
jest stosowana reguła odrywania. | |||
# <math>\displaystyle (p\arr((p\arr p)\arr p))\arr((p\arr(p\arr p))\arr(p\arr p))</math> | |||
(A2) | |||
# <math>\displaystyle p\arr((p\arr p)\arr p)</math> (A1) | |||
# <math>\displaystyle (p\arr(p\arr p))\arr(p\arr p)</math> (1,2) | |||
# <math>\displaystyle p\arr(p\arr p)</math> (A1) | |||
# <math>\displaystyle p\arr p</math> (3,4) | |||
}} | |||
Zauważmy, że w powyższym przykładzie możemy wszędzie zast±pić | |||
zmienn± <math>\displaystyle p</math> przez dowoln± formułę <math>\displaystyle \varphi</math> dostaj±c dowód formuły | |||
<math>\displaystyle \varphi\arr\varphi</math>. | |||
Następuj±ce twierdzenie jest bardzo użyteczne, gdy trzeba uzasadnić, | |||
że jaka¶ formuła jest twierdzeniem. | |||
{{twierdzenie|o dedukcji|| | |||
Dla dowolnego zbioru formuł <math>\displaystyle \Delta</math> oraz dowolnych formuł <math>\displaystyle \varphi,\psi</math>, | |||
je¶li <math>\displaystyle \Delta\cup\{\varphi\}\vdash_H\psi</math>, | |||
to <math>\displaystyle \Delta\vdash_H\varphi\arr\psi</math>. | |||
}} | |||
{{dowod||| | |||
Dowód jest indukcyjny ze względu na liczbę kroków w dowodzie formuły | |||
<math>\displaystyle \psi</math> ze zbioru hipotez <math>\displaystyle \Delta\cup\{\varphi\}</math>. Przypu¶ćmy najpierw, | |||
że dowód ten | |||
składa się tylko z jednego kroku. Je¶li <math>\displaystyle \psi=\varphi</math>, to | |||
stosuj±c wyprowadzenie z Przykładu [[##pr-zda-1a|Uzupelnic pr-zda-1a|]] dostajemy dowód | |||
formuły <math>\displaystyle \varphi\arr\varphi</math>. Możemy oczywi¶cie przyj±ć, że formuła ta | |||
jest wyprowadzona ze zbioru hipotez <math>\displaystyle \Delta</math>. Druga możliwo¶ć jest taka, że | |||
<math>\displaystyle \psi\in\Delta</math> lub też, że <math>\displaystyle \psi</math> jest aksjomatem. | |||
W każdym z tych | |||
przypadków mamy <math>\displaystyle \Delta\vdash_H\psi</math>. Wówczas stosuj±c regułę | |||
odrywania do <math>\displaystyle \psi</math> oraz aksjomatu <math>\displaystyle \psi\arr(\varphi\arr\psi)</math> | |||
dostajemy formułę <math>\displaystyle \varphi\arr\psi</math>. | |||
Założmy teraz, że ostatnim krokiem w wyprowadzeniu formuły <math>\displaystyle \psi</math> | |||
jest zastosowanie reguły (MP) do formuł <math>\displaystyle \vartheta\arr\psi</math> oraz | |||
<math>\displaystyle \vartheta</math>, dla pewnej formuły <math>\displaystyle \vartheta</math>. | |||
Z założenia indukcyjnego mamy <math>\displaystyle \Delta\vdash_H\varphi\arr | |||
(\vartheta\arr\psi)</math> oraz <math>\displaystyle \Delta\vdash_H\varphi\arr\vartheta</math>. | |||
Stosuj±c regułę odrywania do <math>\displaystyle \varphi\arr | |||
(\vartheta\arr\psi)</math> oraz do aksjomatu (A2): | |||
<math>\displaystyle (\varphi\arr(\vartheta\arr\psi))\arr | |||
((\varphi\arr\vartheta)\arr(\varphi\arr\psi))</math> dostajemy formułę | |||
<math>\displaystyle (\varphi\arr\vartheta)\arr(\varphi\arr\psi)</math>. Ponownie stosuj±c regułę | |||
odrywania | |||
do tej formuły oraz do <math>\displaystyle \varphi\arr\vartheta</math> dostajemy ż±dan± formułę | |||
<math>\displaystyle \varphi\arr\psi</math>. To kończy dowód twierdzenia o dedukcji. | |||
}} | |||
{{twierdzenie|o poprawno¶ci|| | |||
Je¶li <math>\displaystyle \Delta\vdash_H\varphi</math>, to <math>\displaystyle \Delta\models\varphi</math>. W szczególno¶ci, | |||
je¶li <math>\displaystyle \vdash_H\varphi</math>, to <math>\displaystyle \varphi</math> jest tautologi±. | |||
}} | |||
{{dowod||| | |||
Dowód jest indukcyjny ze względu na liczbę kroków w wyprowadzeniu | |||
formuły <math>\displaystyle \varphi</math> w systemie hilbertowskim ze zbioru hipotez | |||
<math>\displaystyle \Delta</math>. Je¶li dowód ten składa się tylko z jednego kroku to albo | |||
<math>\displaystyle \varphi\in\Delta</math> albo <math>\displaystyle \varphi</math> jest aksjomatem. W obu przypadkach | |||
oczywi¶cie zachodzi <math>\displaystyle \Delta\models\varphi</math>. | |||
Załóżmy teraz, że <math>\displaystyle \varphi</math> jest otrzymana przez zastosowanie reguły odrywania | |||
do formuł <math>\displaystyle \psi\arr\varphi</math> oraz <math>\displaystyle \psi</math>. Z założenia | |||
indukcyjnego mamy | |||
<center><math>\displaystyle | |||
\Delta\models\psi\arr\varphi </math> oraz <math>\displaystyle \Delta\models\psi. | |||
</math></center> | |||
Niech <math>\displaystyle \varrho</math> będzie dowolnym warto¶ciowaniem spełniaj±cym wszystkie | |||
formuły z <math>\displaystyle \Delta</math>. Na mocy ([[##eq-zad-1|Uzupelnic eq-zad-1|]]), warto¶ciowanie | |||
<math>\displaystyle \varrho</math> spełnia | |||
<math>\displaystyle \psi\arr\varphi</math> oraz spełnia <math>\displaystyle \psi</math>. Wynika st±d, że <math>\displaystyle \varrho</math> spełnia | |||
<math>\displaystyle \varphi</math>. Tym samym udowodnili¶my, że <math>\displaystyle \Delta\models\varphi</math>. To | |||
kończy dowód. | |||
}} | |||
{{lemat||| | |||
Dla dowolnych formuł <math>\displaystyle \varphi,\psi</math> zbudowanych przy użyciu <math>\displaystyle \arr</math> | |||
oraz <math>\displaystyle \bot</math>, następuj±ce formuły s± twierdzeniami systemu hilbertowskiego. | |||
# <math>\displaystyle \varphi \arr(\neg\psi\arr\neg(\varphi\arr\psi))</math>; | |||
# <math>\displaystyle \bot\arr\varphi</math>; | |||
# <math>\displaystyle (\varphi\arr\psi)\arr((\neg\varphi\arr\psi)\arr\psi)</math>; | |||
}} | |||
{{dowod||| | |||
(1) | |||
Niech <math>\displaystyle \Delta=\{\varphi,\psi\arr\bot,\varphi\arr\psi\}</math>. Stosuj±c regułę | |||
odrywania do formuł <math>\displaystyle \varphi</math> oraz <math>\displaystyle \varphi\arr\psi</math> dostajemy <math>\displaystyle \psi</math>. | |||
Przez ponowne zastosowanie (MP) do tej formuły oraz do <math>\displaystyle \psi\arr\bot</math> | |||
otrzymujemy | |||
wyprowadzenie <math>\displaystyle \bot</math>. Tym samym pokazali¶my, że <math>\displaystyle \Delta\vdash_H\bot</math>. Stosuj±c | |||
teraz trzy razy twierdzenie o dedukcji dostajemy | |||
<center><math>\displaystyle \vdash_H\varphi\arr((\psi\arr\bot)\arr((\varphi\arr\psi)\arr\bot)),</math></center> | |||
czyli | |||
<center><math>\displaystyle \vdash_H\varphi \arr(\neg\psi\arr\neg(\varphi\arr\psi)).</math></center> | |||
\ | (2) | ||
Ponieważ <math>\displaystyle \{\bot,\neg\varphi\}\vdash_H\bot</math>, więc z twierdzenia o dedukcji | |||
wynika <math>\displaystyle \bot\vdash_H\neg\neg\varphi</math>. | |||
Stosuj±c teraz (MP) do tej formuły oraz do aksjomatu | |||
(A3) w postaci <math>\displaystyle \neg\neg\varphi\arr\varphi</math> otrzymujemy <math>\displaystyle \bot\vdash_H\varphi</math>. | |||
Ponowne zastosowanie twierdzenia o dedukcji daje nam <math>\displaystyle \vdash_H\bot\arr\varphi</math>. | |||
(3) | |||
Niech <math>\displaystyle \Delta=\{\varphi\arr\psi,\neg\varphi\arr\psi\}</math>. Zaczynamy od zbioru | |||
hipotez <math>\displaystyle \Delta\cup\{\varphi,\neg\psi\}</math>. Stosuj±c (MP) do formuł <math>\displaystyle \varphi</math> | |||
oraz <math>\displaystyle \varphi\arr\psi</math> dostajemy <math>\displaystyle \psi</math>. Ponowne zastosowanie (MP) do tej | |||
formuły oraz do <math>\displaystyle \neg\psi</math> daje nam <math>\displaystyle \bot</math>. Używaj±c teraz twierdzenia | |||
o dedukcji do formuły <math>\displaystyle \bot</math> otrzymujemy | |||
<center><math>\displaystyle \Delta\cup\{\neg\psi\}\vdash_H\neg\varphi. | |||
</math></center> | |||
</math> | Ponieważ mamy <math>\displaystyle \Delta\cup\{\neg\psi\}\vdash_H\neg\varphi\arr\psi</math>, to stosuj±c | ||
(MP) otrzymujemy <math>\displaystyle \Delta\cup\{\neg\psi\}\vdash_H\psi</math>. Jeszcze raz | |||
używamy (MP) aby z <math>\displaystyle \neg\psi</math> i <math>\displaystyle \psi</math> otrzymać <math>\displaystyle \bot</math> i mamy | |||
<center><math>\displaystyle \Delta\cup\{\neg\psi\}\vdash_H\bot. | |||
</math></center> | |||
Na mocy twierdzenia o dedukcji <math>\displaystyle \Delta\vdash_H\neg\neg\psi</math>. | |||
Stosuj±c (MP) do formuły <math>\displaystyle \neg\neg\psi</math> | |||
oraz do aksjomatu <math>\displaystyle \neg\neg\psi\arr\psi</math> | |||
otrzymujemy <math>\displaystyle \Delta\vdash_H\psi</math>. Dwukrotne zastosowanie twierdzenia | |||
o dedukcji daje nam | |||
<math>\displaystyle \vdash_H(\varphi\arr\psi)\arr((\neg\varphi\arr\psi)\arr\psi)</math>. | |||
To kończy dowód lematu. | |||
}} | |||
Powyższy system można łatwo rozszerzyć do systemu dla formuł | |||
opartych o pozostałe spójniki logiczne. Wystarczy w tym celu dodać | |||
aksjomaty wyrażaj±ce równoważno¶ci definiuj±ce te spójniki. | |||
(B1) <math>\displaystyle \varphi\wedge \psi\arr\neg(\varphi\arr\neg\psi)</math><br> | |||
(B2) <math>\displaystyle \neg(\varphi\arr\neg\psi)\arr\varphi\wedge \psi</math><br> | |||
(B3) <math>\displaystyle \varphi\vee\psi\arr(\neg\varphi\arr\psi)</math><br> | |||
(B4) <math>\displaystyle (\neg\varphi\arr\psi)\arr\varphi\vee\psi</math> | |||
Tak otrzymany system oznaczymy przez <math>\displaystyle \vdash_{H^+}</math>. | |||
{{twierdzenie|o poprawno¶ci dla <math>\displaystyle \vdash_{H^+}</math>|| | |||
Dla dowolnego zbioru formuł <math>\displaystyle \Delta</math> i dla dowolnej formuły <math>\displaystyle \varphi</math> | |||
w języku z <math>\displaystyle \vee,\wedge,\arr,\bot</math>, | |||
je¶li <math>\displaystyle \se_{H^+}\varphi</math> to <math>\displaystyle \Delta\models\varphi</math>. | |||
}} | }} | ||
{{dowod||| | |||
Wystarczy sprawdzić, że aksjomaty (B1)--(B4) s± tautologiami. | |||
Konkluzja wynika | |||
z Twierdzenia [[##tw-zda-2|Uzupelnic tw-zda-2|]] o poprawno¶ci dla <math>\displaystyle \vdash_H</math>. | |||
}} | |||
{{lemat||| | |||
Dla dowolnej formuły <math>\displaystyle \varphi</math> istnieje formuła <math>\displaystyle \tilde{\varphi}</math> | |||
zbudowana przy użyciu jedynie <math>\displaystyle \arr</math> oraz <math>\displaystyle \bot</math>, taka że | |||
<math>\displaystyle \vdash_{H^+}\varphi\arr\tilde{\varphi}</math>{.1cm} oraz {.1cm} | |||
<math>\displaystyle \vdash_{H^+}\tilde{\varphi}\arr\varphi</math>. | |||
}} | |||
{{dowod||| | |||
W danej formule <math>\displaystyle \varphi</math>, zast±pmy każd± podformułę postaci | |||
<math>\displaystyle \psi\wedge\vartheta</math> formuł± <math>\displaystyle \neg(\psi\arr\neg\vartheta)</math> oraz | |||
każd± podformułę postaci <math>\displaystyle \psi\vee\vartheta</math> formuł± | |||
<math>\displaystyle \neg\psi\arr\vartheta</math>. Aksjomaty (B1)--(B4) mówi±, że zast±pione | |||
formuły s± równoważne. Tak więc łatwo dostajemy | |||
<math>\displaystyle \vdash_{H^+}\varphi\arr\tilde{\varphi}</math> oraz | |||
<math>\displaystyle \vdash_{H^+}\tilde{\varphi}\arr\varphi</math>. Szczegóły dowodu pozostawimy | |||
Czytelnikowi. | |||
}} | |||
===System naturalnej dedukcji=== | |||
System naturalnej dedukcji (wprowadzony przez S. Ja¶kowskiego | |||
i G. Gentzena) operuje wyrażeniami zwanymi ''sekwentami''. | |||
S± to wyrażenia postaci <math>\displaystyle \Delta\vdash\varphi</math>, gdzie <math>\displaystyle \Delta</math> jest | |||
pewnym skończonym | |||
zbiorem formuł, a <math>\displaystyle \varphi</math> jest formuł±. W odróżnieniu od systemu | |||
hilbertowskiego, w naturalnej dedukcji istotne s± reguły dowodzenia, | |||
a aksjomat jest bardzo prosty. | |||
Charakterystyczn± cech± naturalnej dedukcji jest to, że reguły dowodzenia | |||
(za wyj±tkiem reguły (PS) "przez sprzeczno¶ć") s± podzielone na grupy, | |||
po jednej dla każdego spójnika. W ramach jednej takiej grupy mamy dwa | |||
rodzaje reguł. ''Reguły wprowadzania'' mówi± o tym w jakiej | |||
sytuacji można wprowadzić dany spójnik na prawo od znaku <math>\displaystyle \vdash</math> | |||
(tj. wywnioskować formułę danego kształtu). | |||
''Reguły eliminacji'' mówi± o tym w jakiej sytuacji można | |||
ten spójnik wyeliminować, tzn. jak można użyć formuły zbudowanej z jego | |||
pomoc± do wyprowadzenia innej formuły. | |||
Regułę dowodzenia "przez sprzeczno¶ć" można traktować jako "siln±" regułę | |||
eliminacji <math>\displaystyle \bot</math>. Pamiętajmy, że <math>\displaystyle \neg\varphi</math> oznacza formułę | |||
<math>\displaystyle \varphi\arr\bot</math>. | |||
Poniżej będziemy stosować następuj±c± konwencję: | |||
Napis <math>\displaystyle \Delta,\varphi_1,\ldots,\varphi_n</math> oznacza zbiór | |||
<math>\displaystyle \Delta\cup\{\varphi_1,\ldots,\varphi_n\}</math>, | |||
przy czym nie zakładamy tu, że <math>\displaystyle \varphi_i\not\in\Delta</math>. | |||
'''Aksjomat''' | |||
(A0) <math>\displaystyle \Delta,\varphi\vdash\varphi</math> | |||
'''Reguły dowodzenia''' | |||
<center><math>\displaystyle (\arr </math> -intro <math>\displaystyle ) \hspace{.2cm} | |||
\frac{\Delta,\varphi\vdash\psi}{\Delta\vdash\varphi\arr\psi} | |||
\hspace{1cm} (\arr </math> -elim <math>\displaystyle ) \hspace{.2cm} | |||
\frac{\Delta\vdash\varphi\arr\psi\odstep | |||
\Delta\vdash\varphi}{\Delta\vdash\psi}</math></center> | |||
<center><math>\displaystyle (\wedge </math> -intro <math>\displaystyle )\hspace{.2cm} \frac{\Delta\vdash\varphi\odstep | |||
\Delta\vdash\psi}{\Delta\vdash\varphi\wedge\psi} \hspace{1cm} | |||
(\wedge </math> -elim <math>\displaystyle ) | |||
\hspace{.2cm}\frac{\Delta\vdash\varphi\wedge\psi}{\Delta\vdash\varphi} | |||
\hspace{1cm} | |||
(\wedge </math> -elim <math>\displaystyle ) | |||
\hspace{.2cm}\frac{\Delta\vdash\varphi\wedge\psi}{\Delta\vdash\psi}</math></center> | |||
{{ | <center><math>\displaystyle (\vee </math> -intro <math>\displaystyle )\hspace{.2cm} | ||
\frac{\Delta\vdash\varphi}{\Delta\vdash\varphi\vee\psi} \hspace{1cm} | |||
(\vee </math> -intro <math>\displaystyle )\hspace{.2cm} | |||
\frac{\Delta\vdash\psi}{\Delta\vdash\varphi\vee\psi} </math></center> | |||
<center><math>\displaystyle (\vee </math> -elim <math>\displaystyle )\hspace{.2cm} \frac{\Delta\vdash\varphi\vee\psi\odstep | |||
\Delta,\varphi\vdash\vartheta\odstep | |||
\Delta,\psi\vdash\vartheta}{\Delta\vdash\vartheta}</math></center> | |||
<center><math>\displaystyle ( </math> PS <math>\displaystyle )\hspace{.2cm} | |||
\frac{\Delta,\neg\varphi\vdash\bot}{\Delta\vdash\varphi}</math></center> | |||
Zauważmy, że szczególnym przypadkiem reguły (<math>\displaystyle \arr</math>-intro) jest | |||
następuj±ca reguła, można j± traktować jak regułę wprowadzenia negacji. | |||
<center><math>\displaystyle \frac{\Delta,\varphi\vdash\bot} | |||
{\Delta\vdash\neg\varphi}</math></center> | |||
Zauważmy też, że szczególnym przypadkiem reguły (<math>\displaystyle \arr</math>-elim) jest | |||
następuj±ca reguła, można j± traktować jak regułę eliminacji negacji. | |||
<center><math>\displaystyle \frac{\Delta\vdash\neg\varphi\quad | |||
\Delta\vdash\varphi}{\Delta\vdash\bot}</math></center> | |||
{{ | O ile dowody w systemi hilbertowskim s± tradycyjnie definiowane jako ci±gi, | ||
a więc struktury liniowe, to w systemie naturalnej dedukcji dowody s± | |||
drzewami. Pozwala to znacznie lepiej wizualizować zależno¶ci pomiędzy | |||
przesłankami i konkluzj± stosowanych reguł. ''Dowodem'' sekwentu | |||
<math>\displaystyle \Delta\vdash\varphi</math> w systemie naturalnej dedukcji nazwiemy drzewo | |||
etykietowane sekwentami tak, że korzeń ma etykietę | |||
<math>\displaystyle \Delta\vdash\varphi</math>, li¶cie s± etykietowane wyst±pieniami aksjomatu | |||
oraz każdy wewnętrzny wierzchołek jest etykietowany sekwentem | |||
otrzymanym z etykiet potomków tego wierzchołka przy zastosowaniu | |||
jednej z reguł. Piszemy <math>\displaystyle \Delta\vdash_{N}\varphi</math>, gdy sekwent | |||
<math>\displaystyle \Delta\vdash\varphi</math> ma dowód w systemie | |||
naturalnej dedukcji. Gdy <math>\displaystyle \Delta=\emptyset</math>, to mówimy też, | |||
że <math>\displaystyle \varphi</math> jest ''twierdzeniem'' systemu naturalnej dedukcji | |||
i zapisujemy to przez <math>\displaystyle \vdash_N\varphi</math>. | |||
Je¶li <math>\displaystyle \Delta</math> jest zbiorem nieskończonym, to | |||
<math>\displaystyle \Delta\vdash_{N}\varphi</math> oznacza, że istnieje dowód sekwentu | |||
<math>\displaystyle \Delta_0\vdash\varphi</math>, dla pewnego skończonego <math>\displaystyle \Delta_0 | |||
\subseteq\Delta</math>. | |||
Poniżej podajemy kilka przykładów dowodów w systemie naturalnej | |||
dedukcji. | |||
{{przyklad||| | |||
* Pokażemy <math>\displaystyle \vdash_{N}p\arr p</math>. | |||
<center><math>\displaystyle \arintro{p\vdash p}{\vdash p\arr p} | |||
</math></center> | |||
* Pokażemy <math>\displaystyle \vdash_{N} p\arr(q\arr p)</math>. | |||
<center><math>\displaystyle \arintro{\arintro{p,q\vdash p}{p\vdash q\arr p}}{\vdash p\arr (q\arr p)} | |||
</math></center> | |||
* Pokażemy <math>\displaystyle \vdash_{N}\neg\neg p\arr p</math>. | |||
<center><math>\displaystyle \arintro{\ps{\arelim{\neg\neg p,\neg p\vdash\neg\neg p} | |||
{\neg\neg p,\neg p\vdash\neg p}{\neg\neg p,\neg p\vdash p}} | |||
{\neg\neg p\vdash p}}{\vdash\neg\neg p\arr p} | |||
</math></center> | |||
}} | |||
{{twierdzenie||| | |||
Dla dowolnego sekwentu <math>\displaystyle \Delta\vdash\varphi</math> mamy następuj±c± | |||
równoważno¶ć: | |||
<center><math>\displaystyle \Delta\vdash_{N}\varphi\hspace{.2cm} </math> , gdy <math>\displaystyle \hspace{.2cm} | |||
\Delta\vdash_{H^+}\varphi.</math></center> | |||
}} | |||
{{ | Aby pokazać, że każdy dowód w <math>\displaystyle \vdash_{N}</math> daje się przerobić | ||
na dowód w <math>\displaystyle \vdash_{H^+}</math> wystarczy sprawdzić, że każda z reguł | |||
systemu naturalnej dedukcji jest ''dopuszczalna'' w <math>\displaystyle H^+</math>. | |||
Tzn. wystarczy sprawdzić, że je¶li mamy dowody przesłanek w <math>\displaystyle \vdash_{H^+}</math>, | |||
to możemy udowodnić konkluzję. Zauważmy, że | |||
wyprowadzalno¶ć reguły(<math>\displaystyle \arr</math>-intro) jest konsekwencj± twierdzenia | |||
o dedukcji, natomiast reguła (<math>\displaystyle \arr</math>-elim) jest reguł± (MP). | |||
Przykładowo pokażemy wyprowadzenie (<math>\displaystyle \vee</math>-elim) oraz (PS) w <math>\displaystyle H^+</math>, | |||
pozostawiaj±c Czytelnikowi wyprowadzenie pozostałych reguł. | |||
\ | Załóżmy, że mamy w <math>\displaystyle H^+</math> dowody następuj±cych sekwentów: | ||
<math>\displaystyle \Delta\vdash\varphi\vee\psi</math>, {.1cm} | |||
<math>\displaystyle \Delta,\varphi\vdash\vartheta</math> {.1cm}oraz {.1cm} | |||
<math>\displaystyle \Delta,\psi\vdash\vartheta</math>. Wówczas, | |||
stosuj±c aksjomat (B2) i regułę (MP) mamy | |||
<math>\displaystyle \Delta\vdash_{H^+}\neg\varphi\arr\psi</math>. | |||
Zatem <math>\displaystyle \Delta,\neg\varphi\vdash_{H^+}\psi</math> i ponieważ | |||
<math>\displaystyle \Delta\vdash_{H^+}\psi\arr\vartheta</math> to również | |||
<math>\displaystyle \Delta,\neg\varphi\vdash_{H^+}\psi\arr\vartheta</math>. St±d | |||
<math>\displaystyle \Delta,\neg\varphi\vdash_{H^+}\vartheta</math>. Stosuj±c twierdzenie o dedukcji | |||
dostajemy <math>\displaystyle \Delta\vdash_{H^+}\neg\varphi\arr\vartheta</math>. Skoro mamy również | |||
<math>\displaystyle \delta\vdash_{H^+}\varphi\arr\vartheta</math>, to na mocy | |||
Lematu [[##le-zda-1|Uzupelnic le-zda-1|]](3) otrzymujemy <math>\displaystyle \Delta\vdash_{H^+}\vartheta</math>. | |||
Dla wyprowadzenia (PS) załóżmy, że | |||
<math>\displaystyle \Delta,\neg\varphi\vdash_{H^+}\bot</math>. Z twierdzenia o dedukcji | |||
dostajemy <math>\displaystyle \Delta\vdash_{H^+}\neg\neg\varphi</math>. Tak więc z | |||
(A3) i (MP) dostajemy <math>\displaystyle \Delta\vdash_{H^+}\varphi</math>. | |||
Dla pokazania implikacji odwrotnej wystarczy pokazać, że wszystkie | |||
aksjomaty systemu <math>\displaystyle H^+</math> s± twierdzeniami systemu naturalnej dedukcji. | |||
Wyprowadzenia (A1) i | |||
(A3) w ND zostały podane w Przykładzie [[##pr-zda-2|Uzupelnic pr-zda-2|]]. Przykładowo pokażemy | |||
wyprowadzenia | |||
(A2) i (B1). Zaczniemy od wyprowadzenia (A2). Niech | |||
<math>\displaystyle \Delta=\{\varphi\arr(\psi\arr\vartheta),\ \varphi\arr\psi,\ \varphi\}</math>. | |||
Mamy następuj±cy dowód: | |||
<center><math>\displaystyle \arelim{\arelim{\se\varphi\arr(\psi\arr\vartheta)}{\se\varphi} | |||
{\se\psi\arr\vartheta}} | |||
{\arelim{\se\varphi\arr\psi}{\se\varphi}{\se\psi}}{\se\vartheta} | |||
</math></center> | |||
Stosuj±c trzy razy (<math>\displaystyle \arr </math> -intro ) do sekwentu <math>\displaystyle \se\vartheta</math> | |||
dostajemy wyprowadzenie aksjomatu (A2). | |||
Następnie pokażemy dowód (B1) w ND. Zaczniemy od | |||
wyprowadzenia <math>\displaystyle \neg(\varphi\arr\neg\psi)\vdash\varphi</math>, gdzie | |||
<math>\displaystyle \Delta=\{\neg(\varphi\arr\neg\psi), \neg\varphi\}</math>: | |||
{{ | <center><math>\displaystyle \ps{\arelim{\arintro{\arintro{\arelim{\Delta,\varphi,\psi\vdash\neg\varphi} | ||
{\Delta,\varphi,\psi\vdash\varphi}{\Delta,\varphi,\psi\vdash\bot}} | |||
{\Delta,\varphi\vdash\neg\psi}}{\se\varphi\arr\neg\psi}} | |||
{\se\neg(\varphi\arr\neg\psi)}{\se\bot}} | |||
{\neg(\varphi\arr\neg\psi)\vdash\varphi} | |||
</math></center> | |||
Następnie wyprowadzimy sekwent <math>\displaystyle \neg(\varphi\arr\neg\psi)\vdash\psi</math>. Niech | |||
<math>\displaystyle \Delta=\{\neg(\varphi\arr\neg\psi), \neg\psi\}</math> | |||
<center><math>\displaystyle \ps{\arelim{\arintro{\Delta,\varphi\vdash\neg\psi}{\se\varphi\arr\neg\psi}} | |||
{\se\neg(\varphi\arr\neg\psi)}{\se\bot}}{\neg(\varphi\arr\neg\psi)\vdash\psi} | |||
</math></center> | |||
Maj±c wyprowadzone sekwenty <math>\displaystyle \neg(\varphi\arr\neg\psi)\vdash\varphi</math> | |||
oraz <math>\displaystyle \neg(\varphi\arr\neg\psi)\vdash\psi</math> możemy zakończyć dowód (B1). | |||
{{ | <center><math>\displaystyle \arintro{\wedgeintro{\neg(\varphi\arr\neg\psi)\vdash\varphi} | ||
{\neg(\varphi\arr\neg\psi)\vdash\psi} | |||
{\neg(\varphi\arr\neg\psi)\vdash\varphi\wedge\psi}} | |||
{\vdash\neg(\varphi\arr\neg\psi)\arr(\varphi\wedge\psi)} | |||
</math></center> | |||
===Rachunek sekwentów=== | |||
Dla przedstawienia rachunku sekwentów rozszerzymy nieco pojęcie | |||
sekwentu. Przez ''sekwent'' będziemy teraz rozumieć napis | |||
<math>\displaystyle \Delta\vdash\Gamma</math>, gdzie <math>\displaystyle \Delta</math> oraz <math>\displaystyle \Gamma</math> s± skończonymi | |||
zbiorami formuł. Intuicyjnie, wyprowadzalno¶ć sekwentu | |||
<math>\displaystyle \Delta\vdash\Gamma</math> w rachunku sekwentów będzie oznaczać, że | |||
alternatywa formuł z <math>\displaystyle \Gamma</math> wynika z hipotez <math>\displaystyle \Delta</math>. | |||
Podobnie jak w poprzedniej czę¶ci, rozważamy formuły, | |||
zbudowane w oparciu o spójniki <math>\displaystyle \arr,\vee,\wedge</math> oraz stał± | |||
zdaniow± <math>\displaystyle \bot</math>. Negację <math>\displaystyle \neg</math> traktujemy jako spójnik | |||
zdefiniowany przez <math>\displaystyle \arr</math> i <math>\displaystyle \bot</math>. | |||
Charakterystyczn± cech± rachunku sekwentów jest specyficzna postać reguł. | |||
Reguły w tym systemie naturalnie dziel± się na dwie grupy: jedna grupa reguł | |||
opisuje sytuacje kiedy możemy wprowadzić dany spójnik na lewo od znaku | |||
<math>\displaystyle \vdash</math>, a druga grupa jest odpowiedzialna za wprowadzanie spójnika na | |||
prawo od <math>\displaystyle \vdash</math>. Dla każdego spójnika mamy odpowiadaj±c± parę reguł. | |||
Aksjomat (A<math>\displaystyle \bot</math>) można traktować jako regułę (bez | |||
przesłanek) wprowadzenia <math>\displaystyle \bot</math> z lewej strony znaku <math>\displaystyle \vdash</math>. | |||
Przypomnijmy, że napis <math>\displaystyle \Delta,\varphi_1,\ldots,\varphi_n</math> | |||
oznacza zbiór <math>\displaystyle \Delta\cup\{\varphi_1,\ldots,\varphi_n\}</math>. | |||
'''Aksjomaty''' | |||
(A00) <math>\displaystyle \Delta,\varphi\vdash\Gamma,\varphi</math> | |||
(A<math>\displaystyle \bot</math>) <math>\displaystyle \Delta,\bot\vdash\Gamma</math> | |||
'''Reguły dowodzenia'''<br> | |||
\ | <center><math>\displaystyle (\arr </math> -lewa <math>\displaystyle )\hspace{.2cm} \frac{\Delta\vdash\Gamma,\varphi\odstep | ||
\Delta,\psi\vdash\Gamma}{\Delta,\varphi\arr\psi\vdash\Gamma} | |||
\hspace{1cm}(\arr </math> -prawa <math>\displaystyle )\hspace{.2cm} | |||
\frac{\Delta,\varphi\vdash\Gamma,\psi}{\Delta\vdash\Gamma, | |||
\varphi\arr\psi}</math></center> | |||
\ | <center><math>\displaystyle (\wedge </math> -lewa <math>\displaystyle )\hspace{.2cm} | ||
\frac{\Delta,\varphi,\psi\vdash\Gamma}{\Delta,\varphi\wedge\psi\vdash\Gamma} | |||
\hspace{1cm} (\wedge </math> -prawa <math>\displaystyle )\hspace{.2cm} | |||
\frac{\Delta\vdash\Gamma, \varphi\odstep | |||
\Delta\vdash\Gamma,\psi}{\Delta\vdash \Gamma,\varphi\wedge\psi}</math></center> | |||
< | <center><math>\displaystyle (\vee </math> -lewa <math>\displaystyle )\hspace{.2cm} \frac{\Delta, | ||
\varphi\vdash\Gamma\odstep | |||
\Delta,\psi\vdash\Gamma}{\Delta, \varphi\vee\psi \vdash\Gamma} | |||
\hspace{1cm} (\vee </math> -prawa <math>\displaystyle )\hspace{.2cm} | |||
\frac{\Delta\vdash\Gamma, \varphi, \psi}{\Delta\vdash\Gamma, | |||
\varphi\vee\psi}</math></center> | |||
''Dowodem'' sekwentu <math>\displaystyle \Delta\vdash\Gamma</math>, tak jak poprzednio, | |||
nazywamy drzewo etykietowane sekwentami tak, że korzeń jest | |||
etykietowany przez <math>\displaystyle \Delta\vdash\Gamma</math>, li¶cie s± etykietowane | |||
aksjomatami oraz wierzchołki wewnętrzne | |||
s± etykietowane sekwentami otrzymanymi poprawnie przez zastosowanie | |||
reguł dowodzenia. Je¶li istnieje dowód sekwentu | |||
<math>\displaystyle \Delta\vdash\Gamma</math> w rachunku sekwentów to zapisujemy to tak: | |||
<math>\displaystyle \Delta\vdash_G\Gamma</math>. (Litera G pochodzi od nazwiska twórcy tego | |||
systemu, G. Gentzena.) Piszemy też <math>\displaystyle \Delta\vdash_{G}\varphi</math>, gdy <math>\displaystyle \Delta</math> | |||
jest nieskończony, ale <math>\displaystyle \Delta\vdash_G\varphi</math> | |||
dla pewnego skończonego <math>\displaystyle \Delta_0 \subseteq\Delta</math>. | |||
Zauważmy, że je¶li mamy sekwent <math>\displaystyle \Delta\vdash\Gamma,\varphi</math> to | |||
stosuj±c aksjomat (A<math>\displaystyle \bot</math>), a następnie (<math>\displaystyle \arr</math>-lewa) dostajemy | |||
sekwent <math>\displaystyle \Delta,\neg\varphi\vdash\Gamma</math>. Zatem natępuj±ca reguła | |||
jest ''dopuszczalna'' w systemie <math>\displaystyle \vdash_G</math> (tj. je¶li dodamy | |||
j± do systemu, to zbiór wyprowadzalnych sekwentów nie ulegnie zmianie): | |||
\ | <center><math>\displaystyle (\neg </math> -lewa <math>\displaystyle )\hspace{.2cm} | ||
\frac{\Delta\vdash\Gamma,\varphi}{\Delta, \neg\varphi\vdash\Gamma}</math></center> | |||
< | Ponadto zauważmy, że je¶li mamy dowód sekwentu | ||
<math>\displaystyle \Delta\vdash\Gamma</math>, to dla każdej formuły <math>\displaystyle \varphi</math> możemy j± | |||
dodać do prawej strony każdego sekwentu w tym dowodzie i otrzymamy | |||
dowód sekwentu <math>\displaystyle \Delta\vdash\Gamma,\varphi</math>. | |||
Łatwy dowód indukcyjny | |||
pozostawiamy Czytelnikowi (Ćwiczenie [[##weakening|Uzupelnic weakening|]]). W szczególno¶ci, | |||
je¶li mamy udowodniony sekwent <math>\displaystyle \Delta,\varphi\vdash\Gamma</math>, to możemy też | |||
udowodnić sekwent <math>\displaystyle \Delta,\varphi\vdash\Gamma,\bot</math>. Stosuj±c do | |||
niego regułę (<math>\displaystyle \arr</math>-prawa) otrzymujemy sekwent | |||
<math>\displaystyle \Delta\vdash\Gamma,\neg\varphi</math>. Tym samym pokazali¶my, że | |||
następuj±ca reguła jest dopuszczalna w systemie <math>\displaystyle \vdash_G</math>: | |||
<center><math>\displaystyle (\neg </math> -prawa <math>\displaystyle )\hspace{.2cm} | |||
\frac{\Delta,\varphi\vdash\Gamma}{\Delta \vdash\Gamma,\neg\varphi}</math></center> | |||
{{twierdzenie||| | |||
\Delta\ | Dla każdych <math>\displaystyle \Delta</math> i <math>\displaystyle \varphi</math> mamy następuj±c± równoważno¶ć | ||
<center><math>\displaystyle \Delta\vdash_G\varphi\hspace{.2cm} </math> wtedy i tylko wtedy, gdy <math>\displaystyle | |||
\hspace{.2cm} \Delta\vdash_{H^+}\varphi.</math></center> | |||
}} | |||
Powyższe twierdzenie pozostawimy bez dowodu. Łatwo jest | |||
"przetłumaczyć" każde wyprowadzenie w systemie <math>\displaystyle \vdash_G</math> | |||
na dowód w stylu Hilberta. | |||
Dla dowodu implikacji odwrotnej rozszerza się system <math>\displaystyle \vdash_G</math> przez | |||
dodanie nowej reguły zwanej ''cięciem''. | |||
<center><math>\displaystyle ( </math> cięcie <math>\displaystyle )\hspace{.2cm} \frac{\Delta,\varphi\vdash\Gamma\hspace{.7cm} | |||
\Delta\vdash\varphi, \Gamma}{\Delta\vdash\Gamma}</math></center> | |||
Niech <math>\displaystyle \vdash_{GC}</math> oznacza system gentzenowski z cięciem. Bez trudu można | |||
pokazać, że reguła odrywania jest dopuszczalna w | |||
<math>\displaystyle \vdash_{GC}</math>. Zatem, korzystaj±c z twierdzenia o pełno¶ci dla | |||
systemu hilbertowskiego, łatwo pokazujemy, że każda tautologia | |||
jest twierdzeniem systemu <math>\displaystyle \vdash_{GC}</math>. Główna trudno¶ć w dowodzie | |||
Twierdzenia [[##milo|Uzupelnic milo|]] polega na | |||
udowodnieniu następuj±cego twierdzenia ''o eliminacji cięcia''. | |||
Twierdzenie to podajemy bez dowodu. | |||
{{twierdzenie|o eliminacji cięcia|| | |||
Je¶li | |||
<math>\displaystyle \Delta\vdash_{GC}\Gamma</math>, to <math>\displaystyle \Delta\vdash_G\Gamma</math>. | |||
}} | |||
Gówna zaleta dowodów w rachunku sekwentów (bez cięcia) wynika z następuj±cej | |||
''własno¶ci podformu:'' wszystkie formuły występuj±ce | |||
w przesłance dowolnej reguły s± podformułami formuwystępuj±cych | |||
w konkluzji. | |||
Zatem np. w dowodzie sekwentu <math>\displaystyle ~\vdash\varphi</math> mamy do czynienia tylko | |||
z podformułami formuły <math>\displaystyle \varphi</math>. Dla danej formuły <math>\displaystyle \varphi</math>, łatwiej | |||
więc znaleĽć dowód w sensie Gentzena niż np. dowód w sensie | |||
Hilberta. Dlatego systemy zbliżone do rachunku sekwentów | |||
znajduj± zastosowanie w automatycznym | |||
dowodzeniu twierdzeń. Pokażemy to na przykładzie. | |||
{{przyklad||| | |||
# Poszukamy dowodu sekwentu <math>\displaystyle \vdash\neg\neg\varphi\arr\varphi</math> w | |||
<math>\displaystyle \vdash_G</math>. Ponieważ najbardziej zewnętrznym spójnikiem w | |||
rozważanej formule jest <math>\displaystyle \arr</math>, to ostatni± reguł± w poszukiwanym | |||
dowodzie musiała być reguła (<math>\displaystyle \arr</math>-prawa). Zatem wystarczy | |||
znaleĽć dowód sekwentu <math>\displaystyle \neg\neg\varphi\vdash\varphi</math>. Najbardziej | |||
zewnętrznym spójnikiem formuły po lewej stronie jest <math>\displaystyle \neg</math>, a | |||
zatem na mocy reguły (<math>\displaystyle \neg</math>-lewa) wystarczy udowodnić sekwent | |||
<math>\displaystyle \vdash\varphi, \neg\varphi</math>. Podobnie, na mocy reguły (<math>\displaystyle \neg</math>-prawa), | |||
wystarczy udowodnić sekwent <math>\displaystyle \varphi\vdash\varphi</math>, a on przecież jest | |||
aksjomatem. | |||
# Je¶li zastosujemy powyższ± procedurę do formuły, która | |||
nie jest tautologi±, to dostaniemy wskazówkę na to gdzie należy szukać | |||
warto¶ciowania falsyfikuj±cego tę formułę. (Warto¶ciowanie falsyfikuj±ce | |||
sekwent <math>\displaystyle \Delta\vdash\Gamma</math> to takie, | |||
które spełnia wszystkie formuły z <math>\displaystyle \Delta</math> oraz falsyfikuje | |||
wszystkie formuły z <math>\displaystyle \Gamma</math>.) | |||
Dla zilustrowania tej tezy weĽmy bardzo prosty | |||
sekwent <math>\displaystyle \vdash p\arr q</math>. Postępuj±c podobnie jak porzednio | |||
dochodzimy do sekwentu <math>\displaystyle p\vdash q</math>, który nie jest | |||
aksjomatem, i którego nie możemy już dalej rozłożyć. | |||
Jako warto¶ciowanie falsyfikuj±ce wystarczy wzi±ć | |||
warto¶ciowanie spełniaj±ce <math>\displaystyle p</math> i falsyfikuj±ce <math>\displaystyle q</math>. | |||
}} | |||
Z własno¶ci podformuwynika też własno¶ć ''konserwatywno¶ci'' | |||
systemu nad swoimi fragmentami: je¶li formuła, w której nie | |||
występuje jaki¶ spójnik jest tautologi±, to jej wyprowadzenie | |||
nie wymaga reguzwi±zanych z tym spójnikiem. | |||
{Ćwiczenia} | |||
# Niech <math>\displaystyle \vdash_{H_1}</math> oznacza system dowodzenia otrzymany | |||
z systemu <math>\displaystyle \vdash_H</math> przez zamianę aksjomatu (A3) na | |||
następuj±cy aksjomat: | |||
\ | (A3') <math>\displaystyle (\neg\varphi\arr\neg\psi)\arr((\neg\varphi\arr | ||
\psi)\arr\varphi).</math> | |||
< | Dowie¶ć, że obydwa systemy s± równoważne, tzn., że dla | ||
dowolnego sekwentu <math>\displaystyle \Delta\vdash\varphi</math>, zachodzi | |||
<math>\displaystyle \Delta\vdash_H\varphi</math> , gdy <math>\displaystyle \Delta\vdash_{H_1}\varphi</math>. | |||
# Niech <math>\displaystyle \vdash_{H_2}</math> oznacza system dowodzenia otrzymany | |||
z systemu <math>\displaystyle \vdash_H</math> przez zamianę aksjomatu (A3) na <math>\displaystyle \vdash_H</math>, | |||
następuj±cy aksjomat: | |||
(A3") <math>\displaystyle (\neg\varphi\arr\neg\psi)\arr(\psi\arr\varphi).</math> | |||
Dowie¶ć, że obydwa systemy s± równoważne, tzn., że dla | |||
dowolnego sekwentu <math>\displaystyle \Delta\vdash\varphi</math>, zachodzi | |||
<math>\displaystyle \Delta\vdash_H\varphi</math> , gdy <math>\displaystyle \Delta\vdash_{H_2}\varphi</math>. | |||
# Dowie¶ć, że aksjomatu (A3) nie da się wyprowadzić z | |||
aksjomatów (A0--2) przy pomocy reguły odrywania. | |||
# Dowie¶ć <math>\displaystyle \vdash_H\neg p \arr(p\arr q)</math> używaj±c twierdzenia o | |||
dedukcji oraz bez użycia tego twierdzenia. | |||
# Pokazać, że w systemie <math>\displaystyle \vdash_H</math> dopuszczalna jest | |||
następuj±ca reguła: | |||
\ | <center><math>\displaystyle \frac{\varphi\arr\psi\odstep | ||
\neg\psi}{\neg\varphi}</math></center> | |||
< | tzn. pokazać, że je¶li <math>\displaystyle \Delta\vdash_H\varphi\arr\psi</math> oraz | ||
<math>\displaystyle \Delta\vdash_H\neg\psi</math>, to również mamy <math>\displaystyle \Delta\vdash_H\neg\varphi</math>. | |||
# Dowie¶ć, że dla każdej formuły <math>\displaystyle \varphi</math>, nie będ±cej | |||
tautologi±, istnieje maksymalny zbiór formuł <math>\displaystyle \Delta</math> (nad dan± sygnatur±) | |||
o tej własno¶ci, że | |||
<math>\displaystyle \Delta\not\vdash_H\varphi</math>. | |||
# Każdy z poniższych sekwentów wyprowadzić w systemie | |||
<math>\displaystyle \vdash_{H^+}</math>, <math>\displaystyle \vdash_{N}</math>, <math>\displaystyle \vdash_G</math>. | |||
<nowiki> =</nowiki> 2pt | |||
## <math>\displaystyle \vdash \bot\arr p</math>; | |||
## <math>\displaystyle p\arr q,q\arr r\vdash p\arr r</math>; | |||
## <math>\displaystyle \vdash(\neg p\arr p)\arr p</math>; | |||
## <math>\displaystyle p,\neg p\vdash q</math>; | |||
## <math>\displaystyle p\arr(q\arr r)\vdash q\arr(p\arr r)</math>; | |||
## <math>\displaystyle \vdash (\neg p\arr \neg q)\arr (q\arr p)</math>; | |||
## <math>\displaystyle \vdash \neg(p\wedge q)\arr(\neg p\vee\neg q)</math>. | |||
# Dowie¶ć, że je¶li <math>\displaystyle \Delta\vdash_{N}\varphi</math>, to dla dowolnej | |||
formuły <math>\displaystyle \psi</math> zachodzi <math>\displaystyle \Delta,\psi\vdash_{N}\varphi</math>. | |||
# Dowie¶ć, że je¶li <math>\displaystyle \Delta\vdash_{N}\bot</math>, to dla dowolnej | |||
formuły <math>\displaystyle \varphi</math> zachodzi <math>\displaystyle \Delta\vdash_{N}\varphi</math>. | |||
# Dla każdego z sytemów <math>\displaystyle \vdash_{H^+}</math>, <math>\displaystyle \vdash_{N}</math>, | |||
<math>\displaystyle \vdash_G</math> dowie¶ć, że je¶li sekwent <math>\displaystyle \Delta\vdash\varphi</math> jest | |||
wyprowadzalny w tym systemie oraz <math>\displaystyle S</math> jest podstawieniem formuł na | |||
zmienne zdaniowe, to sekwent <math>\displaystyle \vec{S}(\Delta)\vdash S(\varphi)</math> | |||
powstaj±cy w wyniku podstawienia jest też wyprowadzalny w tym systemie. | |||
# | |||
Udowodnić, że w rachunku sekwentów zamiana reguły <math>\displaystyle (\vee </math> -prawa <math>\displaystyle )</math> | |||
na dwie reguły: | |||
<center><math>\displaystyle \prooftree{\Delta\vdash\Gamma,\varphi} | |||
\justifies{\Delta\vdash\Gamma,\varphi\vee\psi} | |||
\endprooftree | |||
\hspace{3cm} \prooftree{\Delta\vdash\Gamma,\psi} | |||
\justifies{\Delta\vdash\Gamma,\varphi\vee\psi} | |||
\endprooftree</math></center> | |||
daje w wyniku równoważny system dowodzenia | |||
(wyprowadzalne s± te same sekwenty). | |||
# | |||
Udowodnić, że następuj±ce reguły ''osłabiania'' s± dopuszczalne | |||
w rachunku sekwentów: | |||
</math> | <center><math>\displaystyle \prooftree{\Delta\vdash\Gamma}\justifies{\Delta,\varphi\vdash\Gamma} | ||
\endprooftree | |||
\hspace{3cm} | |||
\prooftree{\Delta\vdash\Gamma}\justifies{\Delta\vdash\Gamma,\varphi} | |||
\endprooftree</math></center> | |||
# Wyprowadzić w rachunku sekwentów: | |||
## <math>\displaystyle \vdash p\vee \neg p</math>; | |||
## <math>\displaystyle \vdash ((p\to q)\to p)\to p</math>. | |||
Czy można to zrobić używaj±c tylko sekwentów postaci <math>\displaystyle \Delta\vdash\varphi</math> | |||
(z jedn± formuł± po prawej)? |
Wersja z 19:54, 21 wrz 2006
Paradygmaty dowodzenia
{twierdzenie}{0}
Sprawdzenie, czy dana formuła rachunku zdań jest tautologi±, polega zwykle na obliczeniu jej warto¶ci dla różnych warto¶ciowań, gdzie jest liczb± zmiennych zdaniowych tej formuły. Jak dot±d nie s± znane radykalnie szybsze metody. Dla rachunku predykatów nie istnieje w ogóle żaden algorytm sprawdzania czy dana formuła jest tautologi± (Twierdzenie Uzupelnic entscheidungsproblem|). W obu przypadkach istniej± jednak metody dowodzenia pozwalaj±ce na wyprowadzanie prawdziwych formuł za pomoc± ustalonych procedur syntaktycznych.
Każdy system dowodzenia zawiera dwa składniki:
- pocz±tkowy zbiór formuł (lub wyrażeń zbudowanych z wielu formuł)
zwanych aksjomatami;
- zbiór operacji przekształcaj±cych wyrażenia w wyrażenia ---
operacje te s± nazywane regułami dowodzenia.
Reguły dowodzenia opisuj± warunki, przy pomocy których można otrzymać nowe wyrażenie (nazywane konkluzj±) z otrzymanych już wyrażeń (nazywanych przesłankami). Dowody w systemach formalnych s± ci±gami wyrażeń, być może posiadaj±cymi dodatkow± strukturę pozwalaj±c± na lepsz± wizualizację.
W dalszej czę¶ci opiszemy trzy systemy dowodzenia: system typu hilbertowskiego (od nazwiska Davida Hilberta), system naturalnej dedukcji oraz rachunek sekwentów. Ostatnie dwa systemy znajduj± zastosowanie w pewnych działach sztucznej inteligencji oraz w systemach automatycznego dowodzenia twierdzeń.
System hilbertowski
Poniższy system dowodzenia dotyczy formuł zbudowanych przy użyciu jedynie spójnika Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \arr} , stałej oraz zmiennych zdaniowych. Przypomnijmy, że dla dowolnej formuły , napis jest skrótem zapisu Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \varphi\arr\bot} . Symbole w poniższym systemie oznaczaj± dowolne formuły.
Aksjomaty
(A1) Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \varphi\arr(\psi\arr\varphi)}
(A2) Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle (\varphi\arr(\psi\arr\vartheta))\arr((\varphi\arr\psi) \arr(\varphi\arr\vartheta))}
(A3) Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \neg\neg\varphi\arr\varphi}
Reguła dowodzenia
Reguła (MP) jest nazywana reguł± odrywania lub też reguł± modus ponens.
Dowodem w powyższym systemie nazywamy taki ci±g formuł, w którym każda formuła albo jest aksjomatem, albo też została otrzymana z wcze¶niej występuj±cych formuł w wyniku zastosowania reguły odrywania. Powiemy, że formuła ma dowód, lub jest twierdzeniem systemu hilbertowskiego, co zapiszemy , gdy istnieje dowód zawieraj±cy . Powyższ± definicję możemy nieco uogólnić. Niech będzie dowolnym zbiorem formuł. Powiemy, że formuła ma dowód ze zbioru hipotez (notacja ), gdy jest twierdzeniem systemu, w którym zbiór aksjomatów został poszerzony o formuły ze zbioru .
Przykład
Niech będzie zmienn± zdaniow±. Pokażemy, że formuła Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle p\arr p} jest twierdzeniem systemu hilbertowskiego. Poniżej podajemy dowód dla tej formuły. W nawiasach podajemy nazwę aksjomatu, je¶li dana formuła jest instancj± tego aksjomatu, lub też numery formuł z wcze¶niejszych kroków dowodu, do których jest stosowana reguła odrywania.
- Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle (p\arr((p\arr p)\arr p))\arr((p\arr(p\arr p))\arr(p\arr p))}
(A2)
- Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle p\arr((p\arr p)\arr p)} (A1)
- Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle (p\arr(p\arr p))\arr(p\arr p)} (1,2)
- Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle p\arr(p\arr p)} (A1)
- Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle p\arr p} (3,4)
Zauważmy, że w powyższym przykładzie możemy wszędzie zast±pić zmienn± przez dowoln± formułę dostaj±c dowód formuły Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \varphi\arr\varphi} .
Następuj±ce twierdzenie jest bardzo użyteczne, gdy trzeba uzasadnić, że jaka¶ formuła jest twierdzeniem.
Twierdzenie o dedukcji
Dla dowolnego zbioru formuł oraz dowolnych formuł , je¶li , to Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \Delta\vdash_H\varphi\arr\psi} .
Dowód
Dowód jest indukcyjny ze względu na liczbę kroków w dowodzie formuły ze zbioru hipotez . Przypu¶ćmy najpierw, że dowód ten składa się tylko z jednego kroku. Je¶li , to stosuj±c wyprowadzenie z Przykładu Uzupelnic pr-zda-1a| dostajemy dowód formuły Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \varphi\arr\varphi} . Możemy oczywi¶cie przyj±ć, że formuła ta jest wyprowadzona ze zbioru hipotez . Druga możliwo¶ć jest taka, że lub też, że jest aksjomatem. W każdym z tych przypadków mamy . Wówczas stosuj±c regułę odrywania do oraz aksjomatu Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \psi\arr(\varphi\arr\psi)} dostajemy formułę Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \varphi\arr\psi} .
Założmy teraz, że ostatnim krokiem w wyprowadzeniu formuły jest zastosowanie reguły (MP) do formuł Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \vartheta\arr\psi} oraz , dla pewnej formuły . Z założenia indukcyjnego mamy Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \Delta\vdash_H\varphi\arr (\vartheta\arr\psi)} oraz Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \Delta\vdash_H\varphi\arr\vartheta} . Stosuj±c regułę odrywania do Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \varphi\arr (\vartheta\arr\psi)} oraz do aksjomatu (A2): Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle (\varphi\arr(\vartheta\arr\psi))\arr ((\varphi\arr\vartheta)\arr(\varphi\arr\psi))} dostajemy formułę Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle (\varphi\arr\vartheta)\arr(\varphi\arr\psi)} . Ponownie stosuj±c regułę odrywania do tej formuły oraz do Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \varphi\arr\vartheta} dostajemy ż±dan± formułę Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \varphi\arr\psi} . To kończy dowód twierdzenia o dedukcji.

Twierdzenie o poprawno¶ci
Je¶li , to . W szczególno¶ci, je¶li , to jest tautologi±.
Dowód
Dowód jest indukcyjny ze względu na liczbę kroków w wyprowadzeniu formuły w systemie hilbertowskim ze zbioru hipotez . Je¶li dowód ten składa się tylko z jednego kroku to albo albo jest aksjomatem. W obu przypadkach oczywi¶cie zachodzi .
Załóżmy teraz, że jest otrzymana przez zastosowanie reguły odrywania do formuł Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \psi\arr\varphi} oraz . Z założenia indukcyjnego mamy
Niech będzie dowolnym warto¶ciowaniem spełniaj±cym wszystkie formuły z . Na mocy (Uzupelnic eq-zad-1|), warto¶ciowanie spełnia Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \psi\arr\varphi} oraz spełnia . Wynika st±d, że spełnia . Tym samym udowodnili¶my, że . To kończy dowód.

Lemat
Dla dowolnych formuł zbudowanych przy użyciu Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \arr} oraz , następuj±ce formuły s± twierdzeniami systemu hilbertowskiego.
- Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \varphi \arr(\neg\psi\arr\neg(\varphi\arr\psi))} ;
- Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \bot\arr\varphi} ;
- Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle (\varphi\arr\psi)\arr((\neg\varphi\arr\psi)\arr\psi)} ;
Dowód
(1) Niech Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \Delta=\{\varphi,\psi\arr\bot,\varphi\arr\psi\}} . Stosuj±c regułę odrywania do formuł oraz Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \varphi\arr\psi} dostajemy . Przez ponowne zastosowanie (MP) do tej formuły oraz do Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \psi\arr\bot} otrzymujemy wyprowadzenie . Tym samym pokazali¶my, że . Stosuj±c teraz trzy razy twierdzenie o dedukcji dostajemy
czyli
(2) Ponieważ , więc z twierdzenia o dedukcji wynika . Stosuj±c teraz (MP) do tej formuły oraz do aksjomatu (A3) w postaci Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \neg\neg\varphi\arr\varphi} otrzymujemy . Ponowne zastosowanie twierdzenia o dedukcji daje nam Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \vdash_H\bot\arr\varphi} .
(3) Niech Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \Delta=\{\varphi\arr\psi,\neg\varphi\arr\psi\}} . Zaczynamy od zbioru hipotez . Stosuj±c (MP) do formuł oraz Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \varphi\arr\psi} dostajemy . Ponowne zastosowanie (MP) do tej formuły oraz do daje nam . Używaj±c teraz twierdzenia o dedukcji do formuły otrzymujemy
Ponieważ mamy Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \Delta\cup\{\neg\psi\}\vdash_H\neg\varphi\arr\psi} , to stosuj±c (MP) otrzymujemy . Jeszcze raz używamy (MP) aby z i otrzymać i mamy
Na mocy twierdzenia o dedukcji . Stosuj±c (MP) do formuły oraz do aksjomatu Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \neg\neg\psi\arr\psi} otrzymujemy . Dwukrotne zastosowanie twierdzenia o dedukcji daje nam Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \vdash_H(\varphi\arr\psi)\arr((\neg\varphi\arr\psi)\arr\psi)} . To kończy dowód lematu.

Powyższy system można łatwo rozszerzyć do systemu dla formuł opartych o pozostałe spójniki logiczne. Wystarczy w tym celu dodać aksjomaty wyrażaj±ce równoważno¶ci definiuj±ce te spójniki.
(B1) Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \varphi\wedge \psi\arr\neg(\varphi\arr\neg\psi)}
(B2) Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \neg(\varphi\arr\neg\psi)\arr\varphi\wedge \psi}
(B3) Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \varphi\vee\psi\arr(\neg\varphi\arr\psi)}
(B4) Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle (\neg\varphi\arr\psi)\arr\varphi\vee\psi}
Tak otrzymany system oznaczymy przez .
Twierdzenie o poprawno¶ci dla
Dla dowolnego zbioru formuł i dla dowolnej formuły w języku z Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \vee,\wedge,\arr,\bot} , je¶li Parser nie mógł rozpoznać (nieznana funkcja „\se”): {\displaystyle \displaystyle \se_{H^+}\varphi} to .
Dowód
Wystarczy sprawdzić, że aksjomaty (B1)--(B4) s± tautologiami. Konkluzja wynika z Twierdzenia Uzupelnic tw-zda-2| o poprawno¶ci dla .

Lemat
Dla dowolnej formuły istnieje formuła zbudowana przy użyciu jedynie Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \arr} oraz , taka że Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \vdash_{H^+}\varphi\arr\tilde{\varphi}} {.1cm} oraz {.1cm} Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \vdash_{H^+}\tilde{\varphi}\arr\varphi} .
Dowód
W danej formule , zast±pmy każd± podformułę postaci formuł± Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \neg(\psi\arr\neg\vartheta)} oraz każd± podformułę postaci formuł± Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \neg\psi\arr\vartheta} . Aksjomaty (B1)--(B4) mówi±, że zast±pione formuły s± równoważne. Tak więc łatwo dostajemy Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \vdash_{H^+}\varphi\arr\tilde{\varphi}} oraz Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \vdash_{H^+}\tilde{\varphi}\arr\varphi} . Szczegóły dowodu pozostawimy Czytelnikowi.

System naturalnej dedukcji
System naturalnej dedukcji (wprowadzony przez S. Ja¶kowskiego i G. Gentzena) operuje wyrażeniami zwanymi sekwentami. S± to wyrażenia postaci , gdzie jest pewnym skończonym zbiorem formuł, a jest formuł±. W odróżnieniu od systemu hilbertowskiego, w naturalnej dedukcji istotne s± reguły dowodzenia, a aksjomat jest bardzo prosty. Charakterystyczn± cech± naturalnej dedukcji jest to, że reguły dowodzenia (za wyj±tkiem reguły (PS) "przez sprzeczno¶ć") s± podzielone na grupy, po jednej dla każdego spójnika. W ramach jednej takiej grupy mamy dwa rodzaje reguł. Reguły wprowadzania mówi± o tym w jakiej sytuacji można wprowadzić dany spójnik na prawo od znaku (tj. wywnioskować formułę danego kształtu). Reguły eliminacji mówi± o tym w jakiej sytuacji można ten spójnik wyeliminować, tzn. jak można użyć formuły zbudowanej z jego pomoc± do wyprowadzenia innej formuły. Regułę dowodzenia "przez sprzeczno¶ć" można traktować jako "siln±" regułę eliminacji . Pamiętajmy, że oznacza formułę Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \varphi\arr\bot} .
Poniżej będziemy stosować następuj±c± konwencję: Napis oznacza zbiór , przy czym nie zakładamy tu, że .
Aksjomat
(A0)
Reguły dowodzenia
Zauważmy, że szczególnym przypadkiem reguły (Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \arr} -intro) jest następuj±ca reguła, można j± traktować jak regułę wprowadzenia negacji.
Zauważmy też, że szczególnym przypadkiem reguły (Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \arr} -elim) jest następuj±ca reguła, można j± traktować jak regułę eliminacji negacji.
O ile dowody w systemi hilbertowskim s± tradycyjnie definiowane jako ci±gi, a więc struktury liniowe, to w systemie naturalnej dedukcji dowody s± drzewami. Pozwala to znacznie lepiej wizualizować zależno¶ci pomiędzy przesłankami i konkluzj± stosowanych reguł. Dowodem sekwentu w systemie naturalnej dedukcji nazwiemy drzewo etykietowane sekwentami tak, że korzeń ma etykietę , li¶cie s± etykietowane wyst±pieniami aksjomatu oraz każdy wewnętrzny wierzchołek jest etykietowany sekwentem otrzymanym z etykiet potomków tego wierzchołka przy zastosowaniu jednej z reguł. Piszemy , gdy sekwent ma dowód w systemie naturalnej dedukcji. Gdy , to mówimy też, że jest twierdzeniem systemu naturalnej dedukcji i zapisujemy to przez . Je¶li jest zbiorem nieskończonym, to oznacza, że istnieje dowód sekwentu , dla pewnego skończonego .
Poniżej podajemy kilka przykładów dowodów w systemie naturalnej dedukcji.
Przykład
- Pokażemy Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \vdash_{N}p\arr p} .
- Pokażemy Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \vdash_{N} p\arr(q\arr p)} .
- Pokażemy Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \vdash_{N}\neg\neg p\arr p} .
Twierdzenie
Dla dowolnego sekwentu mamy następuj±c± równoważno¶ć:
Aby pokazać, że każdy dowód w daje się przerobić na dowód w wystarczy sprawdzić, że każda z reguł systemu naturalnej dedukcji jest dopuszczalna w . Tzn. wystarczy sprawdzić, że je¶li mamy dowody przesłanek w , to możemy udowodnić konkluzję. Zauważmy, że wyprowadzalno¶ć reguły(Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \arr} -intro) jest konsekwencj± twierdzenia o dedukcji, natomiast reguła (Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \arr} -elim) jest reguł± (MP). Przykładowo pokażemy wyprowadzenie (-elim) oraz (PS) w , pozostawiaj±c Czytelnikowi wyprowadzenie pozostałych reguł.
Załóżmy, że mamy w dowody następuj±cych sekwentów: , {.1cm} {.1cm}oraz {.1cm} . Wówczas, stosuj±c aksjomat (B2) i regułę (MP) mamy Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \Delta\vdash_{H^+}\neg\varphi\arr\psi} . Zatem i ponieważ Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \Delta\vdash_{H^+}\psi\arr\vartheta} to również Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \Delta,\neg\varphi\vdash_{H^+}\psi\arr\vartheta} . St±d . Stosuj±c twierdzenie o dedukcji dostajemy Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \Delta\vdash_{H^+}\neg\varphi\arr\vartheta} . Skoro mamy również Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \delta\vdash_{H^+}\varphi\arr\vartheta} , to na mocy Lematu Uzupelnic le-zda-1|(3) otrzymujemy .
Dla wyprowadzenia (PS) załóżmy, że . Z twierdzenia o dedukcji dostajemy . Tak więc z (A3) i (MP) dostajemy .
Dla pokazania implikacji odwrotnej wystarczy pokazać, że wszystkie aksjomaty systemu s± twierdzeniami systemu naturalnej dedukcji. Wyprowadzenia (A1) i (A3) w ND zostały podane w Przykładzie Uzupelnic pr-zda-2|. Przykładowo pokażemy wyprowadzenia (A2) i (B1). Zaczniemy od wyprowadzenia (A2). Niech Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \Delta=\{\varphi\arr(\psi\arr\vartheta),\ \varphi\arr\psi,\ \varphi\}} . Mamy następuj±cy dowód:
Stosuj±c trzy razy (Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \arr } -intro ) do sekwentu Parser nie mógł rozpoznać (nieznana funkcja „\se”): {\displaystyle \displaystyle \se\vartheta} dostajemy wyprowadzenie aksjomatu (A2).
Następnie pokażemy dowód (B1) w ND. Zaczniemy od wyprowadzenia Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \neg(\varphi\arr\neg\psi)\vdash\varphi} , gdzie Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \Delta=\{\neg(\varphi\arr\neg\psi), \neg\varphi\}} :
Następnie wyprowadzimy sekwent Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \neg(\varphi\arr\neg\psi)\vdash\psi} . Niech Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \Delta=\{\neg(\varphi\arr\neg\psi), \neg\psi\}}
Maj±c wyprowadzone sekwenty Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \neg(\varphi\arr\neg\psi)\vdash\varphi} oraz Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \neg(\varphi\arr\neg\psi)\vdash\psi} możemy zakończyć dowód (B1).
Rachunek sekwentów
Dla przedstawienia rachunku sekwentów rozszerzymy nieco pojęcie sekwentu. Przez sekwent będziemy teraz rozumieć napis , gdzie oraz s± skończonymi zbiorami formuł. Intuicyjnie, wyprowadzalno¶ć sekwentu w rachunku sekwentów będzie oznaczać, że alternatywa formuł z wynika z hipotez .
Podobnie jak w poprzedniej czę¶ci, rozważamy formuły, zbudowane w oparciu o spójniki Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \arr,\vee,\wedge} oraz stał± zdaniow± . Negację traktujemy jako spójnik zdefiniowany przez Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \arr} i .
Charakterystyczn± cech± rachunku sekwentów jest specyficzna postać reguł. Reguły w tym systemie naturalnie dziel± się na dwie grupy: jedna grupa reguł opisuje sytuacje kiedy możemy wprowadzić dany spójnik na lewo od znaku , a druga grupa jest odpowiedzialna za wprowadzanie spójnika na prawo od . Dla każdego spójnika mamy odpowiadaj±c± parę reguł. Aksjomat (A) można traktować jako regułę (bez przesłanek) wprowadzenia z lewej strony znaku .
Przypomnijmy, że napis oznacza zbiór .
Aksjomaty
(A00)
(A)
Reguły dowodzenia
Dowodem sekwentu , tak jak poprzednio, nazywamy drzewo etykietowane sekwentami tak, że korzeń jest etykietowany przez , li¶cie s± etykietowane aksjomatami oraz wierzchołki wewnętrzne s± etykietowane sekwentami otrzymanymi poprawnie przez zastosowanie reguł dowodzenia. Je¶li istnieje dowód sekwentu w rachunku sekwentów to zapisujemy to tak: . (Litera G pochodzi od nazwiska twórcy tego systemu, G. Gentzena.) Piszemy też , gdy jest nieskończony, ale dla pewnego skończonego .
Zauważmy, że je¶li mamy sekwent to stosuj±c aksjomat (A), a następnie (Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \arr} -lewa) dostajemy sekwent . Zatem natępuj±ca reguła jest dopuszczalna w systemie (tj. je¶li dodamy j± do systemu, to zbiór wyprowadzalnych sekwentów nie ulegnie zmianie):
Ponadto zauważmy, że je¶li mamy dowód sekwentu , to dla każdej formuły możemy j± dodać do prawej strony każdego sekwentu w tym dowodzie i otrzymamy dowód sekwentu . Łatwy dowód indukcyjny pozostawiamy Czytelnikowi (Ćwiczenie Uzupelnic weakening|). W szczególno¶ci, je¶li mamy udowodniony sekwent , to możemy też udowodnić sekwent . Stosuj±c do niego regułę (Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \arr} -prawa) otrzymujemy sekwent . Tym samym pokazali¶my, że następuj±ca reguła jest dopuszczalna w systemie :
Twierdzenie
Dla każdych i mamy następuj±c± równoważno¶ć
Powyższe twierdzenie pozostawimy bez dowodu. Łatwo jest "przetłumaczyć" każde wyprowadzenie w systemie na dowód w stylu Hilberta. Dla dowodu implikacji odwrotnej rozszerza się system przez dodanie nowej reguły zwanej cięciem.
Niech oznacza system gentzenowski z cięciem. Bez trudu można pokazać, że reguła odrywania jest dopuszczalna w . Zatem, korzystaj±c z twierdzenia o pełno¶ci dla systemu hilbertowskiego, łatwo pokazujemy, że każda tautologia jest twierdzeniem systemu . Główna trudno¶ć w dowodzie Twierdzenia Uzupelnic milo| polega na udowodnieniu następuj±cego twierdzenia o eliminacji cięcia. Twierdzenie to podajemy bez dowodu.
Twierdzenie o eliminacji cięcia
Je¶li , to .
Gówna zaleta dowodów w rachunku sekwentów (bez cięcia) wynika z następuj±cej własno¶ci podformu: wszystkie formuły występuj±ce w przesłance dowolnej reguły s± podformułami formuwystępuj±cych w konkluzji. Zatem np. w dowodzie sekwentu mamy do czynienia tylko z podformułami formuły . Dla danej formuły , łatwiej więc znaleĽć dowód w sensie Gentzena niż np. dowód w sensie Hilberta. Dlatego systemy zbliżone do rachunku sekwentów znajduj± zastosowanie w automatycznym dowodzeniu twierdzeń. Pokażemy to na przykładzie.
Przykład
- Poszukamy dowodu sekwentu Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \vdash\neg\neg\varphi\arr\varphi} w
. Ponieważ najbardziej zewnętrznym spójnikiem w rozważanej formule jest Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \arr} , to ostatni± reguł± w poszukiwanym dowodzie musiała być reguła (Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \arr} -prawa). Zatem wystarczy znaleĽć dowód sekwentu . Najbardziej zewnętrznym spójnikiem formuły po lewej stronie jest , a zatem na mocy reguły (-lewa) wystarczy udowodnić sekwent . Podobnie, na mocy reguły (-prawa), wystarczy udowodnić sekwent , a on przecież jest aksjomatem.
- Je¶li zastosujemy powyższ± procedurę do formuły, która
nie jest tautologi±, to dostaniemy wskazówkę na to gdzie należy szukać warto¶ciowania falsyfikuj±cego tę formułę. (Warto¶ciowanie falsyfikuj±ce sekwent to takie, które spełnia wszystkie formuły z oraz falsyfikuje wszystkie formuły z .) Dla zilustrowania tej tezy weĽmy bardzo prosty sekwent Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \vdash p\arr q} . Postępuj±c podobnie jak porzednio dochodzimy do sekwentu , który nie jest aksjomatem, i którego nie możemy już dalej rozłożyć. Jako warto¶ciowanie falsyfikuj±ce wystarczy wzi±ć warto¶ciowanie spełniaj±ce i falsyfikuj±ce .
Z własno¶ci podformuwynika też własno¶ć konserwatywno¶ci systemu nad swoimi fragmentami: je¶li formuła, w której nie występuje jaki¶ spójnik jest tautologi±, to jej wyprowadzenie nie wymaga reguzwi±zanych z tym spójnikiem.
{Ćwiczenia}
- Niech oznacza system dowodzenia otrzymany
z systemu przez zamianę aksjomatu (A3) na następuj±cy aksjomat:
(A3') Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle (\neg\varphi\arr\neg\psi)\arr((\neg\varphi\arr \psi)\arr\varphi).}
Dowie¶ć, że obydwa systemy s± równoważne, tzn., że dla dowolnego sekwentu , zachodzi , gdy .
- Niech oznacza system dowodzenia otrzymany
z systemu przez zamianę aksjomatu (A3) na , następuj±cy aksjomat:
(A3") Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle (\neg\varphi\arr\neg\psi)\arr(\psi\arr\varphi).}
Dowie¶ć, że obydwa systemy s± równoważne, tzn., że dla dowolnego sekwentu , zachodzi , gdy .
- Dowie¶ć, że aksjomatu (A3) nie da się wyprowadzić z
aksjomatów (A0--2) przy pomocy reguły odrywania.
- Dowie¶ć Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \vdash_H\neg p \arr(p\arr q)} używaj±c twierdzenia o
dedukcji oraz bez użycia tego twierdzenia.
- Pokazać, że w systemie dopuszczalna jest
następuj±ca reguła:
tzn. pokazać, że je¶li Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \Delta\vdash_H\varphi\arr\psi} oraz , to również mamy .
- Dowie¶ć, że dla każdej formuły , nie będ±cej
tautologi±, istnieje maksymalny zbiór formuł (nad dan± sygnatur±) o tej własno¶ci, że .
- Każdy z poniższych sekwentów wyprowadzić w systemie
, , .
= 2pt
- Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \vdash \bot\arr p} ;
- Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle p\arr q,q\arr r\vdash p\arr r} ;
- Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \vdash(\neg p\arr p)\arr p} ;
- ;
- Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle p\arr(q\arr r)\vdash q\arr(p\arr r)} ;
- Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \vdash (\neg p\arr \neg q)\arr (q\arr p)} ;
- Parser nie mógł rozpoznać (nieznana funkcja „\arr”): {\displaystyle \displaystyle \vdash \neg(p\wedge q)\arr(\neg p\vee\neg q)} .
- Dowie¶ć, że je¶li , to dla dowolnej
formuły zachodzi .
- Dowie¶ć, że je¶li , to dla dowolnej
formuły zachodzi .
- Dla każdego z sytemów , ,
dowie¶ć, że je¶li sekwent jest wyprowadzalny w tym systemie oraz jest podstawieniem formuł na zmienne zdaniowe, to sekwent powstaj±cy w wyniku podstawienia jest też wyprowadzalny w tym systemie.
Udowodnić, że w rachunku sekwentów zamiana reguły -prawa
na dwie reguły:
daje w wyniku równoważny system dowodzenia (wyprowadzalne s± te same sekwenty).
Udowodnić, że następuj±ce reguły osłabiania s± dopuszczalne w rachunku sekwentów:
- Wyprowadzić w rachunku sekwentów:
- ;
- .
Czy można to zrobić używaj±c tylko sekwentów postaci (z jedn± formuł± po prawej)?