8. 束
順序集合の任意の2元に上限と下限が存在するとき,それらを2つの演算として扱うことができる.このような順序集合を束という.
8.1 束
空でない順序集合\((L,\preceq)\)が束 (lattice)であるとは, \(L\)の任意の空でない有限部分集合が上限と下限を持つときにいう.
次の2つの例では,上限と下限の存在を比較する.
\(L=\{a,b,c,d\}\)に対し,次のハッセ図で半順序を定める.

この順序集合の任意の空でない有限部分集合が上限と下限を持つことを確認する.空でない部分集合\(M\subseteq L\)をとる. 上限については,\(d\in M\)ならば\(\sup M=d\)である.\(d\notin M\)のとき,\(b,c\in M\)ならば\(\sup M=d\)であり,\(b\in M\)かつ\(c\notin M\)ならば\(\sup M=b\),\(c\in M\)かつ\(b\notin M\)ならば\(\sup M=c\)である.残る場合は\(M=\{a\}\)なので\(\sup M=a\)である. 同様に,下限については,\(a\in M\)ならば\(\inf M=a\)である.\(a\notin M\)のとき,\(b,c\in M\)ならば\(\inf M=a\)であり,\(b\in M\)かつ\(c\notin M\)ならば\(\inf M=b\),\(c\in M\)かつ\(b\notin M\)ならば\(\inf M=c\)である.残る場合は\(M=\{d\}\)なので\(\inf M=d\)である. したがって,任意の空でない有限部分集合が上限と下限を持つので,\(L\)は束である.
同じく\(L=\{a,b,c,d\}\)に対し,今度は次のハッセ図で半順序を定める.

このとき\(\{a,c\}\)には上限\(d\)が存在するが,下限は存在しない. したがって,この順序集合は束ではない.
束であることを確かめるには,任意の2元に上限と下限が存在することを示せば十分である.
空でない順序集合\((L,\preceq)\)が束であるための必要十分条件は, 任意の\(x,y\in L\)に対して\(\{x,y\}\)が上限と下限を持つことである.
定理 8.4 の証明
\(L\)が束ならば,定義から任意の2元集合\(\{x,y\}\)は上限と下限を持つ. 逆を示す.任意の\(x,y\in L\)に対して\(\{x,y\}\)が上限と下限を持つと仮定する.
空でない有限部分集合\(M=\{a_1,\ldots,a_n\}\)について,\(n\)に関する数学的帰納法で上限が存在することを示す. \(n=1\)ならば\(a_1\)自身が上限である. \(n\geq2\)とし,\(N=\{a_1,\ldots,a_{n-1}\}\)の上限が存在すると仮定して,それを\(u\)とする. 仮定より\(\{u,a_n\}\)は上限\(v\)を持つ. すると\(a_1,\ldots,a_{n-1}\preceq u\preceq v\)かつ\(a_n\preceq v\)なので,\(v\)は\(M\)の上界である.
また,\(w\)を\(M\)の任意の上界とすると,\(w\)は\(N\)の上界でもあるから\(u\preceq w\)であり,さらに\(a_n\preceq w\)である. したがって\(w\)は\(\{u,a_n\}\)の上界なので,\(v\preceq w\)である. よって\(v\)は\(M\)の上限である. 下限についても上下を逆にした同じ議論で示せる.
この定理により,束であることは「任意の2元が上限と下限を持つ」と言い換えることができる.
8.2 結びと交わり
束\((L,\preceq)\)では,任意の\(x,y\in L\)に対して\(\{x,y\}\)の上限と下限が存在し,しかも一意に定まる. そこで \[x\vee y:=\sup\{x,y\},\qquad x\wedge y:=\inf\{x,y\}\] と定義し,それぞれ\(x\)と\(y\)の結び (join),交わり (meet)という.
最初の例では, \[b\vee c=d,\qquad b\wedge c=a\] である.一方,比較可能な2元については結びと交わりはすぐに分かる.
束\((L,\preceq)\)と\(x,y\in L\)に対して,次の3条件は同値である.
\(x\preceq y\),
\(x\vee y=y\),
\(x\wedge y=x\).
命題 8.5 の証明
\(x\preceq y\)とする.このとき\(y\)は\(\{x,y\}\)の上界であり, \(\{x,y\}\)の任意の上界\(u\)に対して\(y\preceq u\)である. したがって\(y=\sup\{x,y\}=x\vee y\)である.
逆に\(x\vee y=y\)ならば,上限は上界なので\(x\preceq y\)である. よって(1)と(2)は同値である.(1)と(3)も同様に示せる.
このように,順序関係\(x\preceq y\)を,\(\vee\)や\(\wedge\)を使った等式に置き換えることができる. また,結びと交わりは次の基本的な法則を満たす.
束\((L,\preceq)\)と\(x,y,z\in L\)に対して,次が成り立つ. \[\begin{array}{c|c|c} & \vee & \wedge\\ \hline \text{交換律} & x\vee y=y\vee x & x\wedge y=y\wedge x\\ \text{結合律} & (x\vee y)\vee z=x\vee(y\vee z) & (x\wedge y)\wedge z=x\wedge(y\wedge z)\\ \text{冪等律} & x\vee x=x & x\wedge x=x\\ \text{吸収律} & x\vee(x\wedge y)=x & x\wedge(x\vee y)=x \end{array}\]
定理 8.6 の証明
交換律は\(\{x,y\}=\{y,x\}\)より,冪等律は\(\{x\}\)の上限と下限がともに\(x\)であることより従う. \(\vee\)の結合律は,前節の定理の証明と同じ考え方で,両辺がともに\(\{x,y,z\}\)の上限となることから従う.\(\wedge\)の結合律も下限について同様である. 吸収律については\(x\wedge y\preceq x\preceq x\vee y\)なので,命題8.5より \(x\vee(x\wedge y)=x\)かつ\(x\wedge(x\vee y)=x\)となる.
このように,束の演算法則は上限・下限の定義に戻ることで理解できる.
さらに\(L\)が有限束ならば,\(L\)自身が空でない有限部分集合なので,\(\sup L\)と\(\inf L\)が存在する.これらは\(L\)の元でもあるため,それぞれ最大元と最小元である.最大元を\(\top\),最小元を\(\bot\)と書く. したがって \[\top\wedge x=x,\quad \top\vee x=\top, \qquad \bot\wedge x=\bot,\quad \bot\vee x=x\] が成り立つ.例えば \[(x\wedge\bot)\vee(\top\wedge y)=\bot\vee y=y\] と計算できる.
8.3 約数からなる束
第6章で考えた,12の正の約数全体の集合 \[D_{12}:=\{1,2,3,4,6,12\}\] を,整除関係\(\mid\)で順序づける.この順序でも,上限と下限を具体的な整数の演算として理解できる.

