在模型論 中,型 是一階邏輯 中的一個相容的公式集合。一個完備型 是這類集合中的一個極大元素。
首先固定以下對象:
L
{\displaystyle {\mathcal {L}}}
:一個一階語言
T
{\displaystyle T}
:一個
L
{\displaystyle {\mathcal {L}}}
-理論
M
{\displaystyle {\mathcal {M}}}
為
T
{\displaystyle T}
的一個模型 ,
A
⊂
M
{\displaystyle A\subset {\mathcal {M}}}
記
L
(
A
)
=
L
∪
{
c
a
:
a
∈
A
}
{\displaystyle {\mathcal {L}}(A)={\mathcal {L}}\cup \{c_{a}:a\in A\}}
(即:將 A 「加入」語言的常量符號)。於是
M
{\displaystyle {\mathcal {M}}}
自然地成為
L
(
A
)
{\displaystyle {\mathcal {L}}(A)}
的一個結構 ,記
T
h
A
(
M
)
{\displaystyle \mathrm {Th} _{A}({\mathcal {M}})}
為相應的完備理論。
設
n
∈
N
{\displaystyle n\in \mathbb {N} }
,
Σ
(
v
→
)
=
Σ
(
v
1
,
…
,
v
n
)
{\displaystyle \Sigma ({\vec {v}})=\Sigma (v_{1},\ldots ,v_{n})}
為一個
L
(
A
)
{\displaystyle {\mathcal {L}}(A)}
的子集,使其元素均為帶 n 個自由變元
(
v
1
,
…
,
v
n
)
{\displaystyle (v_{1},\ldots ,v_{n})}
的公式。
若
Σ
(
v
→
)
{\displaystyle \Sigma ({\vec {v}})}
與
T
h
A
(
M
)
{\displaystyle \mathrm {Th} _{A}({\mathcal {M}})}
相容,則稱之為
T
h
A
(
M
)
{\displaystyle \mathrm {Th} _{A}({\mathcal {M}})}
上的 n-型 。
此外,若
Σ
(
v
→
)
{\displaystyle \Sigma ({\vec {v}})}
對集合包含關係是極大的,則稱之完備型 ;一個型
Σ
(
v
→
)
{\displaystyle \Sigma ({\vec {v}})}
是完備型的充要條件是
∀
ϕ
∈
L
(
A
)
ϕ
∈
Σ
(
v
→
)
∨
¬
ϕ
∈
Σ
(
v
→
)
{\displaystyle \forall \phi \in {\mathcal {L}}(A)\quad \phi \in \Sigma ({\vec {v}})\vee \neg \phi \in \Sigma ({\vec {v}})}
由佐恩引理 與圖法可推出每個型都包含於一個完備型。
通常也將型與完備型分別稱作部份型 與型 ,以下將採此稱呼。
以
S
n
M
(
A
)
{\displaystyle S_{n}^{\mathcal {M}}(A)}
表示所有
T
h
A
(
M
)
{\displaystyle \mathrm {Th} _{A}({\mathcal {M}})}
上 n 個變元的型,集合 A 也稱作參數集。設結構
N
{\displaystyle {\mathcal {N}}}
為
M
{\displaystyle {\mathcal {M}}}
的一個基本擴展 ,
b
→
=
(
b
1
,
…
,
b
n
)
∈
N
{\displaystyle {\vec {b}}=(b_{1},\ldots ,b_{n})\in {\mathcal {N}}}
,則容易驗證以下集合是個型,稱之為
b
→
∈
N
{\displaystyle {\vec {b}}\in {\mathcal {N}}}
在 A 上的型:
t
p
N
(
b
→
|
A
)
:=
{
ϕ
(
b
→
)
∈
L
(
A
)
:
N
⊨
ψ
(
b
→
)
}
{\displaystyle \mathrm {tp} ^{\mathcal {N}}({\vec {b}}|A):=\{\phi ({\vec {b}})\in {\mathcal {L}}(A):{\mathcal {N}}\models \psi ({\vec {b}})\}}
根據緊緻性定理 可推出:對所有型
p
∈
S
n
M
(
A
)
{\displaystyle p\in S_{n}^{\mathcal {M}}(A)}
,都存在一個
M
{\displaystyle {\mathcal {M}}}
的基本擴展
N
{\displaystyle {\mathcal {N}}}
及
b
→
∈
N
{\displaystyle {\vec {b}}\in {\mathcal {N}}}
使得
p
=
t
p
N
(
b
→
|
A
)
{\displaystyle p=\mathrm {tp} ^{\mathcal {N}}({\vec {b}}|A)}
,此時稱
b
→
{\displaystyle {\vec {b}}}
實現 了 p;如果該模型中不存在這樣的
b
→
{\displaystyle {\vec {b}}}
,則稱此模型省略 了 p。
以下取一階語言
L
=
⟨
<
⟩
{\displaystyle {\mathcal {L}}=\langle <\rangle }
,並設 DLO 為稠密全序(或稱稠密線性序)理論。此時有
Q
⊨
D
L
O
{\displaystyle \mathbb {Q} \models \mathrm {DLO} }
。不妨取
A
=
Q
{\displaystyle A=\mathbb {Q} }
,此時
p
=
t
p
1
Q
(
2
|
A
)
{\displaystyle p=\mathrm {tp} _{1}^{\mathbb {Q} }(2|A)}
是一個型,它代表所有代入 x=2 時在
Q
{\displaystyle \mathbb {Q} }
中成立的公式
ϕ
(
x
)
∈
L
(
A
)
{\displaystyle \phi (x)\in {\mathcal {L}}(A)}
,例如
x
≠
3
{\displaystyle x\neq 3}
、
x
<
5
{\displaystyle x<5}
、
∃
y
y
<
x
{\displaystyle \exists y\;y<x}
……。
p 在
Q
{\displaystyle \mathbb {Q} }
裏已經實現。此外也可以考慮基本擴展
Q
<
R
{\displaystyle \mathbb {Q} <\mathbb {R} }
及型
q
:=
t
p
1
R
(
2
|
A
)
{\displaystyle q:=\mathrm {tp} _{1}^{\mathbb {R} }({\sqrt {2}}|A)}
。q 無法在
Q
{\displaystyle \mathbb {Q} }
中實現,因為 q 包含下述所有公式
ϕ
α
(
x
)
:=
2
−
α
<
x
<
2
+
α
,
(
α
∈
Q
)
{\displaystyle \phi _{\alpha }(x):=2-\alpha <x<2+\alpha ,\quad (\alpha \in \mathbb {Q} )}
而這些公式在
Q
{\displaystyle \mathbb {Q} }
定義出的子集交集為空;在這個例子裏,一個型無法被實現的原因可歸於參數集 A「太大」,事實上
Q
{\displaystyle \mathbb {Q} }
能實現所有帶有限參數的型。一般來說,無理數給出了無法在
Q
{\displaystyle \mathbb {Q} }
中實現的型,在
Q
{\displaystyle \mathbb {Q} }
中描述這些「數」的一套經典辦法是戴德金切割 。
現在考慮另一個例子:取一階語言
L
=
⟨
+
,
−
,
⋅
,
0
,
1
,
<
⟩
{\displaystyle {\mathcal {L}}=\langle +,-,\cdot ,0,1,<\rangle }
,OR 為有序環的理論,
A
=
∅
{\displaystyle A=\emptyset }
。此時
R
⊨
O
R
{\displaystyle \mathbb {R} \models \mathrm {OR} }
。考慮下述公式:
ϕ
n
(
x
)
:=
x
>
1
+
⋯
+
1
⏟
n
{\displaystyle \phi _{n}(x):=x>\underbrace {1+\cdots +1} _{n}}
Σ
:=
{
ϕ
n
:
n
∈
N
}
{\displaystyle \Sigma :=\{\phi _{n}:n\in \mathbb {N} \}}
任何
Σ
{\displaystyle \Sigma }
的有限子集都與
T
h
A
(
R
)
{\displaystyle \mathrm {Th} _{A}(\mathbb {R} )}
相容,所以由緊緻性定理 可證
Σ
{\displaystyle \Sigma }
包含於一個型;
Σ
{\displaystyle \Sigma }
無法在
R
{\displaystyle \mathbb {R} }
中實現,卻能在
R
{\displaystyle \mathbb {R} }
的某個基本擴展——超實數中實現。一個能實現所有滿足
A
⊂
M
,
|
A
|
<
|
M
|
{\displaystyle A\subset {\mathcal {M}},|A|<|{\mathcal {M}}|}
的型的模型稱作飽和模型 。
先前關於
(
Q
,
<
)
{\displaystyle (\mathbb {Q} ,<)}
的評註適用於任何稠密全序集。設
T
⊨
D
L
O
{\displaystyle T\models \mathrm {DLO} }
,而 A 是其中的子集,則
S
1
T
(
A
)
{\displaystyle S_{1}^{T}(A)}
的元素一一對應到 A 所定義的戴德金切割
(
L
,
U
)
{\displaystyle (L,U)}
:
A
=
L
∪
U
{\displaystyle A=L\cup U}
∀
x
∀
y
x
∈
L
∧
y
∈
U
⇒
x
<
y
{\displaystyle \forall x\;\forall y\quad x\in L\wedge y\in U\Rightarrow x<y}
註:為了使結論簡潔,在此容許 L 含最大元素(或 U 含最小元素),而且 L 或 U 可以是空集合。
此外,
S
1
T
(
A
)
{\displaystyle S_{1}^{T}(A)}
的非孤立點對應到沒有最大/最小元素的切割。證明關鍵在運用 DLO 的量詞消去 。
取定一個代數封閉域
K
{\displaystyle K}
及其子集
A
⊂
K
{\displaystyle A\subset K}
。令
K
0
{\displaystyle K_{0}}
為
A
{\displaystyle A}
生成的子域,則可定義下述映到交換環譜 的連續 映射:
i
:
S
n
(
A
)
⟶
S
p
e
c
(
K
0
[
X
1
,
…
,
X
n
]
)
{\displaystyle i:S_{n}(A)\longrightarrow \mathrm {Spec} (K_{0}[X_{1},\ldots ,X_{n}])}
p
↦
I
p
:=
{
f
∈
K
0
[
X
]
:
(
f
(
v
→
)
=
0
)
∈
p
}
{\displaystyle p\mapsto I_{p}:=\{f\in K_{0}[X]:(f({\vec {v}})=0)\in p\}}
同用利用量詞消去 性質,可以證明 i 給出集合的雙射 ,由此在
S
p
e
c
(
K
0
[
X
1
,
…
,
X
n
]
)
{\displaystyle \mathrm {Spec} (K_{0}[X_{1},\ldots ,X_{n}])}
引出的拓撲較扎里斯基拓撲細,而扎里斯基拓撲裏的閉集拉回後正好是 Stone 空間中由
ϕ
(
v
→
)
:=
f
1
(
v
→
)
=
0
∧
⋯
∧
f
m
(
v
→
)
=
0
{\displaystyle \phi ({\vec {v}}):=f_{1}({\vec {v}})=0\wedge \cdots \wedge f_{m}({\vec {v}})=0}
定義的開/閉集,其中
f
1
,
…
,
f
m
∈
K
0
[
X
1
,
…
,
X
n
]
{\displaystyle f_{1},\ldots ,f_{m}\in K_{0}[X_{1},\ldots ,X_{n}]}
。扎里斯基拓撲中對應到不可約子簇的一般點則拉回到在某個超越擴張 上實現的型。
給定一個 n-型 p,一個自然的問題是研究省略 p 的模型。當 p 是孤立點時,所有模型都實現 p;反過來說,省略型定理 則斷言:設
L
{\displaystyle {\mathcal {L}}}
是可數 語言,若 p 非孤立點,則有一個省略 p 的可數模型。
舉例來說,在特徵為零的代數封閉域理論中,取 p 為由一個相對於
Q
{\displaystyle \mathbb {Q} }
的超越元素給出的型,任兩個這樣的超越元素都在一個基本擴展中同構,所以 p 的定義與選取無關。這是 Stone 空間中唯一的非孤立點。代數數 是個省略 p 的可數模型,而任何
Q
{\displaystyle \mathbb {Q} }
的超越擴張都實現 p。其餘的型都由某個代數數給出,而且被所有模型實現。