Logika dla informatyków/Teoria modeli: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Tprybick (dyskusja | edycje)
Nie podano opisu zmian
Tprybick (dyskusja | edycje)
Nie podano opisu zmian
Linia 82: Linia 82:
Przypuśćmy, że  <math>\Delta</math> ma modele skończone dowolnie dużej mocy.  
Przypuśćmy, że  <math>\Delta</math> ma modele skończone dowolnie dużej mocy.  


Niech <math>\bar\Delta=\Delta\cup\{ (\exists x_1\dots\existsx_n\\bigwedge_{i<j}x_i\neq x_j)&nbsp;|&nbsp;n\in\mathbb N\}</math>.  Oczywiście <math>\bigwedge_{i<j}x_i\neqx_j</math> oznacza koniunkcję wszystkich <math>n(n-1)</math> formuł postaci <math>x_i<x_j,</math> w których <math>i<j.</math>
Niech <math>\bar\Delta=\Delta\cup\{ (\exists x_1\dots\exists x_n\bigwedge_{i<j}x_i\neq x_j)&nbsp;|&nbsp;n\in\mathbb N\}</math>.  Oczywiście <math>\bigwedge_{i<j}x_i\neqx_j</math> oznacza koniunkcję wszystkich <math>n(n-1)</math> formuł postaci <math>x_i<x_j,</math> w których <math>i<j.</math>


Zbiór <math>\bar\Delta</math> jest spełnialny, bo każdy jego skończony podzbiór<math>\bar\Delta_0\subseteq \bar\Delta</math> jest spełnialny. Istotnie, modelem<math>\bar\Delta_0</math> jest każdy model <math>\Delta</math> mocy co najmniej <math>max\{n | (\exists x_1\dots\exists x_n \bigwedge_{i<j}x_i\neqx_j) \in\bar\Delta_0\}</math>.  Na mocy twierdzenia o zwartości <math>\bar\Delta</math>jest też spełnialny. Ma on wyłącznie modele nieskończone, a każdy jegomodel jest też modelem dla <math>\Delta.</math>
Zbiór <math>\bar\Delta</math> jest spełnialny, bo każdy jego skończony podzbiór<math>\bar\Delta_0\subseteq \bar\Delta</math> jest spełnialny. Istotnie, modelem<math>\bar\Delta_0</math> jest każdy model <math>\Delta</math> mocy co najmniej <math>max\{n | (\exists x_1\dots\exists x_n \bigwedge_{i<j}x_i\neqx_j) \in\bar\Delta_0\}</math>.  Na mocy twierdzenia o zwartości <math>\bar\Delta</math>jest też spełnialny. Ma on wyłącznie modele nieskończone, a każdy jegomodel jest też modelem dla <math>\Delta.</math>
Linia 90: Linia 90:
Twierdzenie o zwartości może też służyć do dowodzenia niewyrażalnościpewnych pojęć w&nbsp;logice pierwszego rzędu. Posłużymy się tu następującymprzykładem.
Twierdzenie o zwartości może też służyć do dowodzenia niewyrażalnościpewnych pojęć w&nbsp;logice pierwszego rzędu. Posłużymy się tu następującymprzykładem.


