§E16.3Boolean 代数

最終更新

命題論理の意味論的同値は、同じ真理関数を表す論理式を同一視する。この同一視による商集合には、論理結合子から誘導される Boolean 演算が入る。空の命題変数集合も扱うため、本稿の商構成だけでは偽を表す論理定数⊥\botを構文へ加える。この追加は命題変数が存在するときには保守的であり、Hilbert 系などの原始構文は変更しない。本稿では商演算が代表元に依存しないことを確認し、この商が任意の命題変数集合上の自由 Boolean 代数であることを証明する。

1 Boolean 代数

定義 1.1. 集合BBと演算∧,∨:B2→B\wedge,\vee:B^2\to B、¬:B→B\neg:B\to B、元0,1∈B0,1\in Bの組

(B,∧,∨,¬,0,1)(B,\wedge,\vee,\neg,0,1)

が Boolean 代数 (Boolean algebra) であるとは、次を満たすことをいう。

  1. ∧\wedgeと∨\veeはそれぞれ結合的、可換、冪等であり、互いに吸収則を満たす。
  2. ∧\wedgeと∨\veeは互いに分配的である。
  3. a∧1=aa\wedge1=a、a∨0=aa\vee0=aである。
  4. a∧¬a=0a\wedge\neg a=0、a∨¬a=1a\vee\neg a=1である。

Boolean 含意 (Boolean implication) をa⇒b:=¬a∨ba\Rightarrow b:=\neg a\vee bと定める。

定義 1.2. Boolean 代数B,CB,Cの間の写像h:B→Ch:B\to Cが Boolean 準同型 (Boolean homomorphism) であるとは、hhが∧,∨,¬,0,1\wedge,\vee,\neg,0,1をすべて保存することをいう。

例 1.3 (二元 Boolean 代数).2={0,1}\mathbf2=\{0,1\}に最小値、最大値、00と11の交換として∧,∨,¬\wedge,\vee,\negを入れると Boolean 代数になる。命題論理の付値は、命題変数からこの Boolean 代数への写像である。

後で任意の Boolean 代数における論理式の値を比較するため、有限個の元が作る分割を準備する。

補題 1.4.BBを Boolean 代数、b1,…,bn∈Bb_1,\ldots,b_n\in B、n≥0n\ge0とする。a∈2na\in\mathbf2^nに対して

