Rachunek predykatów pierwszego rzędu


Rachunek predykatów pierwszego rzędu w encyklopedii

Z Wikipedii, wolnej encyklopedii Przejdź do nawigacji Przejdź do wyszukiwania

Rachunek predykatów pierwszego rzędu (ang. first order predicate calculus) – system logiczny, w którym zmienna, na której oparty jest kwantyfikator, może być elementem pewnej wybranej dziedziny (zbioru), nie może natomiast być zbiorem takich elementów. Tak więc nie mogą występować kwantyfikatory typu „dla każdej funkcji z X na Y...” (gdyż funkcja jest podzbiorem X × Y), „istnieje własność p, taka że...” czy „dla każdego podzbioru X zbioru Z...”. Rachunek ten nazywa się też krótko rachunkiem kwantyfikatorów, ale często używa się też nazwy logika pierwszego rzędu (szczególnie wśród matematyków zajmujących się logiką matematyczną).

Na przykład w rachunku predykatów pierwszego rzędu można zapisać zdanie „dla dowolnej liczby rzeczywistej istnieje liczba większa”, jednak nie można zapisać „każdy zbiór liczb rzeczywistych ma kres górny”, gdyż wówczas kwantyfikator ogólny musiałby przebiegać wszystkie możliwe podzbiory zbioru liczb rzeczywistych i potrzebny byłby rachunek predykatów co najmniej drugiego rzędu.

Rachunek predykatów pierwszego rzędu w ogólnym przypadku nie jest rozstrzygalny (w przeciwieństwie do rachunku zdań), lecz półrozstrzygalny (czyli rekurencyjnie przeliczalny), ale jeszcze nadaje się do komputerowej analizy (co już niekoniecznie można powiedzieć o rachunku predykatów wyższych rzędów, które dopuszczają kwantyfikatory dla zbiorów).

Znaczna część rozważań matematycznych może być sformalizowana na gruncie logiki pierwszego rzędu. Ponadto logika ta ma wiele własności czyniących ją bardziej użyteczną od innych logik, co ma wpływ na pewne preferowanie teorii formalizowalnych na jej gruncie.

W literaturze istnieje szereg równoważnych rozwinięć tego tematu. Prezentacja przedstawiona poniżej jest do pewnego stopnia oparta na książce Martina Goldsterna i Haima Judaha[1]. Wśród innych źródeł omawiających te zagadnienia należy wymienić podręcznik Witolda Pogorzelskiego[2], czy też książkę Zofii Adamowicz i Pawła Zbierskiego[3]. Bardzo popularnym jest też opracowanie Josepha Shoenfielda[4].

Spis treści

Wstęp do formalizacji | edytuj kod

Logika pierwszego rzędu jest podstawą, na której formalizujemy większość matematyki. We wstępie do wspomnianej powyżej książki Goldsterna i Judaha traktującej właśnie o tej tematyce, Saharon Szelach napisał:

[Na gruncie matematyki] możemy zdefiniować czym jest dowód i wykazać, że w pewnym sensie „być prawdziwym” i „mieć dowód” znaczą to samo (twierdzenie Gödla o pełności). (...) Nie możemy wyciągnąć sami siebie z bagna za włosy: nie możemy udowodnić w naszym systemie, że nie ma w nim sprzeczności (twierdzenie Gödla o niezupełności) (...) Możemy zbudować ogólną teorię teorii matematycznych (teoria modeli).

System rachunku predykatów pierwszego rzędu składa się z:

  • zmiennych nazwowych (litery, za które wolno podstawić nazwy dowolnych przedmiotów)
  • stałych nazwowych (nazwy własne przedmiotów)
  • liter predykatowych (predykaty)
  • symboli funkcyjnych (funktory nazwotwórcze od argumentów nazwowych)
  • stałych logicznych (spójniki prawdziwościowe rachunku zdań i kwantyfikatory)
  • znaków pomocniczych (nawiasy)
  • symbolu równości.

Używając symboli wymienionych powyżej i przestrzegając naturalnych reguł, możemy budować poprawnie zbudowane napisy. Niektóre z tych napisów mogą być interpretowane jako nazwy na pewne obiekty, a inne będą mówić o własnościach tych obiektów. Pierwsza grupa napisów poprawnie zbudowanych to termy, a druga to zdania. Przykładowy schemat kwantyfikatorowy zdania: Nie ma czegoś, czym ciekawią się wszyscy...

¬ ( x ) ( S ( x ) ( y ) ( I ( y ) C ( y , x ) ) ) {\displaystyle \neg (\exists x)(S(x)\land (\forall y)(I(y)\implies C(y,x)))}

(czyt.: Nie istnieje taki x, że x jest substratem wiedzy, i dla każdego y, że jeżeli y jest istotą rozumną, to y ciekawi się x).

Następnie ustalimy reguły wnioskowania, a także metody interpretacji naszych napisów.

Formalizacja języka L ( τ ) {\displaystyle {\mathcal {L}}(\tau )} | edytuj kod

Każdy język pierwszego rzędu jest zdeterminowany przez ustalenie alfabetu.

Niech τ {\displaystyle \tau } będzie pewnym zbiorem stałych, symboli funkcyjnych i symboli relacyjnych (predykatów). Każdy z tych symboli ma jednoznacznie określony charakter (tzn. wiadomo czy jest to stała, czy symbol funkcyjny, czy też predykat) i każdy z symboli funkcyjnych i predykatów ma określoną arność (która jest dodatnią liczbą całkowitą). Zbiór τ {\displaystyle \tau } będzie nazywany alfabetem naszego języka, a sam język wyznaczony przez ten alfabet będzie oznaczany przez L ( τ ) . {\displaystyle {\mathcal {L}}(\tau ).} Ustalmy też nieskończoną listę zmiennych (zwykle x 0 , x 1 , {\displaystyle x_{0},x_{1},\dots } ).

