1 束縛変数の標準化
本記事では、Lを集合サイズの一階言語とし、各非論理記号の項数は有限であるとする。結合子∧,∨,↔と量化子∃は、¬,→,∀から定義される略記として用いる。
定義 1.1. 論理式φの各量化子が相異なる変数を束縛し、かつ束縛変数がFV(φ)と交わらないとき、φは束縛変数が標準化されている (standardized apart) という。
補題 1.2. 任意の一階論理式φに対して、φとα同値であり、束縛変数が標準化されている論理式φ′が存在する。
証明.φの構文木は有限であるから、φに現れる変数の集合と量化子の集合は有限である。変数集合は可算無限集合なので、φに現れない相異なる変数を、量化子の個数だけ選ぶことができる。
構文木を根からたどり、各量化子Qxに、それまでに用いておらず、φにも現れない変数zを一つ割り当てる。Qxが束縛する出現だけをzへ変更する。この変更ではzが新鮮であるため変数捕獲は生じず、α同値が保たれる。有限個の量化子について同じ操作を行うと、各量化子が相異なる変数を束縛し、束縛変数が元の自由変数と交わらない論理式φ′を得る。したがってφ≡αφ′である。▨
量化子を結合子の外へ移すときには、移動先の論理式で変数が自由に現れないことが必要である。この条件を落とすと、移動前後で変数への依存が変わる。
補題 1.3.x∈/FV(β)とし、Qを∀又は∃とする。Qは、Q=∀のとき∃、Q=∃のとき∀を表す。このとき、次の論理的同値が成り立つ。
¬Qxα(Qxα)→ββ→(Qxα)↔Qx¬α,↔Qx(α→β),↔Qx(β→α).
証明. 任意のL構造Mと割当てsを固定する。第1式は、例えばQ=∀の場合には
M,s⊨¬∀xα⟺M,s[x↦a]⊨α を満たす a∈∣M∣ が存在すると∃の意味から従う。Q=∃の場合も同じ量化の否定から従う。
第2式でQ=∀とする。左辺が偽であることは、M,s⊨∀xαかつM,s⊨βと同値である。x∈/FV(β)と§E16.6 定理 4.1により、後者は任意のa∈∣M∣についてM,s[x↦a]⊨βと同値である。したがって左辺が偽であることは、任意のaについてM,s[x↦a]⊨αであり、かつM,s[x↦a]⊨βであることと同値である。この条件はM,s⊨∃x(α→β)と同値である。Q=∃の場合には、左辺が偽であることがM,s[x↦a]⊨αかつM,s[x↦a]⊨βを満たすa∈∣M∣が存在することに等しく、右辺∀x(α→β)の不成立と一致する。
第3式では、x∈/FV(β)によりβの真理値がs[x↦a]のaに依存しない。βが偽なら両辺は真であり、βが真なら両辺はそれぞれQxαと同じ真理値をもつ。任意のM,sで各同値が成立するため、三つの式は論理的に同値である。▨
2 冠頭標準形
証明の方針は、最初に束縛変数を標準化し、構文木の下から上へ量化子を移すことである。束縛変数を先に分離することにより、補題 1.3の自由変数条件を各段階で満たす。
証明.補題 1.2により、φを束縛変数が標準化されたα同値な論理式へ置き換える。§E16.6 定理 5.2により、α同値な論理式の充足は一致するので、この置換は論理的同値を保つ。また、§E16.5 命題 5.4により自由変数集合も変わらない。以下では、標準化後の論理式とその各部分論理式について、「自由変数集合を保つ論理的に同値な冠頭標準形が存在する」という強化した主張を構造帰納法で証明する。
φの構造に関する帰納法を用いる。原子式は量化子接頭部が空の冠頭標準形であり、自由変数集合も変わらない。αが、帰納法の仮定によりQ1x1⋯Qmxmθと同値であるとする。補題 1.3の第1式を外側から順に用いると、¬αはQ1x1⋯Qmxm¬θと同値になる。量化子が束縛する変数と行列中の自由変数は変わらないので、変形後の自由変数集合はFV(¬α)=FV(α)に等しい。
次にα→βを考える。帰納法の仮定により、αとβをそれぞれ
Q1x1⋯Qmxmθ,R1y1⋯Rkykηへ変形することができる。束縛変数は全体で標準化されているため、各xiはηに自由に現れず、各yjはθに自由に現れない。第2式をQ1x1,…,Qmxmへ、第3式をR1y1,…,Rkykへ順に適用すると、
Q1x1⋯QmxmR1y1⋯Rkyk(θ→η)を得る。この論理式の行列は量化子を含まない。各量化子移動は、移動する変数が反対側の行列に自由に現れないという条件の下で行われるため、新しい自由変数を導入せず、既存の自由変数も束縛しない。従って、得られた論理式の自由変数集合はFV(α)∪FV(β)=FV(α→β)である。
∀xαの場合には、αの冠頭標準形の先頭へ∀xを付ければよい。全体の束縛変数は標準化されているため、xはαの冠頭標準形の接頭部に現れる束縛変数とは異なる。帰納法の仮定から自由変数集合は
FV(∀xα)=FV(α)∖{x}のままである。原始結合子¬,→,∀のすべての場合を処理したので、構造帰納法により結論が従う。▨
3 Skolem 化
冠頭標準形定理は開論理式にも適用するが、以下で Skolem 化の入力とするφは文に限定する。開論理式を Skolem 化する場合は、frontmatter の scope のとおり自由変数を外側で全称量化して文にしてから同じ構成を適用する。
定義 3.1. 束縛変数が標準化された冠頭標準形の文を
φp=Q1x1⋯Qnxnθとする。接頭部の存在量化子∃xiごとに、それより左にある全称量化された変数を、出現順にy1,…,yrとする。Lに現れない新しいr項関数記号fiを加え、行列中のxiをfi(y1,…,yr)へ捕獲を避けて代入する。r=0のときfiは新しい定数記号である。
すべての存在量化子を除き、残った全称量化子を先頭に置いたLSk文を
Sk(φ) (Skolemization) という。異なる存在量化子には異なる新記号を割り当てる。
例 3.2 (Skolem 関数が表す依存関係). 文
∀x∃y∀z∃wR(x,y,z,w)の Skolem 化は、新しい一項関数記号fと二項関数記号gを用いて
∀x∀zR(x,f(x),z,g(x,z))となる。yの証人は先行する全称変数xに依存し、wの証人はx,zに依存する。先行する存在変数yは、すでにf(x)へ置き換えられているため、gの独立した引数にはしない。
Skolem 化の二つの保存方向を別々に証明する。還元方向では選択公理を必要としない。
定理 3.3.NをLSk構造とする。N⊨Sk(φ)ならば、元の言語への還元N↾Lはφを満たす。
証明.φの接頭部を左から読み、全称量化された変数には任意の要素を割り当てる。存在量化されたxiに到達した場合には、その変数より左にある全称変数の現在の値をa1,…,arとし、xiへfiN(a1,…,ar)を割り当てる。
すべての全称変数の値を固定すると、以上の規則は各存在変数の値を定める。N⊨Sk(φ)であるから、得られた値を Skolem 化後の行列へ代入すると行列は真である。§E16.7 定理 5.2により、この行列の真理値は、元の行列で各存在変数へ上記の値を割り当てた場合の真理値と一致する。全称変数の値は任意であり、各存在変数について実際の証人を与えたので、接頭部を右から左へ充足関係の定義に従って戻すとN↾L⊨φpを得る。冠頭標準形定理によりφとφpは同値なので、N↾L⊨φである。▨
定理 3.4.MをL構造とする。M⊨φならば、Mと同じ台集合をもち、Sk(φ)を満たすLSk拡大MSkが存在する。この存在証明では選択公理を用いる。
証明の方針は、量化子接頭部が与える有限の選択過程を左から構成することである。各存在変数の証人は、それより前に選ばれた全称変数の値だけを外部引数として受け取る。
証明.定理 2.2によりM⊨φpである。接頭部を左から有限回たどる。最初の存在量化子∃xiに到達するまでの全称変数の値をaˉ∈∣M∣rとする。それ以前の存在変数については、すでに構成した関数によって値が定まっている。充足関係の定義と、それまでの構成が残りの接尾部を真に保つという帰納法の仮定により、各aˉに対して、残りの接尾部を真にするxiの値の集合Waˉは空でない。
集合族(Waˉ)aˉ∈∣M∣rに選択公理を適用し、各aˉに証人baˉ∈Waˉを選ぶ。fiMSk(aˉ)=baˉと定める。r=0の場合には添字集合が一元集合なので、同じ選択は一つの証人を選び、新しい定数の値とする操作である。この定義により、任意の先行全称変数の値について、残りの接尾部を真にする選択が固定される。
存在量化子は有限個なので、この操作を左から順に有限回反復することができる。後の存在変数を処理するとき、先行する存在変数の値は、すでに定めた Skolem 関数を先行全称変数へ適用した値である。したがって、後の Skolem 関数の外部引数には、先行する全称変数だけを用いればよい。
すべての新関数記号を以上の関数で解釈した拡大をMSkとする。任意の全称変数の値に対して、構成した各関数は元の存在量化子の証人を与えるため、MSkは Skolem 化後の量化子を含まない行列を満たす。ゆえにMSk⊨Sk(φ)である。▨
系 3.5.φがL構造で充足可能であることと、Sk(φ)がLSk構造で充足可能であることは同値である。
証明.φのモデルには定理 3.4を適用し、Sk(φ)のモデルには定理 3.3を適用する。▨
4 理論全体の Skolem 化
理論を Skolem 化するときには、異なる文または異なる存在量化子が同じ新記号を偶然共有しないようにする必要がある。
定理 4.1.T⊆Sent(L)を集合とする。各σ∈Tを冠頭標準形へ変形し、各存在量化子の出現(σ,i)に固有の新しい Skolem 関数記号を割り当てる。得られた文の集合をSk(T)とする。このとき、次が成り立つ。
- 新しい記号全体は集合であり、LSkは集合サイズの一階言語である。
- Tが充足可能であることと、Sk(T)が充足可能であることは同値である。
証明. 各文の構文木は有限なので、各σの存在量化子の出現集合は有限である。したがって、すべての出現の集合はTで添字付けられた有限集合の合併であり、集合である。各出現へ一つの有限項数の記号を割り当てても、新記号全体は集合である。
N⊨Sk(T)ならば、各σ∈Tについて定理 3.3を適用することができるので、N↾L⊨Tである。
逆にM⊨Tとする。各σ∈Tについて、定理 3.4の証明が与える Skolem 関数解釈の集合は空でない。異なる文には異なる新記号を割り当てたので、文ごとの解釈は互いに衝突しない。文ごとの空でない解釈候補からなる集合族に選択公理を適用し、すべてのσについて解釈を同時に一つずつ選ぶ。選んだ解釈を合わせるとMの一つのLSk拡大MSkが定まり、各Sk(σ)を満たす。したがってMSk⊨Sk(T)である。▨
5 演習
問題 5.1.
- ∃x∀y∃zR(x,y,z)を Skolem 化し、各新記号の項数を答えよ。
- x∈FV(β)の場合に(∀xα)→βと∃x(α→β)が同値とは限らないことを、二要素構造の例で示せ。
- Skolem 化された文が充足不可能ならば、元の文も充足不可能であることを証明せよ。
解答 (確認問題の解答).
- 最初の∃xには先行する全称変数が無いので新しい定数cを用いる。後の∃zにはyが先行するので新しい一項関数fを用いる。
Skolem 化は∀yR(c,y,f(y))である。
- 台集合を{0,1}とし、α(x)を常に真、β(x)をx=0とする。s(x)=1とすれば、左辺(∀xα)→βは偽であるが、右辺はa=0に対して真となるので真である。この構造と割当てが求める反例である。
- 対偶を証明する。元の文が充足可能なら、定理 3.4により
Skolem 化された文も充足可能である。したがって、Skolem 化された文が充足不可能ならば元の文も充足不可能である。
▨