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

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

Każdy język pierwszego rzędu jest zdeterminowany przez ustalenie alfabetu.
Niech
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
będzie nazywany alfabetem naszego języka, a sam język wyznaczony przez ten alfabet będzie oznaczany przez
. Ustalmy też nieskończoną listę zmiennych (zwykle
).
Najpierw definiujemy termy języka
jako elementy najmniejszego zbioru
takiego, że:
,
i
jest
-arnym symbolem funkcyjnym, to
.Następnie określamy zbiór formuł języka
jako najmniejszy zbiór
taki, że:
, to wyrażenie
należy do
,
zaś
jest
-arnym symbolem relacyjnym, to wyrażenie
należy do
,
i
jest binarnym spójnikiem zdaniowym (alternatywą
, koniunkcją
, implikacją
lub równoważnością
), to
oraz
,
jest zmienną oraz
, to także
i
.W formułach postaci
i
mówimy, że zmienna
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
czy też
pojawia się jako jedna z części użytych w budowie, ale ograniczamy się do występowań zmiennej
w
(i mówimy, że konkretne wystąpienie zmiennej jest wolne lub związane).
Zdanie w języku pierwszego rzędu
to taka formuła, w której każda zmienna jest związana, czyli znajduje się w zasięgu działania jakiegoś kwantyfikatora.
, gdzie
jest binarnym symbolem relacyjnym.
, gdzie
jest binarnym symbolem funkcyjnym.
, gdzie
są binarnymi symbolami funkcyjnymi a
jest binarnym symbolem relacyjnym.Ustalmy alfabet
(tak więc jest to zbiór złożony ze stałych, symboli funkcyjnych i symboli relacyjnych).
Przypuśćmy, że t i s są termami języka
oraz
jest jedną ze zmiennych. Definiujemy podstawienie
jako term, który powstaje z s poprzez literalne zastąpienie w nim wszystkich egzemplarzy zmiennej
termem t.
W przypadku zmiennej
, termu t i formuły
podstawienie
definiuje się bardziej subtelnie, co najlepiej ująć indukcyjnie względem budowy formuły
(por. [2]:
jest formułą atomową
, to 
, to
, gdzie 
, to 
oraz
, gdzie
, to
, jeśli
oraz
, 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
za zmienną
jest dopuszczalne lub, że zmienna
jest wolna dla termu t w formule
, ozn.
, gdy (nieformalnie) literalne wstawienie tego termu w rozważanej formule w miejscu któregoś z wolnych wystąpień zmiennej
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:
, to 
jest formułą atomową, to 
, to
, gdzie 
, to 
oraz
, to
, gdzie
.Rozważmy język ciał uporządkowanych
. Niech termami
bedą, odpowiednio
,
oraz
. Rozważmy formułę
. Wówczas
to term
,
to term
,
to formuła
i podstawienie termu
za zmienną
w
jest dopuszczalne,
oraz
są równokszałtne z
, przy czym podstawienie termu
za zmienną
jest niedopuszczalne, zaś podstawienie tego samego termu za zmienną
jest dopuszczalne (choć nieskuteczne), bowiem zmienna ta nie jest wolna w rozważanej formule.Formuły następujących typów będą nazywane aksjomatami czystymi:
(gdzie
to formuły),
, gdzie term
może być podstawiony za zmienną
w
,
gdzie zmienna
nie jest wolna w formule
,
,
i
,
są (niekoniecznie różnymi) zmiennymi,
,
są zmiennymi a
jest k-arnym symbolem relacyjnym,
,
są zmiennymi a
jest k-arnym symbolem funkcyjnym.Aksjomaty czyste i formuły postaci
, gdzie
jest aksjomatem czystym, są nazywane aksjomatami logicznymi.
Jeśli
są formułami języka
, oraz
jest postaci
to powiemy, że formuła
może być wywnioskowana z
w oparciu o regułę modus ponens.
Niech
będzie jakimś zbiorem formuł języka
(możliwie pustym). Dowodem ze zbioru aksjomatów A nazywamy skończony ciąg formuł
taki, że dla każdego
,
jest jedną z formuł z A, lub
jest aksjomatem logicznym, lub
może być wywnioskowana z
w oparciu o regułę modus ponens. dla pewnych
.Jeśli
jest dowodem ze zbioru aksjomatów A, to powiemy że formuła
jest dowodliwa z A albo też że
jest twierdzeniem z A i napiszemy wtedy
. Jeśli A jest zbiorem pustym to możemy pominąć je w naszych oznaczeniach i napisać
.
Powiemy, że A jest sprzecznym zbiorem aksjomatów, jeśli dla pewnej formuły
mamy zarówno że
jak i
. W przeciwnym razie mówimy, że A jest niesprzeczny.
Niech
będzie jakimś zbiorem formuł języka
oraz niech
będą formułami tegoż języka.
wtedy i tylko wtedy gdy
.
, to
.
:
. Jeśli
, to
.
ani w żadnej z formuł w zbiorze A. Jeśli
, to
.
:
. Jeśli
, to
.
ani w żadnej z formuł w zbiorze A. Jeśli
, to
.Ustalmy alfabet
, ponadto ustalmy że
jest zbiorem stałych tego alfabetu,
jest zbiorem symboli funkcyjnych a
to zbiór symboli relacyjnych.
Interpretacją lub modelem języka
nazywamy układ

gdzie
(często uniwersum modelu
oznacza się przez
),
,
jest n-argumentową relacją na zbiorze M, tzn.
,
,
jest n-argumentowym działaniem na zbiorze M, tzn.
,
,
jest elementem zbioru M.Przez indukcję po złożoności termów języka
definiujemy interpretację termu w modelu
. Dla termu
o zmiennych wolnych zawartych wśród
i dla elementów
uniwersum modelu
wprowadzamy
następująco.
.
, to
.
i
jest
-arnym symbolem funkcyjnym, to
.Przez indukcję po złożoności formuł języka
definiujemy kiedy formuła jest spełniona w modelu
. Dla formuły
o zmiennych wolnych zawartych wśród
i elementów
uniwersum modelu
wprowadzamy relację
(czyt. "formuła
jest spełniona w modelu
na elementach
") następująco.
dla pewnych termów
których zmienne wolne są zawarte wśród
, to stwierdzimy że
jest prawdziwe wtedy i tylko wtedy gdy elementy
i
zbioru M są identyczne.
dla pewnych termów
których zmienne wolne są zawarte wśród
i k-arnego symbolu relacyjnego
, to stwierdzimy że
jest prawdziwe wtedy i tylko wtedy gdy elementy
.
dla pewnych formuł
których zmienne wolne są zawarte wśród
, to stwierdzimy że
jest prawdziwe wtedy i tylko wtedy gdy
oraz
.
dla pewnych formuł
których zmienne wolne są zawarte wśród
, to stwierdzimy że
jest prawdziwe wtedy i tylko wtedy gdy
lub
.
dla pewnych formuł
których zmienne wolne są zawarte wśród
, to stwierdzimy że
jest prawdziwe wtedy i tylko wtedy gdy
lub nie zachodzi że
.
dla pewnych formuł
których zmienne wolne są zawarte wśród
, to stwierdzimy że
jest prawdziwe wtedy i tylko wtedy gdy albo oba zdania
i
są prawdziwe, albo oba są fałszywe.
dla pewnej formuły
której zmienne wolne są zawarte wśród
, to stwierdzimy że
jest prawdziwe wtedy i tylko wtedy gdy zdanie
jest fałszywe.
dla pewnej formuły
której zmienne wolne są zawarte wśród
, to stwierdzimy że
jest prawdziwe wtedy i tylko wtedy gdy zdanie
jest prawdziwe dla każdego ciągu
elementów uniwersum M takich, że
oraz
ilekroć
jest zmienną wolną w φ.
dla pewnej formuły
której zmienne wolne są zawarte wśród
, to stwierdzimy że
jest prawdziwe wtedy i tylko wtedy gdy dla pewnego ciągu
elementów uniwersum M takich, że
oraz
ilekroć
jest zmienną wolną w φ mamy, że
.
).