Najpierw definiujemy termy języka L ( τ ) {\displaystyle {\mathcal {L}}(\tau )} jako elementy najmniejszego zbioru T {\displaystyle \mathbf {T} } takiego, że:

  • wszystkie stałe i zmienne należą do T , {\displaystyle \mathbf {T} ,}
  • jeśli t 1 , , t n T {\displaystyle t_{1},\dots ,t_{n}\in \mathbf {T} } i f τ {\displaystyle f\in \tau } jest n {\displaystyle n} -arnym symbolem funkcyjnym, to f ( t 1 , , t n ) T . {\displaystyle f(t_{1},\dots ,t_{n})\in \mathbf {T} .}

Następnie określamy zbiór formuł języka L ( τ ) {\displaystyle {\mathcal {L}}(\tau )} jako najmniejszy zbiór F {\displaystyle \mathbf {F} } taki, że:

  • jeśli t 1 , t 2 T , {\displaystyle t_{1},t_{2}\in \mathbf {T} ,} to wyrażenie t 1 = t 2 {\displaystyle t_{1}=t_{2}} należy do F , {\displaystyle \mathbf {F} ,}
  • jeśli t 1 , , t n T {\displaystyle t_{1},\dots ,t_{n}\in \mathbf {T} } zaś P τ {\displaystyle P\in \tau } jest n {\displaystyle n} -arnym symbolem relacyjnym, to wyrażenie P ( t 1 , , t n ) {\displaystyle P(t_{1},\dots ,t_{n})} należy do F , {\displaystyle \mathbf {F} ,}
  • jeśli φ , ψ F {\displaystyle \varphi ,\psi \in \mathbf {F} } i {\displaystyle *} jest binarnym spójnikiem zdaniowym (alternatywą , {\displaystyle \vee ,} koniunkcją , {\displaystyle \wedge ,} implikacją {\displaystyle \Rightarrow } lub równoważnością {\displaystyle \Leftrightarrow } ), to ( φ ψ ) F {\displaystyle (\varphi *\psi )\in \mathbf {F} } oraz ¬ φ F , {\displaystyle \neg \varphi \in \mathbf {F} ,}
  • jeśli x i {\displaystyle x_{i}} jest zmienną oraz φ F , {\displaystyle \varphi \in \mathbf {F} ,} to także ( x i ) ( φ ) F {\displaystyle (\exists x_{i})(\varphi )\in \mathbf {F} } i ( x i ) ( φ ) F . {\displaystyle (\forall x_{i})(\varphi )\in \mathbf {F} .}

W formułach postaci ( x i ) ( φ ) {\displaystyle (\exists x_{i})(\varphi )} i ( x i ) ( φ ) {\displaystyle (\forall x_{i})(\varphi )} mówimy, że zmienna x i {\displaystyle x_{i}} znajduje się w zasięgu kwantyfikatora i jako taka jest związana. Przez indukcję po złożoności formuł rozszerzamy to pojęcie na wszystkie formuły, w których ( x i ) ( φ ) , {\displaystyle (\exists x_{i})(\varphi ),} czy też ( x i ) ( φ ) {\displaystyle (\forall x_{i})(\varphi )} pojawia się jako jedna z części użytych w budowie, ale ograniczamy się do występowań zmiennej x i {\displaystyle x_{i}} w φ {\displaystyle \varphi } (i mówimy, że konkretne wystąpienie zmiennej jest wolne lub związane).

Zdanie w języku pierwszego rzędu L ( τ ) {\displaystyle {\mathcal {L}}(\tau )} to taka formuła, w której każda zmienna jest związana, czyli znajduje się w zasięgu działania jakiegoś kwantyfikatora.

Przykłady | edytuj kod

  • Język teorii mnogości to L ( { } ) , {\displaystyle {\mathcal {L}}(\{\in \}),} gdzie {\displaystyle \in } jest binarnym symbolem relacyjnym.
  • Język teorii grup to L ( { } ) , {\displaystyle {\mathcal {L}}(\{*\}),} gdzie {\displaystyle *} jest binarnym symbolem funkcyjnym.
  • Język ciał uporządkowanych to L ( { + , , 0 , 1 , } ) , {\displaystyle {\mathcal {L}}(\{+,\cdot ,0,1,\leqslant \}),} gdzie + , {\displaystyle +,\cdot } są binarnymi symbolami funkcyjnymi a {\displaystyle \leqslant } jest binarnym symbolem relacyjnym.

Dowody w językach pierwszego rzędu | edytuj kod

Ustalmy alfabet τ {\displaystyle \tau } (tak więc jest to zbiór złożony ze stałych, symboli funkcyjnych i symboli relacyjnych).

Podstawienia termów za zmienne | edytuj kod

Przypuśćmy, że t i s są termami języka L ( τ ) {\displaystyle {\mathcal {L}}(\tau )} oraz ξ {\displaystyle \xi } jest jedną ze zmiennych. Definiujemy podstawienie s ( ξ / t ) {\displaystyle s(\xi /t)} jako term, który powstaje z s poprzez literalne zastąpienie w nim wszystkich egzemplarzy zmiennej ξ {\displaystyle \xi } termem t.