{{twierdzenie||nie-dobry|
{{twierdzenie|8.8|nie-dobry|


Pojęcie dobrego porządku nie jest wyrażalne w&nbsp;logice pierwszego rzędu.<!--%-->Dokładniej, dla każdego zbioru <math>\Delta</math> formuł pierwszego rzędu nadsygnaturą <math>=,\leq</math> takiego, że każdy dobry porządek jest modelem<math>\Delta,</math> istnieje też struktura <math>\mathfrak A</math> nie będąca dobrym porządkiem taka, że <math>\mathfrak A\models\Delta.</math>}}


{{dowod|||


Pojęcie dobrego porządku nie jest wyrażalne w&nbsp;logice pierwszego rzędu.<!--%-->Dokładniej, dla każdego zbioru <math>\Delta</math> formuł pierwszego rzędu nadsygnaturą <math>=,\leq</math> takiego, że każdy dobry porządek jest modelem<math>\Delta,</math> istnieje też struktura <math>\strA</math> nie będąca dobrym porządkiemtaka, że <math>\strA\models\Delta.</math>}}{{dowod||
Niech  zbiór zdań <math>\Delta</math> ma tę właściwość, że każdy dobry porządek jest jego modelem. Bez utraty ogólności możemy założyć, że <math>\Delta</math>zawiera już zwykłe aksjomaty liniowych porządków. Niech<math>C=\{c_0,c_1,\dots\}</math> będzie zbiorem nowych stałych.


Niech zbiór zdań <math>\Delta</math> ma tę właściwość, że każdy dobry porządekjest jego modelem. Bez\boldsymbol{s}}\def\blank{\hbox{\sf Btraty ogólności możemy założyć, że <math>\Delta</math>zawiera już zwykłe aksjomaty liniowych porządków. Niech<math>C=\{c_0,c_1,\dots\}</math> będzie zbiorem nowych stałych.
Niech <math>\bar\Delta=\Delta\cup\{c_i<c_j | j<i\}.</math> Każdy skończony podzbiór <math>\bar\Delta_0\subseteq\bar\Delta</math> jest spełnialny, np.&nbsp;w&nbsp;zbiorze&nbsp;<math>\mathbb N,</math> w którym każda stała <math>c_i</math> występująca w <math>\bar\Delta_0</math>jest interpretowana jako <math>2|\bar\Delta_0|-i,</math> zaś pozostałe stałe jako&nbsp;<math>0</math>.


Niech <math>\bar\Delta=\Delta\cup\{c_i<c_j&nbsp;|&nbsp;j<i\}.</math> Każdy skończonypodzbiór <math>\bar\Delta_0\subseteq\bar\Delta</math> jest spełnialny, np.&nbsp;w&nbsp;zbiorze&nbsp;<math>\NN,</math> w którym każda stała <math>c_i</math> występująca w <math>\bar\Delta_0</math>jest interpretowana jako <math>2|\bar\Delta_0|-i,</math> zaś pozostałe stałe jako&nbsp;<math>0</math>.
Zatem na mocy twierdzenia o zwartości <math>\bar\Delta</math> jest również spełnialny. Niech <math>\mathfrak A</math> będzie modelem&nbsp;<math>\bar\Delta</math>. Relacja<math>\leq^\math A</math> jest porządkiem liniowym, spełnia <math>\Delta</math>, ale nie jest porządkiem dobrym, bo zawiera nieskończony ciąg zstępujący<math>c_0^\mathfrak A>c_1^\mathfrak A>c_2^\mathfrak A>\dots</math>.}}


Zatem na mocy twierdzenia o zwartości <math>\bar\Delta</math> jest równieżspełnialny. Niech <math>\strA</math> będzie modelem&nbsp;<math>\bar\Delta</math>. Relacja<math>\leq^\strA</math> jest porządkiem liniowym, spełnia <math>\Delta</math>, ale nie jestporządkiem dobrym, bo zawiera nieskończony ciąg zstępujący<math>c_0^\strA>c_1^\strA>c_2^\strA>\dots</math>.}}
Interesujące jest porównanie powyższego dowodu z alternatywnym dowodem za pomocą metody Fraïssé, sugerowanym w [[Logika dla informatyków/Ograniczenia logiki pierwszego rzędu#c|Ćwiczeniu 4]] do [[Logika dla informatyków/Ograniczenia logiki pierwszego rzędu|Rozdziału 4]].
 
Interesujące jest porównanie powyższego dowodu z alternatywnym dowodemza pomocą metody Fra\"{\i}ss\'e, sugerowanym w Ćwiczeniu [[#c]] doRozdziału&nbsp;[[#EF]].


\subsection*{Ćwiczenia}\begin{small}
\subsection*{Ćwiczenia}\begin{small}

Wersja z 07:21, 22 wrz 2006

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)

  1. 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Δ0Δ taki, że Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \Delta_0\models\var\varphi.}
  2. Dla dowolnego zbioru formuł Δ, jeśli każdy skończony podzbiórΔ0Δ 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 Δ0 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 mmax{0,|Σ|}, gdzie |Σ| to moc zbioru symboli występujących w Σ.

Dowód

Niech C będzie zbiorem nowych symboli stałych, dotychczas niewystępujących w Σ, którego moc wynosi m. NiechΔ¯=Δ{cd|c,dΣ oraz c różne od d }.

Ten nowy zbiór formuł nad nową sygnaturą Σ(C) jest spełnialny. Aby się o tym przekonać, weźmy dowolny skończony podzbiórΔ¯0Δ¯ oraz nieskończony model 𝔄zbioru Δ (o którego istnieniu wiemy z założeń). Zinterpretujmy w 𝔄 skończenie wiele symboli z C, które występują w Δ¯0, jako dowolnie wybrane, różne elementy. Jest oczywiste, że określony w ten sposób model 𝔄¯0 spełniaΔ¯0. 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 Σ(C), która wynosi m, ale jednocześnienie mniejszej niż |C|=m, bo wszystkie stałe z C muszą być w nim zinterpretowane jako różne elementy.

Jeśli teraz w modelu 𝔅¯ zignorujemy interpretację stałych z C to otrzymamy Σ-strukturę 𝔅 mocy m, która jest modelem zbioru Δ


Wniosek 8.3

Żadna struktura nieskończona nie daje się opisać zbiorem zdań logiki pierwszego rzędu z dokładnością do izomorfizmu. Dokładniej, nie istnieje zbiór Δ zdań logiki pierwszego rzęduktóry ma model nieskończony 𝔄 i zarazem dla każdej struktury𝔅 spełniającej Δ zachodzi 𝔅𝔄.


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 8.4 (Dolne twierdzenie Skolema-Löwenheima)

Każdy spełnialny zbiór zdań nad Σ ma model o mocy nie większejniż moc zbioru formuł logiki pierwszego rzędu nad Σ.

Twierdzenie 8.5 (Górne twierdzenie Skolema-Löwenheima)

Jeśli zbiór zdań nad Σ ma model nieskończony, to dla każdego𝔪 ma model o mocy nie mniejszej niż 𝔪.

Najstarszym protoplastą tej grupy twierdzeń było po prostu

Twierdzenie 8.6 (Skolema-Löwenheima

Każda nieskończona struktura 𝔄 nad co najwyżej przeliczalną sygnaturą zawiera co najwyżej przeliczalną podstrukturę, elementarnie równoważną z 𝔄.

W tym sformułowaniu twierdzenie to daje się udowodnić bez odwołania dotwierdzeń o pełności ani o istnieniu modelu i było znane wcześniej od nich.

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 on zawierać zbiory nieprzeliczalne, jak np. Parser nie mógł rozpoznać (nieznana funkcja „\pot”): {\displaystyle \pot{\mathbb N}} ? Oczywiście nikt wolał głośno nie wypowiadać drugiej ewentualności: że teoria mnogości nie 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 teorii mnogości, to wszystkie zbiory do niego należące oglądane z zewnątrz są przeliczalne. Jednak dla niektórych z nich, np. dla interpretacji P(), żadna funkcja z interpretacji zbioruliczb naturalnych na interpretację P() sama nie jest elementem tego modelu. To już wystarcza, aby spełniał on zdanie mówiące, że P() jest nieprzeliczalny.

Tradycyjnie o wszystkich twierdzeniach z powyższej grupy mówi się "twierdzenie Skolema-Löwenheima".


Twierdzenie o zwartości i twierdzeń Skolema-Löwenheima często używa się do tego, by wykazać istnienie różnych nietypowych modeli. Jeśli przypomnimy sobie elementarną równoważność <,><,>,wyprowadzoną jako wniosek z Twierdzenia 4.13, to rozpoznamy wniej również potencjalny efekt zastosowania (dolnego) twierdzenia Skolema-Löwenheima.

Klasycznym przykładem zastosowania twierdzenia o zwartości jest poniższy fakt:

Twierdzenie 8.7

Jeśli zbiór zdań Δ ma modele skończone dowolnie dużej mocy, toma też model nieskończony.

Dowód

Przypuśćmy, że Δ ma modele skończone dowolnie dużej mocy.

Niech Parser nie mógł rozpoznać (błąd składni): {\displaystyle \bar\Delta=\Delta\cup\{ (\exists x_1\dots\exists x_n\bigwedge_{i<j}x_i\neq x_j)&nbsp;|&nbsp;n\in\mathbb N\}} . Oczywiście Parser nie mógł rozpoznać (nieznana funkcja „\neqx”): {\displaystyle \bigwedge_{i<j}x_i\neqx_j} oznacza koniunkcję wszystkich n(n1) formuł postaci xi<xj, w których i<j.

Zbiór Δ¯ jest spełnialny, bo każdy jego skończony podzbiórΔ¯0Δ¯ jest spełnialny. Istotnie, modelemΔ¯0 jest każdy model Δ mocy co najmniej Parser nie mógł rozpoznać (nieznana funkcja „\neqx”): {\displaystyle max\{n | (\exists x_1\dots\exists x_n \bigwedge_{i<j}x_i\neqx_j) \in\bar\Delta_0\}} . Na mocy twierdzenia o zwartości Δ¯jest też spełnialny. Ma on wyłącznie modele nieskończone, a każdy jegomodel jest też modelem dla Δ.

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 8.8

Pojęcie dobrego porządku nie jest wyrażalne w logice pierwszego rzędu.Dokładniej, dla każdego zbioru Δ formuł pierwszego rzędu nadsygnaturą =, takiego, że każdy dobry porządek jest modelemΔ, istnieje też struktura 𝔄 nie będąca dobrym porządkiem taka, że 𝔄Δ.

Dowód

Niech zbiór zdań Δ ma tę właściwość, że każdy dobry porządek jest jego modelem. Bez utraty ogólności możemy założyć, że Δzawiera już zwykłe aksjomaty liniowych porządków. NiechC={c0,c1,} będzie zbiorem nowych stałych.

Niech Δ¯=Δ{ci<cj|j<i}. Każdy skończony podzbiór Δ¯0Δ¯ jest spełnialny, np. w zbiorze , w którym każda stała ci występująca w Δ¯0jest interpretowana jako 2|Δ¯0|i, zaś pozostałe stałe jako 0.

Zatem na mocy twierdzenia o zwartości Δ¯ jest również spełnialny. Niech 𝔄 będzie modelem Δ¯. RelacjaParser nie mógł rozpoznać (nieznana funkcja „\math”): {\displaystyle \leq^\math A} jest porządkiem liniowym, spełnia Δ, ale nie jest porządkiem dobrym, bo zawiera nieskończony ciąg zstępującyc0𝔄>c1𝔄>c2𝔄>.

Interesujące jest porównanie powyższego dowodu z alternatywnym dowodem za pomocą metody Fraïssé, sugerowanym w Ćwiczeniu 4 do Rozdziału 4.

\subsection*{Ćwiczenia}\begin{small}

  1. 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 Δ.
  2. 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.}


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