Tworzenie książki (wyłącz)
 Dodaj tę stronę do książki Pokaż książkę (0 stron) Proponowane strony

Rachunek predykatów pierwszego rzędu

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacji, szukaj

Rachunek predykatów pierwszego rzędu – (ang. first order predicate calculus) to 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 o książkę 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

[edytuj] Wstęp do formalizacji

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 Shelah 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:

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...

\neg(\exist x)(S(x)\and(\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.

[edytuj] Formalizacja języka {\mathcal L}(\tau)

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

Niech \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 \tau będzie nazywany alfabetem naszego języka, a sam język wyznaczony przez ten alfabet będzie oznaczany przez {\mathcal L}(\tau). Ustalmy też nieskończoną listę zmiennych (zwykle x_0,x_1,\ldots).

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

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

W formułach postaci (\exists x_i)(\varphi) i (\forall x_i)(\varphi) mówimy, że zmienna 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 (\exists x_i)(\varphi) czy też (\forall x_i)(\varphi) pojawia się jako jedna z części użytych w budowie, ale ograniczamy się do występowań zmiennej x_i w \varphi (i mówimy, że konkretne wystąpienie zmiennej jest wolne lub związane).

Zdanie w języku pierwszego rzędu {\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.

[edytuj] Przykłady

[edytuj] Dowody w językach pierwszego rzędu

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

[edytuj] Podstawienia termów za zmienne

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

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

oraz

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 \varphi za zmienną \xi jest dopuszczalne lub, że zmienna \xi jest wolna dla termu t w formule \varphi, ozn. \xi\in\bold{Ff}(t,\varphi), gdy (nieformalnie) literalne wstawienie tego termu w rozważanej formule w miejscu któregoś z wolnych wystąpień zmiennej \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:

oraz

[edytuj] Przykłady

Rozważmy język ciał uporządkowanych {\mathcal L}(\{+,\cdot,0,1,\leqslant\}). Niech termami t,s,u bedą, odpowiednio 0+x_1+x_2, (1+1)\cdot x_1 oraz x_3\cdot x_4. Rozważmy formułę \varphi=(\forall x_3)(\exists x_4)((x_1+x_3)\cdot x_7=x_4+1+0). Wówczas

[edytuj] Aksjomaty logiczne

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

x=x,
x=y\ \Rightarrow y=x i
x=y\ \wedge\ y=z\ \Rightarrow\ x=z,
gdzie x,y,z są (niekoniecznie różnymi) zmiennymi,
y_1=z_1\ \wedge\ \ldots\ \wedge y_k=z_k\ \Rightarrow\ (P(y_1,\ldots,y_k)\Leftrightarrow P(z_1,\ldots,z_k)),
gdzie z_1,\ldots,z_k,y_1,\ldots,y_k są zmiennymi a P\in \tau jest k-arnym symbolem relacyjnym,
y_1=z_1\ \wedge\ \ldots\ \wedge y_k=z_k\ \Rightarrow\ (f(y_1,\ldots,y_k)=f(z_1,\ldots,z_k)),
gdzie z_1,\ldots,z_k,y_1,\ldots,y_k są zmiennymi a f\in \tau jest k-arnym symbolem funkcyjnym.

Aksjomaty czyste i formuły postaci (\forall y_1)\ldots(\forall y_n)(\varphi), gdzie \varphi jest aksjomatem czystym, są nazywane aksjomatami logicznymi.

[edytuj] Reguła wnioskowania

Jeśli \varphi_1,\varphi_2,\psi są formułami języka {\mathcal L}(\tau), oraz \phi_1 jest postaci \varphi_2\ \Rightarrow\ \psi to powiemy, że formuła \psi może być wywnioskowana z \varphi_1,\varphi_2 w oparciu o regułę modus ponens.

[edytuj] Dowód

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

\varphi_j jest jedną z formuł z A, lub
\varphi_j jest aksjomatem logicznym, lub
\varphi_j może być wywnioskowana z \varphi_k,\varphi_l w oparciu o regułę modus ponens. dla pewnych k,l.

Jeśli \langle\varphi_1,\ldots,\varphi_k\rangle jest dowodem ze zbioru aksjomatów A, to powiemy że formuła \varphi=\varphi_j jest dowodliwa z A albo też że \varphi=\varphi_j jest twierdzeniem z A i napiszemy wtedy A\vdash \varphi. Jeśli A jest zbiorem pustym to możemy pominąć je w naszych oznaczeniach i napisać \vdash \varphi.

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

[edytuj] Podstawowe własności

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

(1) Przypuśćmy że term t może być podstawiony za zmienną x w \psi. Jeśli A\vdash \psi(x/t)\Rightarrow\varphi, to A\vdash (\forall x)(\psi)\Rightarrow\varphi.
(2) Przypuśćmy że zmienna x nie jest wolna w \psi ani w żadnej z formuł w zbiorze A. Jeśli A\vdash \psi\Rightarrow\varphi, to A\vdash \psi\Rightarrow (\forall x)(\varphi).
(1) Przypuśćmy że term t może być podstawiony za zmienną x w \varphi. Jeśli A\vdash \varphi\Rightarrow\psi(x/t), to A\vdash \varphi\Rightarrow(\exists x)(\psi).
(2) Przypuśćmy że zmienna x nie jest wolna w \psi ani w żadnej z formuł w zbiorze A. Jeśli A\vdash \varphi\Rightarrow\psi, to A\vdash (\exists x)(\varphi)\Rightarrow\psi.

[edytuj] Interpretacje (modele) języka pierwszego rzędu

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

[edytuj] Modele

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

{\mathcal M} = (M; R^{\mathcal M},\ldots, f^{\mathcal M},\ldots, c^{\mathcal M},\ldots)_{R\in R_\tau, f\in F_\tau, c\in S_\tau}

gdzie

[edytuj] Interpretacja termów w modelu

Przez indukcję po złożoności termów języka {\mathcal L}(\tau) definiujemy interpretację termu w modelu {\mathcal M}. Dla termu t\in {\bold T} o zmiennych wolnych zawartych wśród x_1,\ldots,x_n i dla elementów m_1,\ldots,m_n\in M uniwersum modelu {\mathcal M} wprowadzamy t^{\mathcal M}[m_1,\ldots,m_n]\in M następująco.

[edytuj] Relacja spełniania w modelu

Przez indukcję po złożoności formuł języka {\mathcal L}(\tau) definiujemy kiedy formuła jest spełniona w modelu {\mathcal M}. Dla formuły \varphi\in {\bold F} o zmiennych wolnych zawartych wśród x_1,\ldots,x_n i elementów m_1,\ldots,m_n\in M uniwersum modelu {\mathcal M} wprowadzamy relację {\mathcal M}\models \varphi[m_1,\ldots,m_n] (czyt. "formuła \varphi jest spełniona w modelu {\mathcal M} na elementach m_1,\ldots,m_n") następująco.

[edytuj] Podstawowe własności

[edytuj] Zobacz też

Przypisy

  1. Martin Goldstern; Haim Judah: The Incompleteness Phenomenon. A new course in mathematical logic. A K Peters, Wellesley, Massachusetts, 1995. ISBN 1-56881-029-6
  2. Witold A. Pogorzelski: Klasyczny rachunek kwantyfikatorów, zarys teorii, Państwowe Wydawnictwo Naukowe, Warszawa 1981. ISBN 83-01-00567-X
  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.
Źródło „http://pl.wikipedia.org/w/index.php?title=Rachunek_predykatów_pierwszego_rzędu&oldid=31142863
Osobiste
Przestrzenie nazw

Warianty
Działania
Nawigacja
Dla czytelników
Dla wikipedystów
Narzędzia
Drukuj lub eksportuj
W innych językach

Polecamy: Pozycjonowanie, wózki dziecięce, Kino domowe, Viagra, Kredyty