W przypadku zmiennej ξ , {\displaystyle \xi ,} termu t i formuły φ {\displaystyle \varphi } podstawienie φ ( ξ / t ) {\displaystyle \varphi (\xi /t)} definiuje się bardziej subtelnie, co najlepiej ująć indukcyjnie względem budowy formuły φ {\displaystyle \varphi } (por. [2]):

  • jeśli φ {\displaystyle \varphi } jest formułą atomową P ( t 1 , , t n ) , {\displaystyle P(t_{1},\dots ,t_{n}),} to φ ( ξ / t ) = P ( t 1 ( ξ / t ) , , t n ( ξ / t ) ) {\displaystyle \varphi (\xi /t)=P(t_{1}(\xi /t),\dots ,t_{n}(\xi /t))}
  • jeśli φ = ψ 1 ψ 2 , {\displaystyle \varphi =\psi _{1}\circ \psi _{2},} to φ ( ξ / t ) = ψ 1 ( ξ / t ) ψ 2 ( ξ / t ) , {\displaystyle \varphi (\xi /t)=\psi _{1}(\xi /t)\circ \psi _{2}(\xi /t),} gdzie { , , , } {\displaystyle \circ \in \{\wedge ,\vee ,\to ,\leftrightarrow \}}
  • jeśli φ = ¬ ψ , {\displaystyle \varphi =\neg \psi ,} to φ ( ξ / t ) = ¬ ψ ( ξ / t ) {\displaystyle \varphi (\xi /t)=\neg \psi (\xi /t)}

oraz

  • jeśli φ = ( Q ζ ) ψ , {\displaystyle \varphi =({\mathcal {Q}}\zeta )\psi ,} gdzie Q { , } , {\displaystyle {\mathcal {Q}}\in \{\forall ,\exists \},} to φ ( ξ / t ) = φ , {\displaystyle \varphi (\xi /t)=\varphi ,} jeśli ζ { ξ } V f ( t ) {\displaystyle \zeta \in \{\xi \}\cup \mathbf {Vf} (t)} oraz φ ( ξ / t ) = ( Q ζ ) ψ ( ξ / t ) , {\displaystyle \varphi (\xi /t)=({\mathcal {Q}}\zeta )\psi (\xi /t),} w przeciwnym wypadku.

Aby móc wysłowić niektóre z aksjomatów Rachunku Predykatów konieczne jest pewne ograniczenie operacji podstawiania w formule. Mianowicie, powiadamy, że podstawienie termu t w formule φ {\displaystyle \varphi } za zmienną ξ {\displaystyle \xi } jest dopuszczalne lub, że zmienna ξ {\displaystyle \xi } jest wolna dla termu t w formule φ {\displaystyle \varphi } , ozn. ξ F f ( t , φ ) , {\displaystyle \xi \in \mathbf {Ff} (t,\varphi ),} gdy (nieformalnie) literalne wstawienie tego termu w rozważanej formule w miejscu któregoś z wolnych wystąpień zmiennej ξ {\displaystyle \xi } spowodowałoby związanie pewnej zmiennej termu t (w szczególności zmienne nie będące wolnymi w danej formule są wolne w niej dla wszystkich termów).

Formalnie natomiast definiujemy to pojęcie indukcyjnie ze względu na budowę formuły następująco:

  • jeśli ξ V f ( φ ) , {\displaystyle \xi \not \in \mathbf {Vf} (\varphi ),} to ξ F f ( t , φ ) {\displaystyle \xi \in \mathbf {Ff} (t,\varphi )}
  • jeśli φ {\displaystyle \varphi } jest formułą atomową, to ξ F f ( t , φ ) {\displaystyle \xi \in \mathbf {Ff} (t,\varphi )}
  • jeśli φ = ψ 1 ψ 2 , {\displaystyle \varphi =\psi _{1}\circ \psi _{2},} to ξ F f ( t , φ ) ξ F f ( t , ψ 1 ) F f ( t , ψ 2 ) , {\displaystyle \xi \in \mathbf {Ff} (t,\varphi )\Leftrightarrow \xi \in \mathbf {Ff} (t,\psi _{1})\cap \mathbf {Ff} (t,\psi _{2}),} gdzie { , , , } {\displaystyle \circ \in \{\wedge ,\vee ,\to ,\leftrightarrow \}}
  • jeśli φ = ¬ ψ , {\displaystyle \varphi =\neg \psi ,} to ξ F f ( t , φ ) ξ F f ( t , ψ ) {\displaystyle \xi \in \mathbf {Ff} (t,\varphi )\Leftrightarrow \xi \in \mathbf {Ff} (t,\psi )}

oraz

  • jeśli φ = ( Q ζ ) ψ , {\displaystyle \varphi =({\mathcal {Q}}\zeta )\psi ,} to ξ F f ( t , φ ) ξ F f ( t , ψ ) & ζ V f ( t ) , {\displaystyle \xi \in \mathbf {Ff} (t,\varphi )\Leftrightarrow \xi \in \mathbf {Ff} (t,\psi )\&\zeta \not \in \mathbf {Vf} (t),} gdzie Q { , } . {\displaystyle {\mathcal {Q}}\in \{\forall ,\exists \}.}

Przykłady | edytuj kod