ea=⋀i=1ndia,dia={biai=1,¬biai=0e_a=\bigwedge_{i=1}^n d_i^a, \qquad d_i^a= \begin{cases} b_i&a_i=1,\\ \neg b_i&a_i=0 \end{cases}

と置く。このとき

⋁a∈2nea=1,a≠c⟹ea∧ec=0.\bigvee_{a\in\mathbf2^n}e_a=1, \qquad a\ne c\Longrightarrow e_a\wedge e_c=0.

さらに、任意のS⊆2nS\subseteq\mathbf2^nについて

¬⋁a∈Sea=⋁a∈2n∖Sea\neg\bigvee_{a\in S}e_a =\bigvee_{a\in\mathbf2^n\setminus S}e_a

が成り立つ。空の結びはそれぞれ00と11とする。

証明. まずn=0n=0なら、20={()}\mathbf2^0=\{()\}でありe()e_{()}は空の連言11である。全体の結びは11、直交性は空虚であり、S=∅S=\varnothingとS={()}S=\{()\}の二場合で補元の式はそれぞれ¬0=1\neg0=1と¬1=0\neg1=0になる。

n≥1n\ge1とする。分配則と補元律により

1=⋀i=1n(bi∨¬bi)=⋁a∈2n⋀i=1ndia=⋁a∈2nea.1=\bigwedge_{i=1}^n(b_i\vee\neg b_i) =\bigvee_{a\in\mathbf2^n}\bigwedge_{i=1}^n d_i^a =\bigvee_{a\in\mathbf2^n}e_a.

a≠ca\ne cなら、ai≠cia_i\ne c_iを満たす添字i∈{1,…,n}i\in\{1,\ldots,n\}が存在する。ea∧ece_a\wedge e_cはbi∧¬bib_i\wedge\neg b_iを因子にもつから00である。

x=⋁a∈Seax=\bigvee_{a\in S}e_a、y=⋁a∉Seay=\bigvee_{a\notin S}e_aと置く。前半からx∨y=1x\vee y=1であり、分配則と直交性からx∧y=0x\wedge y=0である。Boolean 代数では補元は一意である。実際、u,vu,vがともにxxの補元なら

u=u∧1=u∧(x∨v)=(u∧x)∨(u∧v)=u∧vu=u\wedge1=u\wedge(x\vee v)=(u\wedge x)\vee(u\wedge v)=u\wedge v

であり、同様にv=u∧vv=u\wedge vである。したがってu=vu=vである。ゆえにy=¬xy=\neg xである。▨

2 意味論的同値による商

定義 2.1 (偽定数付き命題論理式).Form⁡⊥(P)\operatorname{Form}_{\bot}(P)を

φ,ψ::=p∣⊥∣¬φ∣(φ→ψ)(p∈P)\varphi,\psi::=p\mid\bot\mid\neg\varphi\mid(\varphi\to\psi) \qquad(p\in P)

で生成される有限論理式の集合とする。この集合の元を 偽定数付き命題論理式 (propositional formula with falsity constant) という。付値v:P→2v:P\to\mathbf2の拡張ではv^(⊥)=0\widehat v(\bot)=0と定め、⊤:=¬⊥\top:=\neg\botとする。P=∅P=\varnothingでも⊥\botと⊤\topは論理式である。

命題 2.2.P≠∅P\ne\varnothingとし、p0∈Pp_0\in Pを取る。Form⁡⊥(P)\operatorname{Form}_{\bot}(P)の⊥\botを¬(p0→p0)\neg(p_0\to p_0)へ置き換える写像は二値意味論を保ち、意味論的商を原始構文Form⁡(P)\operatorname{Form}(P)の意味論的商へ同型に写す。この同型は商上ではp0p_0の選択に依存しない。

証明. 置換後の¬(p0→p0)\neg(p_0\to p_0)はすべての付値で値00をもつ。論理式の構造帰納法により、置換は任意の定数付き論理式の真理値を保つ。原始論理式の包含と置換は商上で互いに逆である。p0,q0∈Pp_0,q_0\in Pのどちらを選んでも、二つの矛盾式はすべての付値で値00をもつため同じ同値類になる。▨

定義 2.3.φ,ψ∈Form⁡⊥(P)\varphi,\psi\in\operatorname{Form}_{\bot}(P)に対して

φ≡semψ:⟺すべての付値 v:P→2 について v^(φ)=v^(ψ)\varphi\equiv_{\mathrm{sem}}\psi \quad:\Longleftrightarrow\quad \text{すべての付値 }v:P\to\mathbf2\text{ について } \widehat v(\varphi)=\widehat v(\psi)

と定める。φ\varphiの同値類を[φ][\varphi]と書き、商集合を

B(P)=Form⁡⊥(P)/≡sem\mathcal B(P)=\operatorname{Form}_{\bot}(P)/{\equiv_{\mathrm{sem}}}

とする。

命題 2.4.≡sem\equiv_{\mathrm{sem}}は同値関係である。また、φ≡semφ′\varphi\equiv_{\mathrm{sem}}\varphi'、ψ≡semψ′\psi\equiv_{\mathrm{sem}}\psi'なら

¬φ≡sem¬φ′,(φ→ψ)≡sem(φ′→ψ′)\neg\varphi\equiv_{\mathrm{sem}}\neg\varphi', \qquad (\varphi\to\psi)\equiv_{\mathrm{sem}}(\varphi'\to\psi')

である。同じことが派生結合子∧,∨\wedge,\veeについても成り立つ。

証明. 反射律、対称律、推移律は2\mathbf2における等号の対応する性質から従う。二組の仮定の下では、任意の付値vvについて直下の論理式の真理値が一致する。否定と含意の真理値は直下の真理値だけから定まるので、構成後の真理値も一致する。派生結合子については定義を展開すればよい。▨

定理 2.5.PPを任意の命題変数集合とする。B(P)\mathcal B(P)上に

[φ]∧[ψ]=[φ∧ψ],[φ]∨[ψ]=[φ∨ψ],¬[φ]=[¬φ],0=[⊥],1=[⊤]\begin{aligned} [\varphi]\wedge[\psi]&=[\varphi\land\psi],& [\varphi]\vee[\psi]&=[\varphi\lor\psi],\\ \neg[\varphi]&=[\neg\varphi],& 0&=[\bot],& 1&=[\top] \end{aligned}

と定めると、各演算と定数は代表元に依存せず、B(P)\mathcal B(P)は Boolean 代数になる。

証明.命題 2.4により、代表元を意味論的に同値な論理式へ取り替えても∧,∨,¬\wedge,\vee,\negの結果の同値類は変わらない。⊥\botと⊤\topの真理値は定義によりそれぞれ00と11である。以上により全演算の well-definedness が示された。

Boolean 代数の各公理の両辺を代表する論理式は、2\mathbf2の真理値演算の同じ恒等式を表す。例えば、任意の付値vvについて

v^(φ∧(ψ∨χ))=v^((φ∧ψ)∨(φ∧χ))\widehat v(\varphi\land(\psi\lor\chi)) =\widehat v((\varphi\land\psi)\lor(\varphi\land\chi))

である。したがって商では分配則が成り立つ。結合律、可換律、冪等律、吸収則、単位元律、補元律も2\mathbf2の対応する恒等式を各付値で確認することで得られる。ゆえにB(P)\mathcal B(P)は Boolean 代数である。▨

3 任意の Boolean 代数における評価

定義 3.1.BBを Boolean 代数、g:P→Bg:P\to Bを写像とする。ggの Boolean 評価 (Boolean valuation)⟦−⟧gB:Form⁡⊥(P)→B\llbracket-\rrbracket_g^B:\operatorname{Form}_{\bot}(P)\to Bを

⟦p⟧gB=g(p),⟦⊥⟧gB=0,⟦¬φ⟧gB=¬⟦φ⟧gB,\llbracket p\rrbracket_g^B=g(p),\qquad \llbracket\bot\rrbracket_g^B=0,\qquad \llbracket\neg\varphi\rrbracket_g^B=\neg\llbracket\varphi\rrbracket_g^B,⟦φ→ψ⟧gB=¬⟦φ⟧gB∨⟦ψ⟧gB\llbracket\varphi\to\psi\rrbracket_g^B =\neg\llbracket\varphi\rrbracket_g^B\vee\llbracket\psi\rrbracket_g^B

によって構造再帰的に定める。

二値意味論で同じ値をもつ二つの論理式が、任意の Boolean 代数でも同じ値をもつことは、商から評価を定めるための要点である。

補題 3.2.φ,ψ∈Form⁡⊥(P)\varphi,\psi\in\operatorname{Form}_{\bot}(P)がφ≡semψ\varphi\equiv_{\mathrm{sem}}\psiを満たすなら、任意の Boolean 代数BBと任意の写像g:P→Bg:P\to Bについて

⟦φ⟧gB=⟦ψ⟧gB\llbracket\varphi\rrbracket_g^B=\llbracket\psi\rrbracket_g^B

である。

証明.φ\varphiとψ\psiに現れる命題変数を重複なくp1,…,pnp_1,\ldots,p_nとする。ここではn=0n=0も許す。bi=g(pi)b_i=g(p_i)と置き、補題 1.4のeae_aを作る。各a∈2na\in\mathbf2^nに対し、付値va:P→2v_a:P\to\mathbf2をva(pi)=aiv_a(p_i)=a_iおよびp∉{p1,…,pn}p\notin\{p_1,\ldots,p_n\}ならばva(p)=0v_a(p)=0によって定める。

Var⁡(θ)⊆{p1,…,pn}\operatorname{Var}(\theta)\subseteq\{p_1,\ldots,p_n\}を満たす任意の論理式θ\thetaについて

⟦θ⟧gB=⋁a∈2nva⊨θea(*)\llbracket\theta\rrbracket_g^B =\bigvee_{\substack{a\in\mathbf2^n\\v_a\models\theta}}e_a \tag{*}

を構造帰納法で示す。この変数条件は直下の論理式へ継承されるため、否定と含意の場合に帰納法の仮定を適用することができる。

θ=⊥\theta=\botの場合、真となる行の集合は空であるから右辺は00である。θ=pj\theta=p_jの場合、右辺は

⋁aj=1ea=bj∧⋀i≠j(bi∨¬bi)=bj\bigvee_{a_j=1}e_a =b_j\wedge\bigwedge_{i\ne j}(b_i\vee\neg b_i)=b_j

である。θ=¬α\theta=\neg\alphaの場合、帰納法の仮定と有限分割補題の補元の式により、右辺の添字集合はva⊭αv_a\not\models\alphaを満たす行へ移り、値は¬⟦α⟧gB\neg\llbracket\alpha\rrbracket_g^Bとなる。

θ=α→β\theta=\alpha\to\betaの場合、含意が真となる行の集合は

(2n∖Tα)∪Tβ(\mathbf2^n\setminus T_\alpha)\cup T_\beta

である。有限分割補題、分配則、冪等律により、対応するeae_aの結びは

¬⋁a∈Tαea∨⋁a∈Tβea=¬⟦α⟧gB∨⟦β⟧gB.\neg\bigvee_{a\in T_\alpha}e_a\vee \bigvee_{a\in T_\beta}e_a =\neg\llbracket\alpha\rrbracket_g^B\vee \llbracket\beta\rrbracket_g^B.

したがって(∗)(*)は変数がp1,…,pnp_1,\ldots,p_nに含まれるすべての論理式で成り立つ。特にφ\varphiとψ\psiはこの条件を満たす。φ≡semψ\varphi\equiv_{\mathrm{sem}}\psiなら(∗)(*)の右辺の添字集合が等しいから、両評価値も等しい。▨

4 自由 Boolean 代数

定義 4.1 (命題変数の標準埋め込み).η:P→B(P)\eta:P\to\mathcal B(P)を 命題変数の標準埋め込み (canonical embedding of propositional variables) といい、

η(p)=[p]\eta(p)=[p]

によって定める。

定理 4.2.PPを任意の集合とする。任意の Boolean 代数BBと任意の写像g:P→Bg:P\to Bに対して、g‾∘η=g\overline g\circ\eta=gを満たす Boolean 準同型

g‾:B(P)⟶B\overline g:\mathcal B(P)\longrightarrow B

が一意に存在する。したがって(B(P),η)(\mathcal B(P),\eta)はPP上の自由 Boolean 代数である。

証明. 存在を示すため

g‾([φ])=⟦φ⟧gB\overline g([\varphi])=\llbracket\varphi\rrbracket_g^B

と定める。補題 3.2により、この値は代表元φ\varphiの選択に依存しない。Boolean 評価の再帰式から、g‾\overline gは補元と含意を保存する。∧,∨,0,1\land,\lor,0,1の定義を展開すれば、g‾\overline gはそれらも保存する。さらにg‾(η(p))=g‾([p])=g(p)\overline g(\eta(p))=\overline g([p])=g(p)である。

h:B(P)→Bh:\mathcal B(P)\to Bもh∘η=gh\circ\eta=gを満たす Boolean 準同型とする。h([φ])=⟦φ⟧gBh([\varphi])=\llbracket\varphi\rrbracket_g^Bをφ\varphiに関する構造帰納法で示す。⊥\botの場合はh(0)=0h(0)=0、命題変数の場合はh([p])=g(p)h([p])=g(p)である。否定と含意の場合は、hhが Boolean 演算を保存することと帰納法の仮定から従う。したがってすべての同値類でh=g‾h=\overline gであり、一意性を得る。▨

系 4.3.P=∅P=\varnothingならB(P)\mathcal B(P)は[⊥]=0[\bot]=0と[⊤]=1[\top]=1だけからなる二元 Boolean 代数である。任意の Boolean 代数BBへの空写像に対し、0↦0B0\mapsto0_B、1↦1B1\mapsto1_Bで定まる唯一の Boolean 準同型B(∅)→B\mathcal B(\varnothing)\to Bが存在する。

証明. 変数を含まない定数付き論理式の値は、構造帰納法により00または11である。したがって同値類は[⊥][\bot]と[⊤][\top]の二つだけであり、両者は二元 Boolean 代数をなす。Boolean 準同型は定数0,10,1を保存するため、表示した写像以外に存在せず、この写像はすべての Boolean 演算を保存する。▨

系 4.4. 各付値v:P→2v:P\to\mathbf2は、一意な Boolean 準同型

v‾:B(P)→2,v‾([φ])=v^(φ)\overline v:\mathcal B(P)\to\mathbf2, \qquad \overline v([\varphi])=\widehat v(\varphi)

を誘導する。逆に、任意の Boolean 準同型h:B(P)→2h:\mathcal B(P)\to\mathbf2はv=h∘ηv=h\circ\etaという付値からこの方法で得られる。

証明. 前半は定理 4.2でB=2B=\mathbf2とした場合である。後半ではv=h∘ηv=h\circ\etaと置く。自由性の一意性により、vvが誘導する準同型はhhに等しい。▨

例 4.5 (二つの代表元と一つの商元).p→qp\to qと¬p∨q\neg p\lor qは構文木として異なるが、すべての二値付値で同じ値をもつ。したがって

[p→q]=[¬p∨q][p\to q]=[\neg p\lor q]

である。任意の Boolean 代数BBとg:P→Bg:P\to Bに対して、この同値類の像は¬g(p)∨g(q)\neg g(p)\vee g(q)であり、代表元の選択に依存しない。

5 演習

問題 5.1.

  1. [φ]∧[¬φ]=0[\varphi]\wedge[\neg\varphi]=0が代表元に依存しない等式であることを説明せよ。
  2. 有限分割補題でn=2n=2としたとき、四つのeae_aを書き下せ。
  3. 自由性の一意性の証明で構造帰納法が必要となる理由を述べよ。
解答 (確認問題の解答).
  1. 合同関係により演算は well-defined であり、任意の付値でφ∧¬φ\varphi\land\neg\varphiの値は00であるから、その同値類は00である。
  2. b1∧b2b_1\wedge b_2、b1∧¬b2b_1\wedge\neg b_2、¬b1∧b2\neg b_1\wedge b_2、¬b1∧¬b2\neg b_1\wedge\neg b_2である。
  3. 準同型の命題変数上の値だけから、否定と含意を順に通して任意の有限論理式上の値が強制されることを示す必要があるからである。

▨

意味論的同値による商は、真理表の情報を Boolean 代数としてまとめる。次稿では、論理式を有限列として導く Hilbert 系を固定し、意味論的帰結と導出可能性が一致することを証明する。

参考文献

  1. Stanley Burris and H. P. Sankappanavar, A Course in Universal Algebra, Graduate Texts in Mathematics, Springer, New York, 1981.
  2. Roman Sikorski, Boolean Algebras, 3rd ed., Springer, Berlin, 1969.

前提記事