Logika dla informatyków/Ograniczenia logiki pierwszego rzędu: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Aneczka (dyskusja | edycje)
Nie podano opisu zmian
Aneczka (dyskusja | edycje)
Nie podano opisu zmian
Linia 2: Linia 2:


==Ograniczenia logiki pierwszego rzędu==
==Ograniczenia logiki pierwszego rzędu==
\setcounte\prooftree twierdzenie \justifies 0 \using \textrm{\begin{eqnarray*}W\end{eqnarray*}}\endprooftree
 


Ten rozdział poświęcony jest ograniczeniom, którym podlega język  
Ten rozdział poświęcony jest ograniczeniom, którym podlega język  
Linia 16: Linia 16:
dalszym ciągu.  
dalszym ciągu.  


{{definicja|||  
{{definicja|||'''Rangę kwantyfikatorową''' <math>QR\var(\varphi)</math> formuły <math>\var\varphi</math> definiujemy jak następuje:  
 
\textit{Rangę kwantyfikatorową} <math>\QR\begin{eqnarray*}\var\varphi\end{eqnarray*}</math> formuły <math>\var\varphi</math>  
definiujemy jak następuje:  
 
*<math>\QR\begin{eqnarray*}\bot\end{eqnarray*}=\QR\begin{eqnarray*}t_1=t_2\end{eqnarray*}=\QR\begin{eqnarray*}r\begin{eqnarray*}t_1,\dots,t_k\end{eqnarray*}\end{eqnarray*}=0</math> dla dowolnych
termów <math>t_1,\dots, t_k</math> oraz <math>r\in \Sigma^R_k.</math>
*<math>\QR\begin{eqnarray*}\var\varphi\to \psi\end{eqnarray*}=\max\begin{eqnarray*}\QR\begin{eqnarray*}\var\varphi\end{eqnarray*},\QR\begin{eqnarray*}\psi\end{eqnarray*}\end{eqnarray*}</math>.
*<math>\QR\begin{eqnarray*}\forall x\var\varphi\end{eqnarray*}=1+\QR\begin{eqnarray*}\var\varphi\end{eqnarray*}.</math>
 


*<math>QR(\bot)=QR(t_1=t_2)=QR(r (t_1,\dots,t_k )) =0</math> dla dowolnych termów <math>t_1,\dots, t_k</math> oraz <math>r\in \Sigma^R_k.</math>
*<math>QR (\var\varphi\to \psi) =\max (QR (\var\varphi) ,QR (\psi))  </math>.
*<math>QR (\forall x\var\varphi) =1+QR (\var\varphi) .</math>
}}  
}}  