Rozważmy język ciał uporządkowanych L ( { + , , 0 , 1 , } ) . {\displaystyle {\mathcal {L}}(\{+,\cdot ,0,1,\leqslant \}).} Niech termami t , s , u {\displaystyle t,s,u} będą, odpowiednio 0 + x 1 + x 2 , {\displaystyle 0+x_{1}+x_{2},} ( 1 + 1 ) x 1 {\displaystyle (1+1)\cdot x_{1}} oraz x 3 x 4 . {\displaystyle x_{3}\cdot x_{4}.} Rozważmy formułę φ = ( x 3 ) ( x 4 ) ( ( x 1 + x 3 ) x 7 = x 4 + 1 + 0 ) . {\displaystyle \varphi =(\forall x_{3})(\exists x_{4})((x_{1}+x_{3})\cdot x_{7}=x_{4}+1+0).} Wówczas

  • s ( x 1 / t ) {\displaystyle s(x_{1}/t)} to term ( 1 + 1 ) ( 0 + x 1 + x 2 ) , {\displaystyle (1+1)\cdot (0+x_{1}+x_{2}),}
  • s ( x 1 / u ) {\displaystyle s(x_{1}/u)} to term ( 1 + 1 ) ( x 3 x 4 ) , {\displaystyle (1+1)\cdot (x_{3}\cdot x_{4}),}
  • φ ( x 1 / t ) {\displaystyle \varphi (x_{1}/t)} to formuła ( x 3 ) ( x 4 ) ( ( 0 + x 1 + x 2 + x 3 ) x 7 = x 4 + 1 + 0 ) {\displaystyle (\forall x_{3})(\exists x_{4})((0+x_{1}+x_{2}+x_{3})\cdot x_{7}=x_{4}+1+0)} i podstawienie termu t {\displaystyle t} za zmienną x 1 {\displaystyle x_{1}} w φ {\displaystyle \varphi } jest dopuszczalne,
  • φ ( x 3 / u ) {\displaystyle \varphi (x_{3}/u)} oraz φ ( x 7 / u ) {\displaystyle \varphi (x_{7}/u)} są równokszałtne z φ , {\displaystyle \varphi ,} przy czym podstawienie termu u {\displaystyle u} za zmienną x 7 {\displaystyle x_{7}} jest niedopuszczalne, zaś podstawienie tego samego termu za zmienną x 3 {\displaystyle x_{3}} jest dopuszczalne (choć nieskuteczne), bowiem zmienna ta nie jest wolna w rozważanej formule.

Aksjomaty logiczne | edytuj kod

Formuły następujących typów będą nazywane aksjomatami czystymi:

  • podstawienia formuł do tautologii rachunku zdań,
  • formuły postaci ( x ) ( φ ψ )     ( ( x ) ( φ ) ( x ) ( ψ ) ) {\displaystyle (\forall x)(\varphi \Rightarrow \psi )\ \Rightarrow \ ((\forall x)(\varphi )\Rightarrow (\forall x)(\psi ))} (gdzie φ , ψ {\displaystyle \varphi ,\psi } to formuły),
  • formuły postaci ( x i ) ( φ )     φ ( x i / t ) , {\displaystyle (\forall x_{i})(\varphi )\ \Rightarrow \ \varphi (x_{i}/t),} gdzie term t {\displaystyle t} może być podstawiony za zmienną x i {\displaystyle x_{i}} w φ , {\displaystyle \varphi ,}
  • formuły postaci φ ( x i ) ( φ ) , {\displaystyle \varphi \Rightarrow (\forall x_{i})(\varphi ),} gdzie zmienna x i {\displaystyle x_{i}} nie jest wolna w formule φ , {\displaystyle \varphi ,}
  • formuły postaci
x = x , {\displaystyle x=x,} x = y   y = x {\displaystyle x=y\ \Rightarrow y=x} i x = y     y = z     x = z , {\displaystyle x=y\ \wedge \ y=z\ \Rightarrow \ x=z,} gdzie x , y , z {\displaystyle x,y,z} są (niekoniecznie różnymi) zmiennymi,
  • formuły postaci
y 1 = z 1       y k = z k     ( P ( y 1 , , y k ) P ( z 1 , , z k ) ) , {\displaystyle y_{1}=z_{1}\ \wedge \ \ldots \ \wedge y_{k}=z_{k}\ \Rightarrow \ (P(y_{1},\dots ,y_{k})\Leftrightarrow P(z_{1},\dots ,z_{k})),} gdzie z 1 , , z k , y 1 , , y k {\displaystyle z_{1},\dots ,z_{k},y_{1},\dots ,y_{k}} są zmiennymi a P τ {\displaystyle P\in \tau } jest k-arnym symbolem relacyjnym,
  • formuły postaci
y 1 = z 1       y k = z k     ( f ( y 1 , , y k ) = f ( z 1 , , z k ) ) , {\displaystyle y_{1}=z_{1}\ \wedge \ \ldots \ \wedge y_{k}=z_{k}\ \Rightarrow \ (f(y_{1},\dots ,y_{k})=f(z_{1},\dots ,z_{k})),} gdzie z 1 , , z k , y 1 , , y k {\displaystyle z_{1},\dots ,z_{k},y_{1},\dots ,y_{k}} są zmiennymi a f τ {\displaystyle f\in \tau } jest k-arnym symbolem funkcyjnym.

Aksjomaty czyste i formuły postaci ( y 1 ) ( y n ) ( φ ) , {\displaystyle (\forall y_{1})\ldots (\forall y_{n})(\varphi ),} gdzie φ {\displaystyle \varphi } jest aksjomatem czystym, są nazywane aksjomatami logicznymi.

Reguła wnioskowania | edytuj kod

