Logika dla informatyków/Teoria modeli
W tym rozdziale poznamy podstawowe fakty z teorii modeli. Większość znich to wnioski z twierdzenia o pełności.
Zaczniemy od twierdzenia o zwartości.
Twierdzenie 8.1 (o zwartości)
- Dla dowolnego zbioru formuł i dowolnej formuły Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \var\varphi,} jeśli Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \Delta\models\var\varphi,} to istnieje skończony podzbiór taki, że Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \Delta_0\models\var\varphi.}
- Dla dowolnego zbioru formuł , jeśli każdy skończony podzbiór jest spełnialny, to też jest spełnialny.
Dowód
W części pierwszej, jeśli Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \Delta\models\var\varphi,} to z twierdzenia o pełności wynika, że Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \Delta\vdash_H\var\varphi} . W dowodzie występuje tylko skończenie wiele formuł z . Jeśli jest zbiorem wszystkich tych formuł, to oczywiścieParser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \Delta_0\vdash_H\var\varphi} . Z twierdzenia o poprawności wynika, że Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \Delta_0\models\var\varphi} .
Część druga wynika z części pierwszej, gdy przyjmiemy Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \var\varphi=\bot} .Niespełnialność zbioru to bowiem to samo, co .

Pierwszym ważnym przykładem zastosowania twierdzenia o zwartości jestdowód innego ważnego twierdzenia teorii modeli.
Twierdzenie 8.2 (Skolem, Löwenheim, Tarski)
Jeśli zbiór formuł nad ma model nieskończony, to matakże model każdej mocy gdzie to moc zbioru symboli występujących w
Dowód
Niech będzie zbiorem nowych symboli stałych, dotychczas niewystępujących w , którego moc wynosi Niech oraz różne od }.
Ten nowy zbiór formuł nad nową sygnaturą jest spełnialny. Aby się o tym przekonać, weźmy dowolny skończony podzbiór oraz nieskończony model zbioru (o którego istnieniu wiemy z założeń). Zinterpretujmy w skończenie wiele symboli z które występują w , jako dowolnie wybrane, różne elementy. Jest oczywiste, że określony w ten sposób model spełnia. Zatem na mocy twierdzenia o zwartości, istotnie też ma model.
Wynika stąd, że jest zbiorem niesprzecznym. Stosując doniego twierdzenie o istnieniu modelu, otrzymujemy model omocy nie przekraczającej mocy zbioru wszystkich formuł logiki pierwszego rzędu nad która wynosi , ale jednocześnienie mniejszej niż , bo wszystkie stałe z muszą być w nim zinterpretowane jako różne elementy.
Jeśli teraz w modelu zignorujemy interpretację stałych z to otrzymamy -strukturę mocy Parser nie mógł rozpoznać (nieznana funkcja „\m”): {\displaystyle \m} , która jest modelem zbioru