Intuicyjnie <math>\QR</math> to głębokość zagnieżdżenia kwantyfikatorów w  
Intuicyjnie <math>QR</math> to głębokość zagnieżdżenia kwantyfikatorów w  
formule. Jest to jedna z wielu możliwych miar stopnia komplikacji  
formule. Jest to jedna z wielu możliwych miar stopnia komplikacji formuły <math>\varphi.</math> Parametr ten ma następujące znaczenie: jeśli struktura <math>\strA</math> ma <math>n\Delta\vdashl</math> elementów, to pesymistyczny czas sprawdzenia, czy dla zdania <math>\var\varphi</math> zachodzi <math>\strA\models \var\varphi</math> jest asymptotycznie proporcjonalny do <math>n^{QR \var\varphi },</math> gdy użyjemy naturalnego algorytmu do wykonania tego zadania, który dla każdego kwantyfikatora w formule przegląda wszystkie elementy struktury.  
formuły <math>\var\varphi.</math> Parametr ten ma następujące znaczenie: jeśli  
struktura <math>\strA</math> ma <math>n</math>\Delta\vdashlementów, to pesymistyczny czas sprawdzenia,  
czy dla zdania <math>\var\varphi</math> zachodzi <math>\strA\models \var\varphi</math> jest  
asymptotycznie proporcjonalny do <math>n^{\QR\begin{eqnarray*}\var\varphi\end{eqnarray*}},</math> gdy\boldsymbol{s}}\def\blank{\hbox{\sf Bżyjemy
naturalnego algorytmu do wykonania tego zadania, który dla każdego  
kwantyfikatora w formule przegląda wszystkie\Delta\vdashlementy struktury.  


Teraz możemy wyjaśnić, dlaczego nie dopuszczamy symboli funkcyjnych w  
Teraz możemy wyjaśnić, dlaczego nie dopuszczamy symboli funkcyjnych w  
sygnaturze. Otóż ich obecność zakłóca potrzebne nam własności funkcji  
sygnaturze. Otóż ich obecność zakłóca potrzebne nam własności funkcji  
<math>QR.</math> Tytułem przykładu, formuła <math>R\begin{eqnarray*}x,f\begin{eqnarray*}f\begin{eqnarray*}x\end{eqnarray*}\end{eqnarray*}\end{eqnarray*}</math> jest atomowa i  
<math>QR.</math> Tytułem przykładu, formuła <math>R x,f f x   </math> jest atomowa i jej ranga kwantyfikatorowa powinna wynosić <math>0</math>. Tymczasem  
jej ranga kwantyfikatorowa powinna wynosić <math>0</math>. Tymczasem  
gdy <math>f</math> będziemy reprezentować w strukturze jako dwuargumentową  
gdy <math>f</math> będziemy reprezentować w strukturze jako dwuargumentową  
relację </math>F<math>, ta sama formuła przybierze postać </math>\exists y\exists z  
relację </math>F<math>, ta sama formuła przybierze postać </math>\exists y\exists z F x,y \land F y,z \land R x,z ,</math> której ranga kwantyfikatorowa wynosi 2.  Twierdzenia, których dalej dowodzimy, odwołują się do wartości <math>QR</math> zdefiniowanych powyżej dla logiki bez symboli  
\begin{eqnarray*}F\begin{eqnarray*}x,y\end{eqnarray*}\land F\begin{eqnarray*}y,z\end{eqnarray*}\land R\begin{eqnarray*}x,z\end{eqnarray*}\end{eqnarray*},</math> której ranga kwantyfikatorowa  
funkcyjnych.  To właśnie jest przyczyna, dla której funkcje wykluczamy z rozważań.  
wynosi 2.  Twierdzenia, których dalej dowodzimy, odwołują się do  
wartości <math>QR</math> zdefiniowanych powyżej dla logiki bez symboli  
funkcyjnych.  \Rightarrow właśnie jest przyczyna, dla której funkcje wykluczamy  
z rozważań.  


===Charakteryzacja Fra\"{\i===
===Charakteryzacja Fra\"{\i===
Linia 70: Linia 53:
izomorfizmem podstruktur indukowanych </math>h:\strA_{|A'}\cong  
izomorfizmem podstruktur indukowanych </math>h:\strA_{|A'}\cong  
\strB_{|B'},</math> to mówimy, że <math>h</math> jest \textit{częściowym izomorfizmem z  
\strB_{|B'},</math> to mówimy, że <math>h</math> jest \textit{częściowym izomorfizmem z  
<math>\strA</math> w&nbsp;<math>\strB</math>.} Jego \textit{dziedzina} to <math>dom\begin{eqnarray*}h\end{eqnarray*}=A'</math>, a  
<math>\strA</math> w&nbsp;<math>\strB</math>.} Jego \textit{dziedzina} to <math>dom h =A'</math>, a  
\textit{obraz} to <math>rg\begin{eqnarray*}h\end{eqnarray*}=B'.</math>  
\textit{obraz} to <math>rg h =B'.</math>  


Na zasadzie konwencji\boldsymbol{s}}\def\blank{\hbox{\sf Bmawiamy się, że <math>\emptyset</math> jest częściowym  
Na zasadzie konwencji\boldsymbol{s}}\def\blank{\hbox{\sf Bmawiamy się, że <math>\emptyset</math> jest częściowym  
Linia 77: Linia 60:


Dla dwóch częściowych izomorfizmów <math>g,h</math> z <math>\strA</math> w <math>\strB</math> piszemy  
Dla dwóch częściowych izomorfizmów <math>g,h</math> z <math>\strA</math> w <math>\strB</math> piszemy  
<math>g\subseteq h</math> gdy <math>dom\begin{eqnarray*}g\end{eqnarray*}\subseteq dom\begin{eqnarray*}h\end{eqnarray*}</math> oraz <math>g\begin{eqnarray*}a\end{eqnarray*}=h\begin{eqnarray*}a\end{eqnarray*}</math> dla  
<math>g\subseteq h</math> gdy <math>dom g \subseteq dom h </math> oraz <math>g a =h a </math> dla  
wszystkich <math>a\in dom\begin{eqnarray*}g\end{eqnarray*},</math> to jest wtedy, gdy <math>g</math> jest zawarte jako  
wszystkich <math>a\in dom g ,</math> to jest wtedy, gdy <math>g</math> jest zawarte jako  
zbiór w <math>h.</math>  
zbiór w <math>h.</math>  
}}  
}}  
Linia 93: Linia 76:
\begin{description}  
\begin{description}  
\item[Tam] Dla każdego <math>h\in I_{n+1}</math> oraz każdego <math>a\in A</math> istnieje  takie  
\item[Tam] Dla każdego <math>h\in I_{n+1}</math> oraz każdego <math>a\in A</math> istnieje  takie  
<math>g\in I_n</math>, że <math>h\subseteq g</math> oraz <math>a\in dom\begin{eqnarray*}g\end{eqnarray*}.</math>  
<math>g\in I_n</math>, że <math>h\subseteq g</math> oraz <math>a\in dom g .</math>  
\item[Z powrotem] Dla każdego <math>h\in I_{n+1}</math> oraz każdego <math>b\in B</math>  
\item[Z powrotem] Dla każdego <math>h\in I_{n+1}</math> oraz każdego <math>b\in B</math>  
istnieje takie <math>g\in I_n</math>, że <math>h\subseteq g</math> oraz <math>b\in rg\begin{eqnarray*}g\end{eqnarray*}.</math>  
istnieje takie <math>g\in I_n</math>, że <math>h\subseteq g</math> oraz <math>b\in rg g .</math>  
\end{description}  
\end{description}  


Linia 191: Linia 174:
jest rzadko\boldsymbol{s}}\def\blank{\hbox{\sf Bżywana w praktyce.  Wyraża za to istotną z  
jest rzadko\boldsymbol{s}}\def\blank{\hbox{\sf Bżywana w praktyce.  Wyraża za to istotną z  
metodologicznego punktu widzenia informację: jeśli dwie struktury są  
metodologicznego punktu widzenia informację: jeśli dwie struktury są  
\begin{eqnarray*}<math>m</math>-\end{eqnarray*}elementarnie równoważne, to fakt ten można na pewno\boldsymbol{s}}\def\blank{\hbox{\sf Bdowodnić  
<math>m</math>- elementarnie równoważne, to fakt ten można na pewno\boldsymbol{s}}\def\blank{\hbox{\sf Bdowodnić  
posługując się metodą Fra\"{\i}ss\'e, choć oczywiście nie ma  
posługując się metodą Fra\"{\i}ss\'e, choć oczywiście nie ma  
gwarancji, że będzie to metoda najprostsza.  
gwarancji, że będzie to metoda najprostsza.  
Linia 202: Linia 185:
''Niech <math>\{I_n &nbsp;|&nbsp; n\leq m\''</math> będzie rodziną o której mowa w definicji  
''Niech <math>\{I_n &nbsp;|&nbsp; n\leq m\''</math> będzie rodziną o której mowa w definicji  
<math>\strA\cong_m\strB</math>, niech&nbsp;<math>\var\varphi</math> będzie formułą o co najwyżej <math>r</math>  
<math>\strA\cong_m\strB</math>, niech&nbsp;<math>\var\varphi</math> będzie formułą o co najwyżej <math>r</math>  
zmiennych wolnych \begin{eqnarray*}bez\boldsymbol{s}}\def\blank{\hbox{\sf Btraty ogólności niech będą to <math>x_1,\dots,x_r</math>\end{eqnarray*}
zmiennych wolnych bez\boldsymbol{s}}\def\blank{\hbox{\sf Btraty ogólności niech będą to <math>x_1,\dots,x_r</math>
i spełniającą <math>\QR\begin{eqnarray*}\var\varphi\end{eqnarray*}\leq n\leq m</math> oraz niech <math>g\in I_n.</math>  
i spełniającą <math>\QR \var\varphi \leq n\leq m</math> oraz niech <math>g\in I_n.</math>  
Wówczas dla dowolnych <math>a_1,\dots,a_r\in dom\begin{eqnarray*}g\end{eqnarray*}</math> następujące dwa  
Wówczas dla dowolnych <math>a_1,\dots,a_r\in dom g </math> następujące dwa  
warunki są równoważne:}  
warunki są równoważne:}  
<!--% -->  
<!--% -->  
\[\strA,x_1:a_1,\dots,x_r:a_r\models\var\varphi\]  
\[\strA,x_1:a_1,\dots,x_r:a_r\models\var\varphi\]  
\[\strB,x_1:g\begin{eqnarray*}a_1\end{eqnarray*},\dots,x_r:g\begin{eqnarray*}a_r\end{eqnarray*}\models\var\varphi.\]\end{quote}  
\[\strB,x_1:g a_1 ,\dots,x_r:g a_r \models\var\varphi.\]\end{quote}  


Dla formuł atomowych, powyższa teza wynika wprost z faktu, że <math>g</math> jest  
Dla formuł atomowych, powyższa teza wynika wprost z faktu, że <math>g</math> jest  
częściowym izomorfizmem \begin{eqnarray*}przypomnijmy że w sygnaturze nie ma symboli  
częściowym izomorfizmem przypomnijmy że w sygnaturze nie ma symboli  
funkcyjnych i co za tym idzie jedynymi termami są zmienne\end{eqnarray*}.   
funkcyjnych i co za tym idzie jedynymi termami są zmienne .   


Gdy <math>\var\varphi</math> ma postać <math>\psi\to\xi,</math> to mamy następujący ciąg  
Gdy <math>\var\varphi</math> ma postać <math>\psi\to\xi,</math> to mamy następujący ciąg  
Linia 222: Linia 205:
<math>\strA,x_1:a_1,\dots,x_r:a_r\models\xi</math>   
<math>\strA,x_1:a_1,\dots,x_r:a_r\models\xi</math>   


*<math>\strA,x_1:g\begin{eqnarray*}a_1\end{eqnarray*},\dots,x_r:g\begin{eqnarray*}a_r\end{eqnarray*}\not\models\psi</math>  lub   
*<math>\strA,x_1:g a_1 ,\dots,x_r:g a_r \not\models\psi</math>  lub   
<math>\strA,x_1:g\begin{eqnarray*}a_1\end{eqnarray*},\dots,x_r:g\begin{eqnarray*}a_r\end{eqnarray*}\models\xi</math>  
<math>\strA,x_1:g a_1 ,\dots,x_r:g a_r \models\xi</math>  


*<math>\strA,x_1:g\begin{eqnarray*}a_1\end{eqnarray*},\dots,x_r:g\begin{eqnarray*}a_r\end{eqnarray*}\models\psi\to\xi,</math>  
*<math>\strA,x_1:g a_1 ,\dots,x_r:g a_r \models\psi\to\xi,</math>  




Linia 233: Linia 216:


Gdy </math>\var\varphi<math> ma postać </math>\forall x \psi,<math> to, jako że </math>x_{r+1}\notin  
Gdy </math>\var\varphi<math> ma postać </math>\forall x \psi,<math> to, jako że </math>x_{r+1}\notin  
FV\begin{eqnarray*}\var\varphi\end{eqnarray*}<math> i co za tym idzie </math>\models \begin{eqnarray*}\forall x\psi  
FV \var\varphi <math> i co za tym idzie </math>\models \forall x\psi  
\end{eqnarray*}\leftrightarrow \forall x_{r+1} \psi\begin{eqnarray*}x_{r+1}/x\end{eqnarray*}</math> \begin{eqnarray*}patrz Fakt  
\leftrightarrow \forall x_{r+1} \psi x_{r+1}/x </math> patrz Fakt  
[[#alfa-konw]]\end{eqnarray*}, możemy bez\boldsymbol{s}}\def\blank{\hbox{\sf Btraty ogólności założyć, że <math>\var\varphi</math> ma  
[[#alfa-konw]] , możemy bez\boldsymbol{s}}\def\blank{\hbox{\sf Btraty ogólności założyć, że <math>\var\varphi</math> ma  
postać <math>\forall x_{r+1} \psi.</math> Z założenia <math>\QR\begin{eqnarray*}\var\varphi\end{eqnarray*}\leq n</math>  
postać <math>\forall x_{r+1} \psi.</math> Z założenia <math>\QR \var\varphi \leq n</math>  
wynika, że <math>\QR\begin{eqnarray*}\psi\end{eqnarray*}\leq n-1</math>. Mamy teraz następujący ciąg  
wynika, że <math>\QR \psi \leq n-1</math>. Mamy teraz następujący ciąg  
równoważnych warunków:  
równoważnych warunków:  


*<math>\begin{eqnarray*}\strA,x_1:a_1,\dots,x_r:a_r\end{eqnarray*}\models\var\varphi</math>  
*<math> \strA,x_1:a_1,\dots,x_r:a_r \models\var\varphi</math>  


*Dla każdego <math>a\in A</math> zachodzi  
*Dla każdego <math>a\in A</math> zachodzi  
<math>\begin{eqnarray*}\strA,x_1:a_1,\dots,x_r:a_r,x_{r+1}:a\end{eqnarray*}\models\psi</math>  
<math> \strA,x_1:a_1,\dots,x_r:a_r,x_{r+1}:a \models\psi</math>  


*Dla każdego <math>a\in A</math> istnieje  takie <math>h\in I_{n-1}</math>, że <math>g\subseteq h,</math>  
*Dla każdego <math>a\in A</math> istnieje  takie <math>h\in I_{n-1}</math>, że <math>g\subseteq h,</math>  
<math>a\in dom\begin{eqnarray*}h\end{eqnarray*}</math>  
<math>a\in dom h </math>  
oraz   
oraz   


<math>\begin{eqnarray*}\strA,x_1:a_1,\dots,x_r:a_r,x_{r+1}:a\end{eqnarray*}\models\psi</math>  
<math> \strA,x_1:a_1,\dots,x_r:a_r,x_{r+1}:a \models\psi</math>  


*Dla każdego <math>a\in A</math> istnieje  takie <math>h\in I_{n-1}</math>, że  <math>g\subseteq h,</math>  
*Dla każdego <math>a\in A</math> istnieje  takie <math>h\in I_{n-1}</math>, że  <math>g\subseteq h,</math>  
<math>a\in dom\begin{eqnarray*}h\end{eqnarray*}</math>  
<math>a\in dom h </math>  
oraz   
oraz   


<math>\begin{eqnarray*}\strB,x_1:g\begin{eqnarray*}a_1\end{eqnarray*},\dots,x_r:g\begin{eqnarray*}a_r\end{eqnarray*},x_{r+1}:h\begin{eqnarray*}a\end{eqnarray*}\end{eqnarray*}\models\psi</math>  
<math> \strB,x_1:g a_1 ,\dots,x_r:g a_r ,x_{r+1}:h a \models\psi</math>  


*Dla każdego <math>b\in B</math> istnieje takie <math>h\in I_{n-1}</math>, że  
*Dla każdego <math>b\in B</math> istnieje takie <math>h\in I_{n-1}</math>, że  
<math>g\subseteq h,</math> <math>b\in rg\begin{eqnarray*}h\end{eqnarray*}</math> oraz  
<math>g\subseteq h,</math> <math>b\in rg h </math> oraz  


<math>\begin{eqnarray*}\strB,x_1:g\begin{eqnarray*}a_1\end{eqnarray*},\dots,x_r:g\begin{eqnarray*}a_r\end{eqnarray*},x_{r+1}:b\end{eqnarray*}\models\psi</math>  
<math> \strB,x_1:g a_1 ,\dots,x_r:g a_r ,x_{r+1}:b \models\psi</math>  


*Dla każdego <math>b\in B</math> zachodzi   
*Dla każdego <math>b\in B</math> zachodzi   
<math>\begin{eqnarray*}\strB,x_1:g\begin{eqnarray*}a_1\end{eqnarray*},\dots,x_r:g\begin{eqnarray*}a_r\end{eqnarray*},x_{r+1}:b\end{eqnarray*}\models\psi</math>  
<math> \strB,x_1:g a_1 ,\dots,x_r:g a_r ,x_{r+1}:b \models\psi</math>  


*<math>\begin{eqnarray*}\strB,x_1:g\begin{eqnarray*}a_1\end{eqnarray*},\dots,x_r:g\begin{eqnarray*}a_r\end{eqnarray*}\end{eqnarray*}\models\var\varphi.</math>  
*<math> \strB,x_1:g a_1 ,\dots,x_r:g a_r \models\var\varphi.</math>  




Linia 292: Linia 275:
naszych struktur jak następuje:  
naszych struktur jak następuje:  
<!--% -->  
<!--% -->  
\[d_k\begin{eqnarray*}a,b\end{eqnarray*}=\begin{cases}  
\[d_k a,b =\begin{cases}  
|b-a|&\text{jeśli  <math>|b-a|< 2^k</math>}\\  
|b-a|&\text{jeśli  <math>|b-a|< 2^k</math>}\\  
\infty&\text{wpp.}  
\infty&\text{wpp.}  
Linia 301: Linia 284:
izomorfizmów </math>g<math> z </math>\strA<math> w </math>\strB<math> takich, że </math>\{\langle  
izomorfizmów </math>g<math> z </math>\strA<math> w </math>\strB<math> takich, że </math>\{\langle  
0,0\rangle,\langle N,M\rangle\}\subseteq g</math> oraz  
0,0\rangle,\langle N,M\rangle\}\subseteq g</math> oraz  
<math>d_k\begin{eqnarray*}a,b\end{eqnarray*}=d_k\begin{eqnarray*}g\begin{eqnarray*}a\end{eqnarray*},g\begin{eqnarray*}b\end{eqnarray*}\end{eqnarray*}</math> dla wszystkich <math>a,b\in dom\begin{eqnarray*}g\end{eqnarray*}.</math> Oczywiście  
<math>d_k a,b =d_k g a ,g b </math> dla wszystkich <math>a,b\in dom g .</math> Oczywiście  
</math>I_k\neq \emptyset<math> bo </math>\{\langle 0,0\rangle,\langle  
</math>I_k\neq \emptyset<math> bo </math>\{\langle 0,0\rangle,\langle  
N,M\rangle\}\in I_k.</math>  
N,M\rangle\}\in I_k.</math>  
Linia 307: Linia 290:
Pokazujemy własność '''Tam} dla rodziny <math>\{I_k&nbsp;|&nbsp;k\leq m\'''</math>. Niech  
Pokazujemy własność '''Tam} dla rodziny <math>\{I_k&nbsp;|&nbsp;k\leq m\'''</math>. Niech  
<math>g\in I_{k+1}.</math> Niech <math>a\in\{0,\dots,N\}.</math> Mamy wskazać w <math>I_k</math>  
<math>g\in I_{k+1}.</math> Niech <math>a\in\{0,\dots,N\}.</math> Mamy wskazać w <math>I_k</math>  
częściowy izomorfizm <math>h\supseteq g</math> taki, że <math>a\in dom\begin{eqnarray*}h\end{eqnarray*}.</math>  
częściowy izomorfizm <math>h\supseteq g</math> taki, że <math>a\in dom h .</math>  


Rozróżniamy dwa przypadki:   
Rozróżniamy dwa przypadki:   


\begin{eqnarray*}i\end{eqnarray*} Jeśli istnieje takie <math>b\in dom\begin{eqnarray*}g\end{eqnarray*}</math>, że <math>d_{k}\begin{eqnarray*}a,b\end{eqnarray*}<\infty</math>, to w  
i Jeśli istnieje takie <math>b\in dom g </math>, że <math>d_{k} a,b <\infty</math>, to w  
<math>B</math> jest dokładnie jeden\Delta\vdashlement <math>a'</math>, który jest tak samo położony  
<math>B</math> jest dokładnie jeden\Delta\vdashlement <math>a'</math>, który jest tak samo położony  
względem <math>g\begin{eqnarray*}b\end{eqnarray*}</math> jak <math>a</math> względem <math>b,</math> oraz spełnia  
względem <math>g b </math> jak <math>a</math> względem <math>b,</math> oraz spełnia  
<math>d_j\begin{eqnarray*}a',g\begin{eqnarray*}b\end{eqnarray*}\end{eqnarray*}=d_{j}\begin{eqnarray*}a,b\end{eqnarray*}.</math> Kładziemy wówczas <math>h\begin{eqnarray*}a\end{eqnarray*}:=a'</math> i <math>h</math> jest  
<math>d_j a',g b =d_{j} a,b .</math> Kładziemy wówczas <math>h a :=a'</math> i <math>h</math> jest  
wtedy częściowym izomorfizmem zachowującym odległości <math>d_j.</math>  
wtedy częściowym izomorfizmem zachowującym odległości <math>d_j.</math>  


\begin{eqnarray*}ii\end{eqnarray*} Jeśli natomiast takiego <math>b</math> nie ma, to niech <math>a'<a<a'',</math> gdzie  
ii Jeśli natomiast takiego <math>b</math> nie ma, to niech <math>a'<a<a'',</math> gdzie  
<math>a',a''</math> są najbliższymi <math>b</math>\Delta\vdashlementami po lewej i po prawej, które  
<math>a',a''</math> są najbliższymi <math>b</math>\Delta\vdashlementami po lewej i po prawej, które  
należą do <math> dom\begin{eqnarray*}g\end{eqnarray*}.</math> Wówczas <math>d_j\begin{eqnarray*}a',a\end{eqnarray*}=d_j\begin{eqnarray*}a,a''\end{eqnarray*}=\infty,</math> co w myśl  
należą do <math> dom g .</math> Wówczas <math>d_j a',a =d_j a,a'' =\infty,</math> co w myśl  
definicji <math>d_j</math> oznacza, że <math>d_{j+1}\begin{eqnarray*}a',a''\end{eqnarray*}=\infty.</math> Zatem na mocy  
definicji <math>d_j</math> oznacza, że <math>d_{j+1} a',a'' =\infty.</math> Zatem na mocy  
założenia indukcyjnego także <math>d_{j+1}\begin{eqnarray*}g\begin{eqnarray*}a'\end{eqnarray*},g\begin{eqnarray*}a''\end{eqnarray*}\end{eqnarray*}=\infty.</math> Istnieje  
założenia indukcyjnego także <math>d_{j+1} g a' ,g a'' =\infty.</math> Istnieje  
więc <math>g\begin{eqnarray*}a'\end{eqnarray*}<b<g\begin{eqnarray*}a''\end{eqnarray*}</math> takie, że \mbox{<math>d_j\begin{eqnarray*}g\begin{eqnarray*}a'\end{eqnarray*},b\end{eqnarray*}=d_j\begin{eqnarray*}b,g\begin{eqnarray*}a''\end{eqnarray*}\end{eqnarray*}=\infty</math>},   
więc <math>g a' <b<g a'' </math> takie, że \mbox{<math>d_j g a' ,b =d_j b,g a'' =\infty</math>},   
i&nbsp;wówczas kładąc <math>h\begin{eqnarray*}a\end{eqnarray*}:=b</math>\boldsymbol{s}}\def\blank{\hbox{\sf Bzyskujemy żądane rozszerzenie.  
i&nbsp;wówczas kładąc <math>h a :=b</math>\boldsymbol{s}}\def\blank{\hbox{\sf Bzyskujemy żądane rozszerzenie.  
}}  
}}  


Linia 371: Linia 354:
{{definicja|||  
{{definicja|||  


\textit{Gra Ehrenfeuchta <math>G_m\begin{eqnarray*}\strA,\strB\end{eqnarray*}</math>} jest rozgrywana przez  
\textit{Gra Ehrenfeuchta <math>G_m \strA,\strB </math>} jest rozgrywana przez  
dwóch graczy, oznaczanych I i II.  Trwa ona przez <math>m</math> rund.  
dwóch graczy, oznaczanych I i II.  Trwa ona przez <math>m</math> rund.  




W <math>i</math>-tej rundzie \begin{eqnarray*}<math>i=1,\dots,m</math>\end{eqnarray*} najpierw wykonuje ruch gracz I,  
W <math>i</math>-tej rundzie <math>i=1,\dots,m</math> najpierw wykonuje ruch gracz I,  
wybierając jedną ze struktur oraz jeden z\Delta\vdashlementów jej  
wybierając jedną ze struktur oraz jeden z\Delta\vdashlementów jej  
nośnika. Jest on oznaczany <math>a_i</math> jeśli pochodzi z <math>A</math>, zaś <math>b_i,</math>  
nośnika. Jest on oznaczany <math>a_i</math> jeśli pochodzi z <math>A</math>, zaś <math>b_i,</math>  
jeśli z <math>B.</math> Jako drugi wykonuje ruch gracz II, który musi wybrać  
jeśli z <math>B.</math> Jako drugi wykonuje ruch gracz II, który musi wybrać  
\Delta\vdashlement w pozostałej strukturze \begin{eqnarray*}czyli w <math>\strA</math>, jeśli I wybrał\Delta\vdashlement  
\Delta\vdashlement w pozostałej strukturze czyli w <math>\strA</math>, jeśli I wybrał\Delta\vdashlement  
w <math>\strB,</math> oraz w <math>\strB,</math> jeśli I wybrał\Delta\vdashlement w <math>\strA</math>\end{eqnarray*} i oznaczyć go  
w <math>\strB,</math> oraz w <math>\strB,</math> jeśli I wybrał\Delta\vdashlement w <math>\strA</math> i oznaczyć go  
<math>a_i</math> lub <math>b_i,</math> zależnie od tego, skąd wybierał.  
<math>a_i</math> lub <math>b_i,</math> zależnie od tego, skąd wybierał.  


Linia 392: Linia 375:


Mówimy, że gracz II ma {\em strategię wygrywającą\/} w grze  
Mówimy, że gracz II ma {\em strategię wygrywającą\/} w grze  
<math>G_m\begin{eqnarray*}\strA,\strB\end{eqnarray*}</math>, jeśli może wygrać każdą rozgrywkę, niezależnie od  
<math>G_m \strA,\strB </math>, jeśli może wygrać każdą rozgrywkę, niezależnie od  
posunięć gracza I.  
posunięć gracza I.  
}}  
}}  
Linia 399: Linia 382:
wybieranie\Delta\vdashlementów, które poprzednio były już wybrane.  Jest to  
wybieranie\Delta\vdashlementów, które poprzednio były już wybrane.  Jest to  
dogodne, gdyż\boldsymbol{s}}\def\blank{\hbox{\sf Bpraszcza definicję.  Gdybyśmy bowiem zakazali tego,  
dogodne, gdyż\boldsymbol{s}}\def\blank{\hbox{\sf Bpraszcza definicję.  Gdybyśmy bowiem zakazali tego,  
to albo niemożliwe byłoby rozegranie gry <math>G_m\begin{eqnarray*}\strA,\strB\end{eqnarray*}</math> gdy choć  
to albo niemożliwe byłoby rozegranie gry <math>G_m \strA,\strB </math> gdy choć  
jedna ze struktur ma moc mniejszą niż <math>m,</math> albo trzeba by było  
jedna ze struktur ma moc mniejszą niż <math>m,</math> albo trzeba by było  
wprowadzić w definicji specjalny warunek służący do rozstrzygania  
wprowadzić w definicji specjalny warunek służący do rozstrzygania  
Linia 413: Linia 396:
{{twierdzenie||ehrenfeucht|  
{{twierdzenie||ehrenfeucht|  


*Gracz II ma strategię wygrywającą w grze <math>G_m\begin{eqnarray*}\strA,\strB\end{eqnarray*}</math> wtedy i tylko  
*Gracz II ma strategię wygrywającą w grze <math>G_m \strA,\strB </math> wtedy i tylko  
wtedy, gdy <math>\strA\cong_{m}\strB.</math>  
wtedy, gdy <math>\strA\cong_{m}\strB.</math>  
*Gracz II ma dla każdego <math>m</math> strategię wygrywającą w grze  
*Gracz II ma dla każdego <math>m</math> strategię wygrywającą w grze  
<math>G_m\begin{eqnarray*}\strA,\strB\end{eqnarray*}</math> wtedy i tylko wtedy, gdy <math>\strA\cong_{fin}\strB.</math>  
<math>G_m \strA,\strB </math> wtedy i tylko wtedy, gdy <math>\strA\cong_{fin}\strB.</math>  


}}  
}}  
Linia 438: Linia 421:


W myśl Twierdzenia [[#ehrenfeucht]] należy pokazać, że dla każdego  
W myśl Twierdzenia [[#ehrenfeucht]] należy pokazać, że dla każdego  
<math>m</math> gracz II ma strategię wygrywającą w grze <math>G_m\begin{eqnarray*}\strA,\strB\end{eqnarray*}.</math>  
<math>m</math> gracz II ma strategię wygrywającą w grze <math>G_m \strA,\strB .</math>  
Opiszemy teraz tę strategię. Jej postać nie zależy od liczby rund do  
Opiszemy teraz tę strategię. Jej postać nie zależy od liczby rund do  
rozegrania. Pokażemy też, że jeśli po zakończeniu poprzedniej rundy  
rozegrania. Pokażemy też, że jeśli po zakończeniu poprzedniej rundy  
Linia 465: Linia 448:
następująco. Niech </math>a_{i_1}<^\strA a_{i_2}<^\strA \dots<^\strA  
następująco. Niech </math>a_{i_1}<^\strA a_{i_2}<^\strA \dots<^\strA  
a_{i_k}</math> i <math>b_{i_1}<^\strB b_{i_2}<^\strB \dots<^\strB b_{i_k}</math> będą  
a_{i_k}</math> i <math>b_{i_1}<^\strB b_{i_2}<^\strB \dots<^\strB b_{i_k}</math> będą  
\begin{eqnarray*}identycznymi na mocy założenia indukcyjnego\end{eqnarray*} ciągami indeksów przed  
identycznymi na mocy założenia indukcyjnego ciągami indeksów przed  
wykonaniem tego ruchu. Ze względu na symetrię sytuacji, możemy bez  
wykonaniem tego ruchu. Ze względu na symetrię sytuacji, możemy bez  
\boldsymbol{s}}\def\blank{\hbox{\sf Btraty ogólności założyć, że gracz I wybiera strukturę <math>\strA</math>. Może  
\boldsymbol{s}}\def\blank{\hbox{\sf Btraty ogólności założyć, że gracz I wybiera strukturę <math>\strA</math>. Może  
Linia 492: Linia 475:
\mathbb{R},\leq\rangle\equiv\langle \mathbb{Q},\leq\rangle.</math> Zatem nie  
\mathbb{R},\leq\rangle\equiv\langle \mathbb{Q},\leq\rangle.</math> Zatem nie  
ma zdania logiki pierwszego rzędu, które definiuje pojęcie porządku  
ma zdania logiki pierwszego rzędu, które definiuje pojęcie porządku  
ciągłego \begin{eqnarray*}tzn.&nbsp;takiego, w którym wszystkie niepuste ograniczone  
ciągłego tzn.&nbsp;takiego, w którym wszystkie niepuste ograniczone  
podzbiory mają kres górny i kres dolny\end{eqnarray*}, bo musiałoby ono być prawdziwe  
podzbiory mają kres górny i kres dolny , bo musiałoby ono być prawdziwe  
w pierwszej ze struktur, a fałszywe w drugiej.  
w pierwszej ze struktur, a fałszywe w drugiej.  


Linia 503: Linia 486:
zbiór postaci <math>\{\var\varphi\ |\ \Gamma\models\var\varphi\}</math>, zwany {\it teorią  
zbiór postaci <math>\{\var\varphi\ |\ \Gamma\models\var\varphi\}</math>, zwany {\it teorią  
aksjomatyczną\/} wyznaczoną przez&nbsp;<math>\Gamma</math>, czy też postaci   
aksjomatyczną\/} wyznaczoną przez&nbsp;<math>\Gamma</math>, czy też postaci   
</math>'''Th}\begin{eqnarray*}\K\end{eqnarray*}=\{\var\varphi\ |\ \strA\models\var\varphi,\ \mbox{dla każdego'''\   
</math>'''Th} \K =\{\var\varphi\ |\ \strA\models\var\varphi,\ \mbox{dla każdego'''\   
\strA\in\K\}</math>   
\strA\in\K\}</math>   
\begin{eqnarray*}teoria klasy struktur&nbsp;<math>\K</math>\end{eqnarray*} albo   
teoria klasy struktur&nbsp;<math>\K</math> albo   
<math>'''Th}\begin{eqnarray*}\strA\end{eqnarray*}= \{\var\varphi\ |\ \strA\models\var\varphi\'''</math>   
<math>'''Th} \strA = \{\var\varphi\ |\ \strA\models\var\varphi\'''</math>   
\begin{eqnarray*}teoria modelu&nbsp;<math>\strA</math>\end{eqnarray*}. Teorię   
teoria modelu&nbsp;<math>\strA</math> . Teorię   
<math>\Delta</math> nazywamy \textit{zupełną}, gdy dla każdego zdania  
<math>\Delta</math> nazywamy \textit{zupełną}, gdy dla każdego zdania  
<math>\var\varphi,</math> dokładnie jedno ze zdań <math>\var\varphi</math> i <math>\lnot\var\varphi</math> należy do  
<math>\var\varphi,</math> dokładnie jedno ze zdań <math>\var\varphi</math> i <math>\lnot\var\varphi</math> należy do  
Linia 524: Linia 507:
Teoria o której mówimy nie ma modeli skończonych. W myśl Twierdzenia  
Teoria o której mówimy nie ma modeli skończonych. W myśl Twierdzenia  
[[#Cantoro]] wszystkie jej modele nieskończone są\Delta\vdashlementarnie  
[[#Cantoro]] wszystkie jej modele nieskończone są\Delta\vdashlementarnie  
równoważne. Zatem </math>'''Th}\begin{eqnarray*}\mathcal{A'''\end{eqnarray*}='''Th'''\begin{eqnarray*}\langle  
równoważne. Zatem </math>'''Th} \mathcal{A''' ='''Th''' \langle  
\mathbb{Q},\leq\rangle\end{eqnarray*},</math> a teoria pojedynczego modelu jest zawsze  
\mathbb{Q},\leq\rangle ,</math> a teoria pojedynczego modelu jest zawsze  
zupełna.  
zupełna.  
}}  
}}  
Linia 548: Linia 531:


Wywnioskować stąd, że pojęcie dobrego porządku nie jest wyrażalne w&nbsp;logice   
Wywnioskować stąd, że pojęcie dobrego porządku nie jest wyrażalne w&nbsp;logice   
pierwszego rzędu. \begin{eqnarray*}Zupełnie inny dowód tego faktu poznamy   
pierwszego rzędu.   Zupełnie inny dowód tego faktu poznamy   
w&nbsp;Rozdziale&nbsp;[[#zwarciig\leftrightarrowwi]].\end{eqnarray*}
w&nbsp;Rozdziale&nbsp;[[#zwarciig\leftrightarrowwi]].


#Niech <math>R</math> będzie jednoargumentowym symbolem relacyjnym.  
#Niech <math>R</math> będzie jednoargumentowym symbolem relacyjnym.  
Linia 556: Linia 539:
zdań pierwszego rzędu.  
zdań pierwszego rzędu.  


#Udowodnić, że klasa wszystkich \begin{eqnarray*}skończonych lub nieskończonych\end{eqnarray*} grafów   
#Udowodnić, że klasa wszystkich skończonych lub nieskończonych grafów   
<math>\strA=\langle A,E\rangle,</math> w których istnieją dwa  
<math>\strA=\langle A,E\rangle,</math> w których istnieją dwa  
wierzchołki o równych sobie, skończonych stopniach, nie jest  
wierzchołki o równych sobie, skończonych stopniach, nie jest  
aksjomatyzowalna żadnym zdaniem pierwszego rzędu.  
aksjomatyzowalna żadnym zdaniem pierwszego rzędu.  


#Udowodnić, że klasa wszystkich \begin{eqnarray*}skończonych lub nieskończonych\end{eqnarray*} grafów  
#Udowodnić, że klasa wszystkich skończonych lub nieskończonych grafów  
<math>\strA=\langle A,E\rangle,</math> których każdy skończony podgraf jest planarny,  
<math>\strA=\langle A,E\rangle,</math> których każdy skończony podgraf jest planarny,  
nie jest aksjomatyzowalna żadnym zdaniem pierwszego rzędu.  
nie jest aksjomatyzowalna żadnym zdaniem pierwszego rzędu.  
Linia 575: Linia 558:
nad sygnaturą złożoną z&nbsp;jednego dwuargumentowego symbolu  
nad sygnaturą złożoną z&nbsp;jednego dwuargumentowego symbolu  
relacyjnego. Ich nośnikiem jest  
relacyjnego. Ich nośnikiem jest  
<math>U=\{1,2,\dots,15\}</math>, relacja <math>R^\strA\begin{eqnarray*}x,y\end{eqnarray*}</math> zachodzi \wtw, gdy  
<math>U=\{1,2,\dots,15\}</math>, relacja <math>R^\strA x,y </math> zachodzi \wtw, gdy  
<math>x|y</math>, a relacja <math>R^\strB\begin{eqnarray*}x,y\end{eqnarray*}</math> \wtw, gdy <math>x\equiv y\pmod 2.</math>  
<math>x|y</math>, a relacja <math>R^\strB x,y </math> \wtw, gdy <math>x\equiv y\pmod 2.</math>  


Ustalić, jaką minimalną rangę kwantyfikatorową ma zdanie  
Ustalić, jaką minimalną rangę kwantyfikatorową ma zdanie  
Linia 586: Linia 569:
Struktury są narysowane poniżej jako grafy skierowane:  
Struktury są narysowane poniżej jako grafy skierowane:  


<span id=""/> <math> \begi\prooftree array \justifies c|c \using \textrm{\begin{eqnarray*}W\end{eqnarray*}}\endprooftree  
<span id=""/> <math> \begi\prooftree array \justifies c|c \using \textrm{ W }\endprooftree  


\xymatrix  
\xymatrix  

Wersja z 10:48, 25 wrz 2006

Linek z wykladu 8 do tw. 4.13. Nazwa linku "Cantoro"

Ograniczenia logiki pierwszego rzędu

Ten rozdział poświęcony jest ograniczeniom, którym podlega język logiki pierwszego rzędu. Okazuje się, że nie każde pojęcie da się w nim wyrazić, a także, że są pojęcia, które dają się wyrazić, ale odpowiednie zdanie lub formuła z konieczności musi być skomplikowane. Rozważania w tym rozdziale będziemy prowadzić przy założeniu, że w sygnaturze występują wyłącznie symbole relacyjne. Wyniki dają się zastosować do sygnatur z symbolami funkcyjnymi, ale wymaga to zakodowania wszystkich funkcji jako relacji.

Zaczniemy od miary skomplikowania formuł, która będzie przydatna w dalszym ciągu.

Definicja

Rangę kwantyfikatorową Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle QR\var(\varphi)} formuły Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \var\varphi} definiujemy jak następuje:
  • QR()=QR(t1=t2)=QR(r(t1,,tk))=0 dla dowolnych termów t1,,tk oraz rΣkR.
  • Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle QR (\var\varphi\to \psi) =\max (QR (\var\varphi) ,QR (\psi)) } .
  • Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle QR (\forall x\var\varphi) =1+QR (\var\varphi) .}

Intuicyjnie QR to głębokość zagnieżdżenia kwantyfikatorów w formule. Jest to jedna z wielu możliwych miar stopnia komplikacji formuły φ. Parametr ten ma następujące znaczenie: jeśli struktura Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA} ma Parser nie mógł rozpoznać (nieznana funkcja „\vdashl”): {\displaystyle n\Delta\vdashl} elementów, to pesymistyczny czas sprawdzenia, czy dla zdania Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \var\varphi} zachodzi Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA\models \var\varphi} jest asymptotycznie proporcjonalny do Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle n^{QR \var\varphi },} gdy użyjemy naturalnego algorytmu do wykonania tego zadania, który dla każdego kwantyfikatora w formule przegląda wszystkie elementy struktury.

Teraz możemy wyjaśnić, dlaczego nie dopuszczamy symboli funkcyjnych w sygnaturze. Otóż ich obecność zakłóca potrzebne nam własności funkcji QR. Tytułem przykładu, formuła Rx,ffx jest atomowa i jej ranga kwantyfikatorowa powinna wynosić 0. Tymczasem gdy f będziemy reprezentować w strukturze jako dwuargumentową relację </math>FParser nie mógł rozpoznać (błąd składni): {\displaystyle , ta sama formuła przybierze postać } \exists y\exists z F x,y \land F y,z \land R x,z ,</math> której ranga kwantyfikatorowa wynosi 2. Twierdzenia, których dalej dowodzimy, odwołują się do wartości QR zdefiniowanych powyżej dla logiki bez symboli funkcyjnych. To właśnie jest przyczyna, dla której funkcje wykluczamy z rozważań.

Charakteryzacja Fra\"{\i

Definicja

relacyjną oraz BA, to struktura Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA_{|B}} tej samej sygnatury Σ co Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA} , nazywana \textit{podstrukturą indukowaną przez B w Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA,} } ma nośnik B, zaś dla każdego rΣnR

\[r^{\strA_{

=r^\strA\cap B^n.\]

}}


Definicja

strukturami relacyjnymi tej samej sygnatury Σ, ponadto niech AA i BB. Jeśli funkcja h:AB jest

izomorfizmem podstruktur indukowanych </math>h:\strA_{

\def\blank{\hbox{\sf Bmawiamy się, że

jest częściowym

izomorfizmem z Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA} w Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle \strB} o pustej dziedzinie i pustym obrazie.

Dla dwóch częściowych izomorfizmów g,h z Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA} w Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle \strB} piszemy gh gdy domgdomh oraz ga=ha dla wszystkich adomg, to jest wtedy, gdy g jest zawarte jako zbiór w h. }}


Definicja

naturalną. Dwie struktury relacyjne tej samej sygnatury są \textit{m-izomorficzne}, co oznaczamy Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA\cong_{m}\strB,} gdy istnieje rodzina Parser nie mógł rozpoznać (błąd składni): {\displaystyle \{I_n&nbsp;|&nbsp;n\leq m\}} w której każdy In jest niepustym zbiorem częściowych izomorfizmów z Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA}Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle \strB,} oraz spełniająca następujące dwa warunki:

\begin{description} \item[Tam] Dla każdego hIn+1 oraz każdego aA istnieje takie gIn, że hg oraz adomg. \item[Z powrotem] Dla każdego hIn+1 oraz każdego bB istnieje takie gIn, że hg oraz brgg. \end{description}

Samą rodzinę Parser nie mógł rozpoznać (błąd składni): {\displaystyle \{I_n&nbsp;|&nbsp;n\leq m\}} nazywamy wówczas \textit{m-izomorfizmem} struktur Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA} i Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle \strB} , co oznaczamy Parser nie mógł rozpoznać (błąd składni): {\displaystyle \{I_n&nbsp;|&nbsp;n\leq m\}:\strA\cong_m\strB.}

Nieformalne wyjaśnienie jest takie: In to zbiór częściowych izomorfizmów, które mogą być rozszerzone n-krotnie o dowolne elementy w dziedzinie i obrazie, a kolejne rozszerzenia leżą w In1,,I0.


Definicja

\rm

Dwie struktury relacyjne tej samej sygnatury są \textit{skończenie izomorficzne}, symbolicznie Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA\cong_{fin}\strB,} gdy istnieje

rodzina </math>\{I_n 


Fakt

  • Jeśli Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA\cong\strB,} to Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA\cong_{fin}\strB.}
  • Jeśli Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA\cong_{fin}\strB} oraz nośnik Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA} jest

zbiorem skończonym, to Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA\cong\strB.}

Dowód

{{{3}}}



Definicja

Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA} i Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle \strB} tej samej sygnatury są \textit{elementarnie równoważne}, co zapisujemy symbolicznie Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA\equiv\strB,} gdy dla każdego zdania Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \var\varphi} logiki pierwszego rzędu nad tą samą sygnaturą, Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA\models\var\varphi} wtedy i tylko wtedy, gdy Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle \strB\models\var\varphi.}

Dwie struktry Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA} i Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle \strB} tej samej sygnatury są \textit{m-elementarnie równoważne}, symbolicznie Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA\equiv_m\strB,} gdy dla każdego zdania Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \var\varphi} logiki pierwszego rzędu nad tą samą sygnaturą, o randze kwantyfikatorowej nie przekraczającej m, zachodzi Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA\models\var\varphi} wtedy i tylko wtedy, gdy Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle \strB\models\var\varphi.}

Fakt

gdy dla każdego naturalnego m zachodzi Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA\cong_m\strB} .

Dowód

{{{3}}}


Twierdzenie

Niech Σ będzie dowolną sygnaturą relacyjną zawierającą skończenie wiele symboli, oraz niech Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA,\strB} będą dowolnymi strukturami nad Σ.

  • Dla każdego m zachodzi równoważność: Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA\cong_m\strB}

wtedy i tylko wtedy gdy Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA\equiv_m\strB} .

  • Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA\cong_{fin}\strB} wtedy i tylko wtedy gdy

Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA\equiv\strB} .

Dowód

{{{3}}}

\def\blank{\hbox{\sf Bdowodnimy tylko z lewej do prawej strony. Dowód w stronę

przeciwną jest bardziej zawiły technicznie, a w dodatku ta \rightarrowlikacja jest rzadko\boldsymbol{s}}\def\blank{\hbox{\sf Bżywana w praktyce. Wyraża za to istotną z metodologicznego punktu widzenia informację: jeśli dwie struktury są

m- elementarnie równoważne, to fakt ten można na pewno\boldsymbol{s}}\def\blank{\hbox{\sf Bdowodnić 

posługując się metodą Fra\"{\i}ss\'e, choć oczywiście nie ma gwarancji, że będzie to metoda najprostsza.

Ustalmy m. Dowód tego, że z Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA\cong_m\strB} wynika Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA\equiv_m\strB} sprowadza się do wykazania następującego faktu za pomocą indukcji ze względu na budowę Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \var\varphi} :

\begin{quote} Niech Parser nie mógł rozpoznać (błąd składni): {\displaystyle \{I_n &nbsp;|&nbsp; n\leq m\''} będzie rodziną o której mowa w definicji Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA\cong_m\strB} , niech Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \var\varphi} będzie formułą o co najwyżej r zmiennych wolnych bez\boldsymbol{s}}\def\blank{\hbox{\sf Btraty ogólności niech będą to x1,,xr i spełniającą Parser nie mógł rozpoznać (nieznana funkcja „\QR”): {\displaystyle \QR \var\varphi \leq n\leq m} oraz niech gIn. Wówczas dla dowolnych a1,,ardomg następujące dwa warunki są równoważne:} \[\strA,x_1:a_1,\dots,x_r:a_r\models\var\varphi\] \[\strB,x_1:g a_1 ,\dots,x_r:g a_r \models\var\varphi.\]\end{quote}

Dla formuł atomowych, powyższa teza wynika wprost z faktu, że g jest częściowym izomorfizmem przypomnijmy że w sygnaturze nie ma symboli funkcyjnych i co za tym idzie jedynymi termami są zmienne .

Gdy Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \var\varphi} ma postać ψξ, to mamy następujący ciąg równoważnych warunków:

  • Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA,x_1:a_1,\dots,x_r:a_r\models\psi\to\xi}
  • Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA,x_1:a_1,\dots,x_r:a_r\not\models\psi} lub

Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA,x_1:a_1,\dots,x_r:a_r\models\xi}

  • Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA,x_1:g a_1 ,\dots,x_r:g a_r \not\models\psi} lub

Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA,x_1:g a_1 ,\dots,x_r:g a_r \models\xi}

  • Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA,x_1:g a_1 ,\dots,x_r:g a_r \models\psi\to\xi,}


przy czym druga równoważność wynika z założenia indukcyjnego, a pierwsza i trzecia z definicji semantyki.

Gdy </math>\var\varphiParser nie mógł rozpoznać (błąd składni): {\displaystyle ma postać } \forall x \psi,Parser nie mógł rozpoznać (błąd składni): {\displaystyle to, jako że } x_{r+1}\notin FV \var\varphi icozatymidzie\models \forall x\psi

\leftrightarrow \forall x_{r+1} \psi x_{r+1}/x </math>  patrz Fakt 

#alfa-konw , możemy bez\boldsymbol{s}}\def\blank{\hbox{\sf Btraty ogólności założyć, że Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \var\varphi} ma postać xr+1ψ. Z założenia Parser nie mógł rozpoznać (nieznana funkcja „\QR”): {\displaystyle \QR \var\varphi \leq n} wynika, że Parser nie mógł rozpoznać (nieznana funkcja „\QR”): {\displaystyle \QR \psi \leq n-1} . Mamy teraz następujący ciąg równoważnych warunków:

  • Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA,x_1:a_1,\dots,x_r:a_r \models\var\varphi}
  • Dla każdego aA zachodzi

Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA,x_1:a_1,\dots,x_r:a_r,x_{r+1}:a \models\psi}

  • Dla każdego aA istnieje takie hIn1, że gh,

adomh oraz

Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA,x_1:a_1,\dots,x_r:a_r,x_{r+1}:a \models\psi}

  • Dla każdego aA istnieje takie hIn1, że gh,

adomh oraz

Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle \strB,x_1:g a_1 ,\dots,x_r:g a_r ,x_{r+1}:h a \models\psi}

  • Dla każdego bB istnieje takie hIn1, że

gh, brgh oraz

Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle \strB,x_1:g a_1 ,\dots,x_r:g a_r ,x_{r+1}:b \models\psi}

  • Dla każdego bB zachodzi

Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle \strB,x_1:g a_1 ,\dots,x_r:g a_r ,x_{r+1}:b \models\psi}

  • Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle \strB,x_1:g a_1 ,\dots,x_r:g a_r \models\var\varphi.}


Równoważności druga i czwarta zachodzą na mocy warunków Tam i Z powrotem, trzecia na mocy założenia indukcyjnego, a pozostałe na mocy definicji spełniania. }}

Pokażemy teraz pierwszy przykład inherentnego ograniczenia logiki pierwszego rzędu.

Fakt

Jeśli Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA,\strB} są dwoma skończonymi liniowymi porządkami o mocach większych niż 2m, to Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA\equiv_m\strB.}

Dowód

&\text{jeśli |ba|<2k}\\

\infty&\text{wpp.} \end{cases} \]

Niech Ik dla km będzie zbiorem wszystkich częściowych izomorfizmów </math>gz\strAw\strBParser nie mógł rozpoznać (błąd składni): {\displaystyle takich, że } \{\langle 0,0\rangle,\langle N,M\rangle\}\subseteq g</math> oraz dka,b=dkga,gb dla wszystkich a,bdomg. Oczywiście </math>I_k\neq \emptysetbo\{\langle 0,0\rangle,\langle N,M\rangle\}\in I_k.</math>

Pokazujemy własność Tam} dla rodziny Parser nie mógł rozpoznać (błąd składni): {\displaystyle \{I_k&nbsp;|&nbsp;k\leq m\'''} . Niech gIk+1. Niech a{0,,N}. Mamy wskazać w Ik częściowy izomorfizm hg taki, że adomh.

Rozróżniamy dwa przypadki:

i  Jeśli istnieje takie bdomg, że dka,b<, to w 

B jest dokładnie jeden\Delta\vdashlement a, który jest tak samo położony względem gb jak a względem b, oraz spełnia dja,gb=dja,b. Kładziemy wówczas ha:=a i h jest wtedy częściowym izomorfizmem zachowującym odległości dj.

ii  Jeśli natomiast takiego b nie ma, to niech a<a<a, gdzie 

a,a są najbliższymi b\Delta\vdashlementami po lewej i po prawej, które należą do domg. Wówczas dja,a=dja,a=, co w myśl definicji dj oznacza, że dj+1a,a=. Zatem na mocy założenia indukcyjnego także dj+1ga,ga=. Istnieje więc ga<b<ga takie, że \mbox{djga,b=djb,ga=},

i wówczas kładąc ha:=b\boldsymbol{s

\def\blank{\hbox{\sf Bzyskujemy żądane rozszerzenie.

}}


Przykład powyższy wskazuje na kilka istotnych ograniczeń logiki pierwszego rzędu. Po pierwsze, nie da się żadnym zdaniem zdefiniować nawet tak prostego pojęcia jak ,,porządek liniowy o parzystej liczbie elementów, i to bez względu na to, jak byśmy je rozumieli dla modeli nieskończonych. Istotnie, zdanie które miałoby definiować taką własność musiałoby mieć jakąś rangę kwantyfikatorową, powiedzmy q. Jednak w myśl poprzedniego twierdzenia, porządki o mocach 2q+1 i 2q+2q-elementarnie równoważne i nasze hipotetyczne zdanie jest albo prawdziwe w obu, albo fałszywe w obu, podczas gdy powinno być w jednym fałszywe, a w drugim prawdziwe.


Drugim ograniczeniem jest fakt, że każda specyfikacja porządku liniowego o mocy n w logice pierwszego rzędu musi z konieczności mieć rangę kwantyfikatorową co najmniej log2n, a więc sugeruje algorytm sprawdzenia, czy dany obiekt mocy m istotnie spełnia tę specyfikację, którego czas działania ma rząd wielkości mlog2n, co jest wynikiem fatalnym.\footnote{Na szczęście znamy lepsze algorytmy wykonujące to zadanie.} Bierze się to stąd, że prawdziwość zdania o randze kwantyfikatorowej q sprawdza się w danej skończonej strukturze za pomocą q zagnieżdżonych pętli, z których każda przegląda cały nośnik struktury i odpowiada jednemu kwantyfikatorowi.


Gra Ehrenfeuchta

Charakteryzacja Fra\"{\i}ss\'e jest dość skomplikowana i odpychająca w bezpośrednim\boldsymbol{s}}\def\blank{\hbox{\sf Bżyciu. W praktyce jej popularność ogromnie zwiększyło podanie przez Andrzeja Ehrenfeuchta jej równoważnego opisu w terminach dwuosobowej gry, którą teraz zdefiniujemy. Gra ta doskonale sprawdza się w rozumowaniach intuicyjnych. Praktyczne doświadczenie wskazuje, że próby napisania bardzo formalnego dowodu przy\boldsymbol{s}}\def\blank{\hbox{\sf Bżyciu gry kończą się zwykle wskazaniem rodziny zbiorów częściowych izomorfizmów w duchu Fra\"{\i}ss\'e.

Niech Σ będzie sygnaturą relacyjną i niech Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA,\strB} będą strukturami sygnatury Σ.

Dla\boldsymbol{s}}\def\blank{\hbox{\sf Bproszczenia zakładamy, że AB=. \bigbreak

Definicja

{{{3}}}

Definicja powyższa dopuszcza powtarzanie ruchów przez obu graczy, czyli wybieranie\Delta\vdashlementów, które poprzednio były już wybrane. Jest to dogodne, gdyż\boldsymbol{s}}\def\blank{\hbox{\sf Bpraszcza definicję. Gdybyśmy bowiem zakazali tego, to albo niemożliwe byłoby rozegranie gry Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle G_m \strA,\strB } gdy choć jedna ze struktur ma moc mniejszą niż m, albo trzeba by było wprowadzić w definicji specjalny warunek służący do rozstrzygania zwycięstwa w sytuacjach, gdy brak możliwości dalszych ruchów.

W praktyce jednak w dowodach prawie nigdy nie rozpatruje się takich ruchów, gdyż jest oczywiste, że wykonanie takiego posunięcia przez gracza I nie przybliża go do zwycięstwa, zaś gdy wykona je gracz II mimo że nie zrobił tego gracz I, powoduje to jego natychmiastową przegraną.


Twierdzenie

  • Gracz II ma strategię wygrywającą w grze Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle G_m \strA,\strB } wtedy i tylko

wtedy, gdy Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA\cong_{m}\strB.}

  • Gracz II ma dla każdego m strategię wygrywającą w grze

Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle G_m \strA,\strB } wtedy i tylko wtedy, gdy Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA\cong_{fin}\strB.}

Dowód

{{{3}}}

Poniższe twierdzenie ilustruje, w jaki sposób gra może zostać wykorzystana dla wskazania ograniczeń możliwości logiki pierwszego rzędu.

Twierdzenie

{{{3}}}

<span id="

W myśl Twierdzenia #ehrenfeucht należy pokazać, że dla każdego m gracz II ma strategię wygrywającą w grze Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle G_m \strA,\strB .} Opiszemy teraz tę strategię. Jej postać nie zależy od liczby rund do rozegrania. Pokażemy też, że jeśli po zakończeniu poprzedniej rundy warunek wygrywający dla gracza II był spełniony, to po wykonaniu ruchu zgodnie ze wskazaną strategią pozostanie on nadal spełniony. Wówczas na mocy zasady indukcji po rozegraniu dowolnej ilości rund, w których gracz II będzie się stosował do tej strategii, pozostanie on zwycięzcą.

Zauważmy, że warunek o częściowym izomorfizmie w naszej sytuacji oznacza tyle, że zbiory {a1,,ak} i {b1,,bk} elementów wybranych w każdej ze struktur, po posortowaniu rosnąco zgodnie z porządkiem odpowiednio Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \leq^\strA} oraz Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle \leq^\strB} prowadzą do identycznych ciągów indeksów swoich oznaczeń. Dokładnie, jeśli Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle a_{i_1}<^\strA a_{i_2}<^\strA \dots<^\strA a_{i_k}} i Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle b_{j_1}<^\strB b_{j_2}<^\strB \dots<^\strB b_{j_k}} , to zachodzą równości i=j dla =1,,k.

  • Na pierwszy ruch gracza I gracz II odpowiada w dowolny sposób.

Przed tą rundą nie było wybranych\Delta\vdashlementów, czyli przekształcenie opisane w definicji gry było przekształceniem pustym, które na mocy konwencji jest częściowym izomorfizmem. Po wykonaniu ruchu zgodnie ze strategią ciągi indeksów w obu strukturach są oczywiście identyczne.

  • We wszystkich kolejnych rundach gracz II określa swój ruch

następująco. Niech </math>a_{i_1}<^\strA a_{i_2}<^\strA \dots<^\strA a_{i_k}</math> i Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle b_{i_1}<^\strB b_{i_2}<^\strB \dots<^\strB b_{i_k}} będą

identycznymi na mocy założenia indukcyjnego  ciągami indeksów przed 

wykonaniem tego ruchu. Ze względu na symetrię sytuacji, możemy bez \boldsymbol{s" style="font-variant:small-caps">Dowód

{{{3}}}

\def\blank{\hbox{\sf Btraty ogólności założyć, że gracz I wybiera strukturę Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA} . Może

symbolem ak+1 oznaczyć:

    • Element mniejszy od ai1. Wówczas gracz II

wybiera\Delta\vdashlement mniejszy od bi1 w Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle \strB} , który istnieje na mocy założenia, że w Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle \strB} nie ma\Delta\vdashlementu najmniejszego. Widać, że nowe ciągi indeksów pozostaną równe.

    • Element większy od aik. Wówczas gracz II wybiera\Delta\vdashlement

większy od bik w Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle \strB} , który istnieje na mocy założenia, że w Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle \strB} nie ma\Delta\vdashlementu ostatniego. Widać, że także teraz nowe ciągi indeksów pozostaną równe.

    • Element </math>aParser nie mógł rozpoznać (błąd składni): {\displaystyle spełniający } a_{i_{\ell}}<^\strA a<^\strA

a_{i_{\ell+1}}</math> dla pewnego . W Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle \strB} istnieje\Delta\vdashlement b spełniający Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle b_{i_{\ell}}<^\strB b<^\strB b_{i_{\ell+1}}} , gdyż Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle \strB} jest porządkiem gęstym. Gracz II wybiera taki\Delta\vdashlement i również w tym wypadku widać, że nowe ciągi indeksów pozostaną równe.


Na tym dowód istnienia strategii wygrywającej dla gracza II jest zakończony. }}

Z powyższego wynika między innymi, że </math>\langle \mathbb{R},\leq\rangle\equiv\langle \mathbb{Q},\leq\rangle.</math> Zatem nie ma zdania logiki pierwszego rzędu, które definiuje pojęcie porządku ciągłego tzn. takiego, w którym wszystkie niepuste ograniczone podzbiory mają kres górny i kres dolny , bo musiałoby ono być prawdziwe w pierwszej ze struktur, a fałszywe w drugiej.

Definicja

\ \strA\models\var\varphi,\ \mbox{dla każdego\

\strA\in\K\}</math>

teoria klasy struktur Parser nie mógł rozpoznać (nieznana funkcja „\K”): {\displaystyle \K}
  albo  

Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle '''Th} \strA = \{\var\varphi\ |\ \strA\models\var\varphi\'''}

teoria modelu Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA}
 . Teorię  

Δ nazywamy \textit{zupełną}, gdy dla każdego zdania Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \var\varphi,} dokładnie jedno ze zdań Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \var\varphi} i Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \lnot\var\varphi} należy do

Δ. Zbiór zdań prawdziwych w\boldsymbol{s

\def\blank{\hbox{\sf Bstalonym modelu jest oczywiście zawsze

teorią zupełną. }}


Wniosek

Teoria klasy 𝒜 wszystkich porządków liniowych, gęstych, bez\Delta\vdashlementu pierwszego i ostatniego jest zupełna.

Dowód

{{{3}}}





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

Wykazać, że dla dostatecznie dużych q istnieje zdanie o randze kwantyfikatorowej q definiujące porządek liniowy o mocy 2q.

Adaptując dowód Faktu #qq\boldsymbol{s}}\def\blank{\hbox{\sf Bdowodnić, że struktury Parser nie mógł rozpoznać (błąd składni): {\displaystyle \<\{1-1/n&nbsp;|&nbsp;n=1,2,\dots\},\leq\>} oraz Parser nie mógł rozpoznać (błąd składni): {\displaystyle \<\bigcup_{n=1}^\infty\{1-1/n,1+1/n,3-1/n\},\leq\>} , gdzie jest w obu wypadkach standardowym porządkiem liczb wymiernych, są elementarnie równoważne.

Wywnioskować stąd, że pojęcie dobrego porządku nie jest wyrażalne w logice pierwszego rzędu. Zupełnie inny dowód tego faktu poznamy w Rozdziale #zwarciig\leftrightarrowwi.

  1. Niech R będzie jednoargumentowym symbolem relacyjnym.

Udowodnić, że klasa wszystkich takich struktur </math>\strA=\langle A,R\rangle</math>, że |R|=|AR|, nie jest aksjomatyzowalna żadnym zbiorem zdań pierwszego rzędu.

  1. Udowodnić, że klasa wszystkich skończonych lub nieskończonych grafów

Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA=\langle A,E\rangle,} w których istnieją dwa wierzchołki o równych sobie, skończonych stopniach, nie jest aksjomatyzowalna żadnym zdaniem pierwszego rzędu.

  1. Udowodnić, że klasa wszystkich skończonych lub nieskończonych grafów

Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA=\langle A,E\rangle,} których każdy skończony podgraf jest planarny, nie jest aksjomatyzowalna żadnym zdaniem pierwszego rzędu.


  1. Pokazać, że klasa wszystkich relacji równoważności, których

wszystkie skończone klasy abstrakcji mają parzystą moc, nie jest aksjomatyzowalna żadnym zdaniem pierwszego rzędu.

Dane są dwie struktury relacyjne </math>\strA=\langle U,R^\strA\rangle</math> i Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle \strB=\langle U,R^\strB\rangle} nad sygnaturą złożoną z jednego dwuargumentowego symbolu relacyjnego. Ich nośnikiem jest U={1,2,,15}, relacja Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle R^\strA x,y } zachodzi \wtw, gdy x|y, a relacja Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle R^\strB x,y } \wtw, gdy xy(mod2).

Ustalić, jaką minimalną rangę kwantyfikatorową ma zdanie Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \var\varphi} takie, że Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA\models\var\varphi}Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle \strB\not\models\var\varphi.}

  1. Dane są dwie sześcioelementowe

struktury relacyjne Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA} i Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle \strB} nad sygnaturą złożoną z jednego dwuargumentowego symbolu relacyjnego. Struktury są narysowane poniżej jako grafy skierowane:

Parser nie mógł rozpoznać (nieznana funkcja „\begi”): {\displaystyle \begi\prooftree array \justifies c|c \using \textrm{ W }\endprooftree \xymatrix { *{\ast} \ar@{<->}[r] \ar@{<->}[d] \ar@{<->}[dr] & *{\ast} \ar@{<->}[d] \ar@{<->}[l] \ar@{<->}[dl] & *{\ast} & \\ *{\ast} \ar@{<->}[r] & *{\ast} & *{\ast} & *{\relax} }&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \xymatrix { *{\ast} \ar@{<->}[d] \ar@{<->}[dr] & *{\ast} & *{\ast} & \\ *{\ast} \ar@{<->}[r] & *{\ast} & *{\ast} & *{\relax} } \end{array} }

Ustalić, jaką minimalną rangę kwantyfikatorową ma zdanie Parser nie mógł rozpoznać (nieznana funkcja „\var”): {\displaystyle \var\varphi} takie, że Parser nie mógł rozpoznać (nieznana funkcja „\strA”): {\displaystyle \strA\models\var\varphi}Parser nie mógł rozpoznać (nieznana funkcja „\strB”): {\displaystyle \strB\not\models\var\varphi.}


\end{small}