Jeśli φ 1 , φ 2 , ψ {\displaystyle \varphi _{1},\varphi _{2},\psi } są formułami języka L ( τ ) , {\displaystyle {\mathcal {L}}(\tau ),} oraz φ 1 {\displaystyle \varphi _{1}} jest postaci φ 2     ψ {\displaystyle \varphi _{2}\ \Rightarrow \ \psi } to powiemy, że formuła ψ {\displaystyle \psi } może być wywnioskowana z φ 1 , φ 2 {\displaystyle \varphi _{1},\varphi _{2}} w oparciu o regułę modus ponens.

Dowód | edytuj kod

Niech A F {\displaystyle A\subseteq \mathbf {F} } będzie jakimś zbiorem formuł języka L ( τ ) {\displaystyle {\mathcal {L}}(\tau )} (możliwie pustym). Dowodem ze zbioru aksjomatów A nazywamy skończony ciąg formuł φ 1 , , φ k {\displaystyle \langle \varphi _{1},\dots ,\varphi _{k}\rangle } taki, że dla każdego 1 j k , {\displaystyle 1\leqslant j\leqslant k,}

φ j {\displaystyle \varphi _{j}} jest jedną z formuł z A lub φ j {\displaystyle \varphi _{j}} jest aksjomatem logicznym, lub φ j {\displaystyle \varphi _{j}} może być wywnioskowana z φ k , φ l {\displaystyle \varphi _{k},\varphi _{l}} w oparciu o regułę modus ponens. dla pewnych k , l . {\displaystyle k,l.}

Jeśli φ 1 , , φ k {\displaystyle \langle \varphi _{1},\dots ,\varphi _{k}\rangle } jest dowodem ze zbioru aksjomatów A, to powiemy że formuła φ = φ j {\displaystyle \varphi =\varphi _{j}} jest dowodliwa z A albo też że φ = φ j {\displaystyle \varphi =\varphi _{j}} jest twierdzeniem z A i napiszemy wtedy A φ . {\displaystyle A\vdash \varphi .} Jeśli A jest zbiorem pustym to możemy pominąć je w naszych oznaczeniach i napisać φ . {\displaystyle \vdash \varphi .}

Powiemy, że A jest sprzecznym zbiorem aksjomatów, jeśli dla pewnej formuły φ {\displaystyle \varphi } mamy zarówno że A φ , {\displaystyle A\vdash \varphi ,} jak i A ¬ φ . {\displaystyle A\vdash \neg \varphi .} W przeciwnym razie mówimy, że A jest niesprzeczny.

Podstawowe własności | edytuj kod

Niech A F {\displaystyle A\subseteq \mathbf {F} } będzie jakimś zbiorem formuł języka L ( τ ) {\displaystyle {\mathcal {L}}(\tau )} oraz niech φ , ψ {\displaystyle \varphi ,\psi } będą formułami tegoż języka.

  • Twierdzenie o dedukcji: A φ ψ {\displaystyle A\vdash \varphi \Rightarrow \psi } wtedy i tylko wtedy, gdy A { φ } ψ . {\displaystyle A\cup \{\varphi \}\vdash \psi .}
  • Twierdzenie o uogólnianiu: Jeśli zmienna x nie pojawia się jako zmienna wolna żadnej z formuł w A oraz A φ , {\displaystyle A\vdash \varphi ,} to A ( x ) ( φ ) . {\displaystyle A\vdash (\forall x)(\varphi ).}
  • Twierdzenie o wprowadzeniu kwantyfikatora {\displaystyle \forall } :
(1) Przypuśćmy że term t może być podstawiony za zmienną x w ψ . {\displaystyle \psi .} Jeśli A ψ ( x / t ) φ , {\displaystyle A\vdash \psi (x/t)\Rightarrow \varphi ,} to A ( x ) ( ψ ) φ . {\displaystyle A\vdash (\forall x)(\psi )\Rightarrow \varphi .} (2) Przypuśćmy że zmienna x nie jest wolna w ψ {\displaystyle \psi } ani w żadnej z formuł w zbiorze A. Jeśli A ψ φ , {\displaystyle A\vdash \psi \Rightarrow \varphi ,} to A ψ ( x ) ( φ ) . {\displaystyle A\vdash \psi \Rightarrow (\forall x)(\varphi ).}
  • Twierdzenie o wprowadzeniu kwantyfikatora {\displaystyle \exists } :
(1) Przypuśćmy że term t może być podstawiony za zmienną x w φ . {\displaystyle \varphi .} Jeśli A φ ψ ( x / t ) , {\displaystyle A\vdash \varphi \Rightarrow \psi (x/t),} to A φ ( x ) ( ψ ) . {\displaystyle A\vdash \varphi \Rightarrow (\exists x)(\psi ).} (2) Przypuśćmy że zmienna x nie jest wolna w ψ {\displaystyle \psi } ani w żadnej z formuł w zbiorze A. Jeśli A φ ψ , {\displaystyle A\vdash \varphi \Rightarrow \psi ,} to A ( x ) ( φ ) ψ . {\displaystyle A\vdash (\exists x)(\varphi )\Rightarrow \psi .}
  • Twierdzenie o zwartości I: zbiór zdań A jest niesprzeczny wtedy i tylko wtedy, gdy każdy jego podzbiór skończony jest niesprzeczny.

Interpretacje (modele) języka pierwszego rzędu | edytuj kod

Ustalmy alfabet τ , {\displaystyle \tau ,} ponadto ustalmy że S τ {\displaystyle S_{\tau }} jest zbiorem stałych tego alfabetu, F τ {\displaystyle F_{\tau }} jest zbiorem symboli funkcyjnych a R τ {\displaystyle R_{\tau }} to zbiór symboli relacyjnych.