まず,正の整数\(a,b\)の両方を割り切る正の整数を\(a,b\)の公約数という.公約数のうち通常の大小関係で最も大きいものを最大公約数といい,\(\gcd(a,b)\)と書く. 同様に,\(a,b\)の両方で割り切れる正の整数を\(a,b\)の公倍数という.公倍数のうち通常の大小関係で最も小さいものを最小公倍数といい,\(\operatorname{lcm}(a,b)\)と書く. 例えば,4と6の公約数は1と2なので\(\gcd(4,6)=2\)であり,正の公倍数は\(12,24,36,\ldots\)なので\(\operatorname{lcm}(4,6)=12\)である.
ここでは「通常の大小」と「整除による順序」を区別する必要がある.正の整数の素因数分解を用いると,最大公約数は各素数の指数の小さい方を取り,最小公倍数は大きい方を取って得られる.現れない素数の指数は0と考える.このことから,
すべての公約数は\(\gcd(a,b)\)を割り切る,
\(\operatorname{lcm}(a,b)\)はすべての公倍数を割り切る
ことが分かる.すなわち,最大公約数は整除関係でも公約数全体の最大元であり,最小公倍数は整除関係でも公倍数全体の最小元である.
\(a,b\in D_{12}\)に対し,\(c\in D_{12}\)が\(\{a,b\}\)の下界であることは,\(c\mid a\)かつ\(c\mid b\)であること,つまり\(c\)が公約数であることと同値である.\(\gcd(a,b)\)も12の約数なので\(D_{12}\)に属し,すべての下界がこれを割り切る.したがって, \[a\wedge b=\gcd(a,b)\] である.一方,\(c\in D_{12}\)が上界であることは\(a\mid c\)かつ\(b\mid c\)であること,つまり\(c\)が公倍数であることと同値である.12は\(a,b\)の公倍数なので\(\operatorname{lcm}(a,b)\mid12\)であり,最小公倍数も\(D_{12}\)に属する.これがすべての上界を割り切るので, \[a\vee b=\operatorname{lcm}(a,b)\] である.任意の2元に結びと交わりが存在するため,\((D_{12},\mid)\)は束である.特に \[4\wedge6=2,\qquad 4\vee6=12,\qquad \bot=1,\quad\top=12\] となる.整除関係における結びと交わりは,通常の大小関係における最大値・最小値とは異なる.
8.4 分配束
集合の合併(和集合)と共通部分(積集合)には分配律が成り立つ. 束の\(\vee\)と\(\wedge\)にも同じ形の法則を考えることができるが,一般の束では必ずしも成り立たない.
束\((L,\preceq)\)が分配束 (distributive lattice)であるとは, 任意の\(x,y,z\in L\)に対して \[x\vee(y\wedge z)=(x\vee y)\wedge(x\vee z),\] \[x\wedge(y\vee z)=(x\wedge y)\vee(x\wedge z)\] が成り立つときにいう.
分配束の基本的な例は冪集合である.
\(X=\{1,2,3\}\)とし,\(L=2^X\)を包含関係で順序づける. このとき \[A\vee B=A\cup B,\qquad A\wedge B=A\cap B\] である.実際,\(A\cup B\)は\(A,B\)をともに含む最小の集合であり, \(A\cap B\)は\(A,B\)にともに含まれる最大の集合である. 集合の合併と共通部分は分配律を満たすので,\((2^X,\subset)\)は分配束である.