Wniosek
Historycznie rzecz biorąc, twierdzenie Skolema-L\"owenheima-Tarskiegojest następcą dwóch słabszych i starszych twierdzeń, które zresztąnadal są przywoływane. Zatem dla pełności informacji formułujemy jeponiżej.
Twierdzenie Dolne twierdzenie Skolema-L\"owenheima
Twierdzenie Górne twierdzenie Skolema-L\"owenheima
Najstarszym pr\leftrightarrowplastą tej grupy twierdzeń było po prostu
Twierdzenie Skolema-L\"owenheima
W tym sformułowaniu twierdzenie to daje się\boldsymbol{s}}\def\blank{\hbox{\sf Bdowodnić bez odwołania dotwierdzeń o pełności ani o istnieniu modelu i było znane wcześniej odnich.
Wywołało ono kiedyś potężny ferment w dziedzinie logiki: jak to jestmożliwe, że teria mnogości ma przeliczalny model, gdy skądinąd musi onzawierać zbiory nieprzeliczalne, jak np. Parser nie mógł rozpoznać (nieznana funkcja „\pot”): {\displaystyle \pot{\NN}} ? Oczywiście niktwolał głośno nie wypowiadać drugiej\Delta\vdashwentualności: że teoria mnogościnie ma żadnego modelu i jest po prostu sprzeczna. Nic więc dziwnego,że to twierdzenie było znane początkowo jako Paradoks Skolema. Naszczęście staranna analiza wskazuje, że nie mamy tu jednak doczynienia z antynomią. Otóż jeśli mamy przeliczalny model teoriimnogości, to wszystkie zbiory do niego należące oglądane \textit{zzewnątrz} są przeliczalne. Jednak dla niektórych z nich, np.\ dlainterpretacji Parser nie mógł rozpoznać (nieznana funkcja „\pot”): {\displaystyle \pot{\NN}} , żadna funkcja z interpretacji Parser nie mógł rozpoznać (nieznana funkcja „\NN”): {\displaystyle \NN} zbioruliczb naturalnych na interpretację Parser nie mógł rozpoznać (nieznana funkcja „\pot”): {\displaystyle \pot{\NN}} sama nie jest\Delta\vdashlementem\textit{tego modelu}. \Rightarrow już wystarcza, aby spełniał on zdaniemówiące, że Parser nie mógł rozpoznać (nieznana funkcja „\pot”): {\displaystyle \pot{\NN}} jest nieprzeliczalny.
Tradycyjnie o wszystkich twierdzeniach z powyższej grupy mówi się,,twierdzenie Skolema-L\"owenheima.
Twierdzenie o zwartości i twierdzeń Skolema-L\"owenheima często\boldsymbol{s}}\def\blank{\hbox{\sf Bżywasię do tego, by wykazać istnienie różnych nietypowych modeli. Jeśliprzypomnimy sobie\Delta\vdashlementarną równoważność </math>\langle\mathbb{R},\leq\rangle\equiv\langle \mathbb{Q},\leq\rangle</math>,wyprowadzoną jako wniosek z Twierdzenia #Cantoro, to rozpoznamy wniej również potencjalny\Delta\vdashfekt zastosowania \begin{eqnarray*}dolnego\end{eqnarray*} twierdzeniaSkolema-L\"owenheima.
Klasycznym przykładem zastosowania twierdzenia o zwartości jestponiższy fakt:
Twierdzenie
<span id=" n\in\NN\}Parser nie mógł rozpoznać (błąd składni): {\displaystyle . Oczywiście } \\bigwedge_{i<j}x_i\neqx_j</math> oznacza koniunkcję wszystkich Parser nie mógł rozpoznać (błąd składni): {\displaystyle n\begin{eqnarray*}n-1\end{eqnarray*}} formuł postaci
wktórych
Zbiór jest spełnialny, bo każdy jego skończony podzbiór jest spełnialny. Istotnie, modelem jest każdy model mocy co najmniej\mbox{</math>\max\{n " style="font-variant:small-caps">Dowód

Twierdzenie o zwartości może też służyć do dowodzenia niewyrażalnościpewnych pojęć w logice pierwszego rzędu. Posłużymy się tu następującymprzykładem.
Twierdzenie
Dowód
\def\blank{\hbox{\sf Btraty ogólności możemy założyć, że
zawiera już zwykłe aksjomaty liniowych porządków. Niech
będzie zbiorem nowych stałych.
Niech Parser nie mógł rozpoznać (błąd składni): {\displaystyle \bar\Delta=\Delta\cup\{c_i<c_j | j<i\}.} Każdy skończonypodzbiór jest spełnialny, np. w zbiorze Parser nie mógł rozpoznać (nieznana funkcja „\NN”): {\displaystyle \NN,} w którym każda stała występująca w jest interpretowana jako zaś pozostałe stałe jako .
Zatem na mocy twierdzenia o zwartości jest równieżspełnialny. Niech Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA} będzie modelem . RelacjaParser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \leq^\strA} jest porządkiem liniowym, spełnia , ale nie jestporządkiem dobrym, bo zawiera nieskończony ciąg zstępującyParser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle c_0^\strA>c_1^\strA>c_2^\strA>\dots} .}}
Interesujące jest porównanie powyższego dowodu z alternatywnym dowodemza pomocą metody Fra\"{\i}ss\'e, sugerowanym w Ćwiczeniu #c doRozdziału #EF.
\subsection*{Ćwiczenia}\begin{small}
- Wskazać przykład takiego zbioru zdań logiki pierwszego rzędu,że każde dwa jego \textit{przeliczalne} modele są izomorficzne, aleistnieją dwa \textit{nieprzeliczalne}, nieizomorficzne ze soba modelezbioru
- Udowodnić, że dla każdej struktury skończonej Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA} nad skończonąsygnaturą istnieje taki zbiór zdań pierwszego rzędu,że Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA\models\Delta} i dla każdej struktury Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle \strB\models\Delta} zachodzi Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle \strB\cong\strA.}
- Niech będzie skończoną sygnaturą. Udowodnić, że dlakażdego zbioru zdań nad następujące dwa warunkisą równoważne
- ma wyłącznie skończone modele.
- ma z dokładnością do izomorfizmu skończenie wiele modeli.
\item Udowodnić, że klasa wszystkich struktur izomorficznych zestrukturą postaci \mbox{</math>\strA=\langle\mathcal{P}\begin{eqnarray*}A\end{eqnarray*},\cup,\cap,\subseteq\rangle</math>}, gdzie oraz są odpowiednio sumą, przecięciem i zawieraniem zbiorów,nie jest aksjomatyzowalna żadnym zbiorem zdań pierwszego rzędu.
\item Pokazać, że jeśli klasa struktur nad sygnaturą jest aksjomatyzowalna pewnym zbiorem zdań logiki pierwszegorzędu, oraz jej dopełnienie składające sięze struktur sygnatury ktore nie należą do teżjest aksjomatyzowalne, to każda z tych klas jest w istocie aksjomatyzowalna\textit{jednym} zdaniem pierwszego rzędu.
{\em Wskazówka:\/} Założyć, że pierwsza klasa jest aksjomatyzowalnaprzez , a druga przez ale żaden skończony podzbiór nie jest aksjomatyzacją Pokazać, że spełnia założenia twierdzenia o zwartości.
\item Pokazać następujące twierdzenie Robinsona: Jeśli są spełnialnymi zbiorami zdań nad pewną sygnaturą zaś nie jest spełnialny, to istniejetakie zdanie Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \var\varphi} , że Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \Delta\models\var\varphi} orazParser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \Delta'\models\lnot\var\varphi.}
{\em Wskazówka:\/} Pokazać, że jeśli teza nie zachodzi, to spełnia założenia twierdzenia o zwartości.
\item Niech Parser nie mógł rozpoznać (błąd składni): {\displaystyle Spec\begin{eqnarray*}\var\varphi\end{eqnarray*}} oznacza zbiór mocy wszystkich skończonych modeli formuły Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \var\varphi.} Pokazać, że jeśli jest takim zbiorem zdań, iż dlakażdego Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \var\varphi\in\Delta} zbiór Parser nie mógł rozpoznać (błąd składni): {\displaystyle Spec\begin{eqnarray*}\lnot\var\varphi\end{eqnarray*}} jest skończony,oraz jeśli to także Parser nie mógł rozpoznać (błąd składni): {\displaystyle Spec\begin{eqnarray*}\lnot\psi\end{eqnarray*}} jestskończony.
\end{small}