Modele | edytuj kod

Interpretacją lub modelem języka L ( τ ) {\displaystyle {\mathcal {L}}(\tau )} nazywamy układ

M = ( M ; R M , , f M , , c M , ) R R τ , f F τ , c S τ , {\displaystyle {\mathcal {M}}=(M;R^{\mathcal {M}},\dots ,f^{\mathcal {M}},\dots ,c^{\mathcal {M}},\dots )_{R\in R_{\tau },f\in F_{\tau },c\in S_{\tau }},}

gdzie:

  • M jest niepustym zbiorem zwanym dziedziną lub uniwersum modelu M {\displaystyle {\mathcal {M}}} (często uniwersum modelu M {\displaystyle {\mathcal {M}}} oznacza się przez | M | {\displaystyle |{\mathcal {M}}|} ),
  • dla n-arnego symbolu relacyjnego R R τ , {\displaystyle R\in R_{\tau },} R M {\displaystyle R^{\mathcal {M}}} jest n-argumentową relacją na zbiorze M, tzn. R M M n , {\displaystyle R^{\mathcal {M}}\subseteq M^{n},}
  • dla n-arnego symbolu funkcyjnego f F τ , {\displaystyle f\in F_{\tau },} f M {\displaystyle f^{\mathcal {M}}} jest n-argumentowym działaniem na zbiorze M, tzn. f M : M n M , {\displaystyle f^{\mathcal {M}}:M^{n}\longrightarrow M,}
  • dla stałej c S τ , {\displaystyle c\in S_{\tau },} c M {\displaystyle c^{\mathcal {M}}} jest elementem zbioru M.

Interpretacja termów w modelu | edytuj kod

Przez indukcję po złożoności termów języka L ( τ ) {\displaystyle {\mathcal {L}}(\tau )} definiujemy interpretację termu w modelu M {\displaystyle {\mathcal {M}}} . Dla termu t T {\displaystyle t\in \mathbf {T} } o zmiennych wolnych zawartych wśród x 1 , , x n {\displaystyle x_{1},\dots ,x_{n}} i dla elementów m 1 , , m n M {\displaystyle m_{1},\dots ,m_{n}\in M} uniwersum modelu M {\displaystyle {\mathcal {M}}} wprowadzamy t M m 1 , , m n M {\displaystyle t^{\mathcal {M}}[m_{1},\dots ,m_{n}]\in M} następująco.

  • Jeśli t jest stałą c alfabetu τ, to t M m 1 , , m n = c M . {\displaystyle t^{\mathcal {M}}[m_{1},\dots ,m_{n}]=c^{\mathcal {M}}.}
  • Jeśli t jest zmienną x i , {\displaystyle x_{i},} to t M m 1 , , m n = m i . {\displaystyle t^{\mathcal {M}}[m_{1},\dots ,m_{n}]=m_{i}.}
  • Jeśli t 1 , , t k T {\displaystyle t_{1},\dots ,t_{k}\in \mathbf {T} } i f τ {\displaystyle f\in \tau } jest k {\displaystyle k} -arnym symbolem funkcyjnym, to t M m 1 , , m n = f M ( t 1 M m 1 , , m n , , t k M m 1 , , m n ) . {\displaystyle t^{\mathcal {M}}[m_{1},\dots ,m_{n}]=f^{\mathcal {M}}(t_{1}^{\mathcal {M}}[m_{1},\dots ,m_{n}],\dots ,t_{k}^{\mathcal {M}}[m_{1},\dots ,m_{n}]).}

Relacja spełniania w modelu | edytuj kod