冪集合と約数の束では,結びと交わりは次のように対応している. \[\begin{array}{c|c|c} \text{束}&\vee&\wedge\\ \hline (2^X,\subset)&\cup&\cap\\ (D_{12},\mid)&\operatorname{lcm}&\gcd \end{array}\] 同じ結び・交わりでも,どの集合にどの順序を入れるかによって具体的な演算は異なる.
一方,次の束では分配律は成り立たない.
\(L=\{a,b,c,\top,\bot\}\)を次のハッセ図で順序づける.

このとき \[a\vee b=a\vee c=\top, \qquad b\wedge c=\bot\] なので \[a\vee(b\wedge c)=a\neq\top=(a\vee b)\wedge(a\vee c)\] である.したがってこの束は分配束ではない.
もう1つ,次の束も分配束ではない.
\(L=\{a,b,c,\top,\bot\}\)を次のハッセ図で順序づける.

このとき\(a\vee b=\top\),\(b\wedge c=\bot\),\(a\vee c=c\)なので \[a\vee(b\wedge c)=a\neq c=(a\vee b)\wedge(a\vee c)\] となり,分配律を満たさない.
最初の5元束を\(M_3\),2番目の5元束を\(N_5\)と呼ぶ.
8.4.1 補足:部分束と分配束の特徴づけ
束\((L,\preceq)\)と空でない部分集合\(M\subset L\)に対して, 任意の\(a,b\in M\)が\(a\vee b\in M\)かつ\(a\wedge b\in M\)を満たすとき, \(M\)を\(L\)の部分束 (sublattice)という.ここで\(\vee,\wedge\)は元の束\(L\)で計算する演算である.
この条件は,\(M\)の2元の結びと交わりを\(L\)の中で計算しても,結果が\(M\)の中に残るという意味である.そのとき,それらは\(M\)に順序を制限した場合の上限・下限にもなるため,\(M\)自身も束になる. ただし,順序を制限した\(M\)が束になるだけでは,\(L\)の部分束であるとは限らない.例えば\(L=2^{\{1,2,3\}}\)とし, \[M=\{\emptyset,\{1\},\{2\},\{1,2,3\}\}\] とすると,\(M\)の中では\(\{1\},\{2\}\)の上限は\(\{1,2,3\}\)であり,\(M\)は4元の束になる.しかし\(L\)で計算した結びは\(\{1\}\cup\{2\}=\{1,2\}\notin M\)なので,\(M\)は\(L\)の部分束ではない.
例えば,左の束の部分集合\(\{\top,a,b,d,\bot\}\)は右の束をなし,部分束である.

分配束については,次の特徴づけが知られている.
束\((L,\preceq)\)が分配束であるための必要十分条件は, \(L\)が次の2つのハッセ図で表される部分束を持たないことである.

したがって,分配束でない束は,\(M_3\)または\(N_5\)と同じ順序構造を持つ部分束を含む.
8.5 補足:モジュラー束
分配律より弱い条件として,モジュラー律を考える.
束\((L,\preceq)\)がモジュラー束 (modular lattice)であるとは, 任意の\(x,y,z\in L\)に対して \[x\preceq y \quad\Longrightarrow\quad (x\vee z)\wedge y=x\vee(z\wedge y)\] が成り立つときにいう.
分配束はモジュラー束である.
定理 8.14 の証明
\((L,\preceq)\)を分配束とし,\(x\preceq y\)とする. 命題8.5より\(x\wedge y=x\)である.したがって分配律から \[(x\vee z)\wedge y =(x\wedge y)\vee(z\wedge y) =x\vee(z\wedge y)\] となり,モジュラー律が成り立つ.
逆は成り立たない.例8.9の束\(M_3\)はモジュラー束であるが,分配束ではない.実際,\(M_3\)で\(x\preceq y\)となる場合は,\(x=y\),\(x=\bot\),または\(y=\top\)のいずれかである.\(x=y\)なら吸収律から両辺とも\(x\)となり,\(x=\bot\)なら両辺とも\(z\wedge y\),\(y=\top\)なら両辺とも\(x\vee z\)となる.したがってモジュラー律が成り立つ. 一方,例8.10の束\(N_5\)はモジュラー束ではない. 実際,\(a\preceq c\)であるが \[(a\vee b)\wedge c =\top\wedge c=c \neq a =a\vee\bot =a\vee(b\wedge c)\] である.
モジュラー束についても,分配束の場合とよく似た特徴づけが知られている.
束\((L,\preceq)\)がモジュラー束であるための必要十分条件は, \(L\)が次のハッセ図で表される部分束を持たないことである.

束の順序は結びと交わりによって表される.分配束とモジュラー束は,これらの演算がそれぞれ分配律とモジュラー律を満たす束である.