Przez indukcję po złożoności formuł języka L ( τ ) {\displaystyle {\mathcal {L}}(\tau )} definiujemy, kiedy formuła jest spełniona w modelu M {\displaystyle {\mathcal {M}}} . Dla formuły φ F {\displaystyle \varphi \in \mathbf {F} } o zmiennych wolnych zawartych wśród x 1 , , x n {\displaystyle x_{1},\dots ,x_{n}} i elementów m 1 , , m n M {\displaystyle m_{1},\dots ,m_{n}\in M} uniwersum modelu M {\displaystyle {\mathcal {M}}} wprowadzamy relację M φ m 1 , , m n {\displaystyle {\mathcal {M}}\models \varphi [m_{1},\dots ,m_{n}]} (czyt. „formuła φ {\displaystyle \varphi } jest spełniona w modelu M {\displaystyle {\mathcal {M}}} na elementach m 1 , , m n {\displaystyle m_{1},\dots ,m_{n}} ”) następująco.

  • Jeśli φ jest formułą t 1 = t 2 {\displaystyle t_{1}=t_{2}} dla pewnych termów t 1 , t 2 T {\displaystyle t_{1},t_{2}\in \mathbf {T} } których zmienne wolne są zawarte wśród x 1 , , x n , {\displaystyle x_{1},\dots ,x_{n},} to stwierdzimy że M φ m 1 , , m n {\displaystyle {\mathcal {M}}\models \varphi [m_{1},\dots ,m_{n}]} jest prawdziwe wtedy i tylko wtedy, gdy elementy t 1 M m 1 , , m n {\displaystyle t_{1}^{\mathcal {M}}[m_{1},\dots ,m_{n}]} i t 2 M m 1 , , m n {\displaystyle t_{2}^{\mathcal {M}}[m_{1},\dots ,m_{n}]} zbioru M są identyczne.
  • Jeśli φ jest formułą P ( t 1 , , t k ) {\displaystyle P(t_{1},\dots ,t_{k})} dla pewnych termów t 1 , , t k T {\displaystyle t_{1},\dots ,t_{k}\in \mathbf {T} } których zmienne wolne są zawarte wśród x 1 , , x n {\displaystyle x_{1},\dots ,x_{n}} i k-arnego symbolu relacyjnego P τ , {\displaystyle P\in \tau ,} to stwierdzimy że M φ m 1 , , m n {\displaystyle {\mathcal {M}}\models \varphi [m_{1},\dots ,m_{n}]} jest prawdziwe wtedy i tylko wtedy, gdy elementy ( t 1 M m 1 , , m n , , t k M m 1 , , m n ) P M . {\displaystyle (t_{1}^{\mathcal {M}}[m_{1},\dots ,m_{n}],\dots ,t_{k}^{\mathcal {M}}[m_{1},\dots ,m_{n}])\in P^{\mathcal {M}}.}
  • Jeśli φ jest formułą ( ψ 1 ψ 2 ) {\displaystyle (\psi _{1}\wedge \psi _{2})} dla pewnych formuł ψ 1 , ψ 2 F {\displaystyle \psi _{1},\psi _{2}\in \mathbf {F} } których zmienne wolne są zawarte wśród x 1 , , x n , {\displaystyle x_{1},\dots ,x_{n},} to stwierdzimy że M φ m 1 , , m n {\displaystyle {\mathcal {M}}\models \varphi [m_{1},\dots ,m_{n}]} jest prawdziwe wtedy i tylko wtedy, gdy M ψ 1 m 1 , , m n {\displaystyle {\mathcal {M}}\models \psi _{1}[m_{1},\dots ,m_{n}]} oraz M ψ 2 m 1 , , m n . {\displaystyle {\mathcal {M}}\models \psi _{2}[m_{1},\dots ,m_{n}].}
  • Jeśli φ jest formułą ( ψ 1 ψ 2 ) {\displaystyle (\psi _{1}\vee \psi _{2})} dla pewnych formuł ψ 1 , ψ 2 F {\displaystyle \psi _{1},\psi _{2}\in \mathbf {F} } których zmienne wolne są zawarte wśród x 1 , , x n , {\displaystyle x_{1},\dots ,x_{n},} to stwierdzimy że M φ m 1 , , m n {\displaystyle {\mathcal {M}}\models \varphi [m_{1},\dots ,m_{n}]} jest prawdziwe wtedy i tylko wtedy, gdy M ψ 1 m 1 , , m n {\displaystyle {\mathcal {M}}\models \psi _{1}[m_{1},\dots ,m_{n}]} lub M ψ 2 m 1 , , m n . {\displaystyle {\mathcal {M}}\models \psi _{2}[m_{1},\dots ,m_{n}].}
  • Jeśli φ jest formułą ( ψ 1 ψ 2 ) {\displaystyle (\psi _{1}\Rightarrow \psi _{2})} dla pewnych formuł ψ 1 , ψ 2 F {\displaystyle \psi _{1},\psi _{2}\in \mathbf {F} } których zmienne wolne są zawarte wśród x 1 , , x n , {\displaystyle x_{1},\dots ,x_{n},} to stwierdzimy że M φ m 1 , , m n {\displaystyle {\mathcal {M}}\models \varphi [m_{1},\dots ,m_{n}]} jest prawdziwe wtedy i tylko wtedy, gdy M ψ 2 m 1 , , m n {\displaystyle {\mathcal {M}}\models \psi _{2}[m_{1},\dots ,m_{n}]} lub nie zachodzi że M ψ 1 m 1 , , m n . {\displaystyle {\mathcal {M}}\models \psi _{1}[m_{1},\dots ,m_{n}].}
  • Jeśli φ jest formułą ( ψ 1 ψ 2 ) {\displaystyle (\psi _{1}\Leftrightarrow \psi _{2})} dla pewnych formuł ψ 1 , ψ 2 F {\displaystyle \psi _{1},\psi _{2}\in \mathbf {F} } których zmienne wolne są zawarte wśród x 1 , , x n , {\displaystyle x_{1},\dots ,x_{n},} to stwierdzimy że M φ m 1 , , m n {\displaystyle {\mathcal {M}}\models \varphi [m_{1},\dots ,m_{n}]} jest prawdziwe wtedy i tylko wtedy, gdy albo oba zdania M ψ 1 m 1 , , m n {\displaystyle {\mathcal {M}}\models \psi _{1}[m_{1},\dots ,m_{n}]} i M ψ 2 m 1 , , m n {\displaystyle {\mathcal {M}}\models \psi _{2}[m_{1},\dots ,m_{n}]} są prawdziwe, albo oba są fałszywe.
  • Jeśli φ jest formułą ¬ ψ {\displaystyle \neg \psi } dla pewnej formuły ψ F {\displaystyle \psi \in \mathbf {F} } której zmienne wolne są zawarte wśród x 1 , , x n , {\displaystyle x_{1},\dots ,x_{n},} to stwierdzimy że M φ m 1 , , m n {\displaystyle {\mathcal {M}}\models \varphi [m_{1},\dots ,m_{n}]} jest prawdziwe wtedy i tylko wtedy, gdy zdanie M ψ m 1 , , m n {\displaystyle {\mathcal {M}}\models \psi [m_{1},\dots ,m_{n}]} jest fałszywe.
  • Jeśli φ jest formułą ( x j ) ( ψ ) {\displaystyle (\forall x_{j})(\psi )} dla pewnej formuły ψ F {\displaystyle \psi \in \mathbf {F} } której zmienne wolne są zawarte wśród x 1 , , x n , {\displaystyle x_{1},\dots ,x_{n},} to stwierdzimy że M φ m 1 , , m n {\displaystyle {\mathcal {M}}\models \varphi [m_{1},\dots ,m_{n}]} jest prawdziwe wtedy i tylko wtedy, gdy zdanie M ψ m 1 , , m n , , m k {\displaystyle {\mathcal {M}}\models \psi [m_{1}^{*},\dots ,m_{n}^{*},\dots ,m_{k}^{*}]} jest prawdziwe dla każdego ciągu m 1 , , m n , , m k {\displaystyle m_{1}^{*},\dots ,m_{n}^{*},\dots ,m_{k}^{*}} elementów uniwersum M takich, że j k {\displaystyle j\leqslant k} oraz m i = m i {\displaystyle m_{i}^{*}=m_{i}} ilekroć x i {\displaystyle x_{i}} jest zmienną wolną w φ.
  • Jeśli φ jest formułą ( x j ) ( ψ ) {\displaystyle (\exists x_{j})(\psi )} dla pewnej formuły ψ F {\displaystyle \psi \in \mathbf {F} } której zmienne wolne są zawarte wśród x 1 , , x n , {\displaystyle x_{1},\dots ,x_{n},} to stwierdzimy że M φ m 1 , , m n {\displaystyle {\mathcal {M}}\models \varphi [m_{1},\dots ,m_{n}]} jest prawdziwe wtedy i tylko wtedy, gdy dla pewnego ciągu m 1 , , m n , , m k {\displaystyle m_{1}^{*},\dots ,m_{n}^{*},\dots ,m_{k}^{*}} elementów uniwersum M takich, że j k {\displaystyle j\leqslant k} oraz m i = m i {\displaystyle m_{i}^{*}=m_{i}} ilekroć x i {\displaystyle x_{i}} jest zmienną wolną w φ mamy, że M ψ m 1 , , m n , , m k . {\displaystyle {\mathcal {M}}\models \psi [m_{1}^{*},\dots ,m_{n}^{*},\dots ,m_{k}^{*}].}

Podstawowe własności | edytuj kod

  • Twierdzenie o pełności: zbiór zdań A jest niesprzeczny wtedy i tylko wtedy, gdy ma on model (tzn. jest spełniony w pewnym modelu języka L ( τ ) {\displaystyle {\mathcal {L}}(\tau )} ).
  • Twierdzenie o zwartości II: zbiór zdań A ma model wtedy i tylko wtedy, gdy każdy jego podzbiór skończony ma model.

Modele niestandardowe | edytuj kod

Zazwyczaj podczas budowania zbioru aksjomatów matematycy mają na myśli jakiś konkretny model, który ma on opisywać. Niestety, najczęściej jeden zbiór aksjomatów posiada wiele nieizomorficznych modeli. „Właściwą” strukturę nazywa się wtedy modelem standardowym a każdą inną – modelem niestandardowym. Jedynie bardzo proste teorie posiadają dokładnie jeden model.

Fakt ten jest wadą logiki pierwszego rzędu. Dla większości teorii każdy skończony zbiór aksjomatów będzie zawsze nieprecyzyjny, tzn. nie będzie określał niektórych własności badanych obiektów i będzie można stworzyć zarówno model, gdzie taka własność zachodzi, jak i drugi model, gdzie ona nie zachodzi. Oba modele będą różne, ale jednak będą spełniać ten sam zestaw wyjściowych aksjomatów.

Modele niestandardowe można wyeliminować, ale potrzebne są do tego aksjomaty w logikach wyższego rzędu.

Każda aksjomatyzacja pierwszego rzędu liczb naturalnych posiada modele niestandardowe. W szczególności posiada je aksjomatyka Peana. Przykładem niestandardowego modelu aksjomatyki Peana są liczby hipernaturalne, czyli nieujemne liczby hiperrzeczywiste, które są równe swojej części całkowitej. Istnieją nawet przeliczalne modele niestandardowe arytmetyki. Dokładne opisanie takich modeli jest trudne, gdyż zarówno dodawanie, jak i mnożenie jest w nich nierozstrzygalne.

Zobacz też | edytuj kod

Przypisy | edytuj kod

  1. MartinM. Goldstern MartinM., The Incompleteness Phenomenon. A new course in mathematical logic, HaimH. Judah, Wellesley, Massachusetts: A K Peters, 1995, ISBN 1-56881-029-6, OCLC 29254857 .
  2. Witold AdamW.A. Pogorzelski Witold AdamW.A., Klasyczny rachunek kwantyfikatorów, zarys teorii, Warszawa: Państwowe Wydawnictwo Naukowe, 1981, ISBN 83-01-00567-X, OCLC 69480408 .
  3. Zofia Adamowicz, Paweł Zbierski: Logic of mathematics. A modern course of classical logic. „Pure and Applied Mathematics” (New York). A Wiley-Interscience Publication. John Wiley & Sons, Inc., New York, 1997. ​ISBN 0-471-06026-7​.
  4. Joseph R. Shoenfield: Mathematical Logic, Association for Symbolic Logic, 1967. ​ISBN 1-56881-135-7​.
Na podstawie artykułu: "Rachunek predykatów pierwszego rzędu" pochodzącego z Wikipedii
OryginałEdytujHistoria i autorzy