領域理論(domain theory)とは、有向集合の上限をもつ半順序集合(dcpo)と有向集合の上限を保つ Scott 連続写像を基本の対象とし、単純な元による近似の構造を加えて調べる理論である。D. S. Scott がプログラムの表示的意味論の基礎として作った。Scott 連続性は Scott 位相についての連続性と一致し、dcpo の圏は直積と関数空間をもつデカルト閉圏で、点付き dcpo 上で最小不動点をとる操作も Scott 連続になる。代数的領域は、そのコンパクト元のなす半順序集合のイデアル完備化として得られる。
前提知識: 半順序集合, 有向集合, Kleeneの不動点定理, 連続束
領域理論(domain theory)は、有向集合の上限をもつ半順序集合(有向完備半順序集合、dcpo)と、有向集合の上限を保つ写像(Scott 連続写像)を基本の対象とし、そこに「単純な元による近似」の構造を加えて調べる順序論・位相の理論である。元 $x\le y$ は「$y$ は $x$ より多くの情報をもつ」と読み、有向集合の上限は「矛盾なく増えていく有限の情報の極限」にあたる。D. S. Scott が 1969 年ごろからプログラムの表示的意味論の数学的な基礎として作った(AJ94 §1.1、p. 6)。
この記事では、dcpo と Scott 連続写像の定義と例から始め、次の 3 つを証明する。Scott 連続性は Scott 位相についての位相的な連続性にほかならないこと。dcpo と Scott 連続写像の圏は直積と関数空間をもち(デカルト閉圏)、最小不動点をとる操作がそれ自身 Scott 連続であること。代数的な領域は、その「コンパクトな元」のなす半順序集合のイデアル完備化としてちょうど得られること。複素解析の「領域」(連結開集合)、環論の整域(integral domain)、写像の定義域とは関係がない。
半順序集合 $D$ の部分集合 $A$ が 有向 であるとは、空でなく、任意の $a_1,a_2\in A$ に対し $a_1,a_2\le a$ となる $a\in A$ があることをいう(有向集合)。有向集合 $A$ の上限を $\bigsqcup A$ と書く。
これは AJ94 Definition 2.1.8(p. 13)、2.1.13・2.1.17(p. 15)の定義である。$f$ が単調なら $f(A)$ も有向なので右辺の上限は存在する。有向集合の上限を保つ写像は自動的に単調である:$x\le y$ なら $\{x,y\}$ は上限 $y$ の有向集合なので $f(y)=f(x)\sqcup f(y)$、すなわち $f(x)\le f(y)$ である。完備束は dcpo である。ω鎖の値の集合は有向なので、dcpo は ω完備であり、Scott 連続写像は ω鎖の上限を保つ。Kleeneの不動点定理 は点付き dcpo 上の Scott 連続写像に当てはまる。
集合 $X$ に新しい元 $\bot$ を加え、$\bot\le x$($x\in X$)以外の順序関係をもたないとした $X_\bot$ を 平坦な領域 という。有向集合は $\{\bot\}$、$\{x\}$、$\{\bot,x\}$ のどれかなので、$X_\bot$ は点付き dcpo である。$\mathbb N_\bot$ の $\bot$ は「計算が値を返さない」ことを、$n$ は「値 $n$ を返す」ことを表す。
集合 $X$ から $Y$ への部分関数(定義域が $X$ の部分集合である関数)の全体を、グラフ $\{(x,f(x))\}$ の包含で順序づける。部分関数の有向族のグラフの和集合は、2 つのグラフが共通の上界に含まれることから再び関数のグラフであり、上限になる。空のグラフが最小元なので、これは点付き dcpo である。再帰的な定義の意味はこの dcpo の上の最小不動点として与えられる(Kleeneの不動点定理 の例「部分関数と再帰的定義」)。
実数の有界閉区間 $[a,b]$($a\le b$)全体 $\mathbf I\mathbb R$ を逆の包含で順序づける($I\le J\iff I\supset J$)。小さい区間ほど実数の位置を詳しく知っている。有向族 $\{I_k\}$ はどの 2 つも共通の部分区間をもち、有限交叉性をもつ有界閉区間の族なので共通部分 $\bigcap_kI_k$ は空でない有界閉区間であり、これが上限になる。よって $\mathbf I\mathbb R$ は dcpo である(最小元はない)。1 点区間 $[x,x]$ が極大元であり、実数直線を表す。
$\mathbb N$(通常の大小)は dcpo でない。有向集合 $\mathbb N$ 自身が上限をもたないからである。
dcpo $D$ の部分集合 $C$ が Scott 閉 であるとは、$C$ が下に閉じていて($y\in C$、$x\le y$ なら $x\in C$)、$C$ に含まれる有向集合の上限が $C$ に属することをいう。Scott 閉集合の補集合を Scott 開集合 といい、その全体を Scott 位相 という(AJ94 Definition 2.3.1、p. 29)。
Scott 閉集合の任意個の共通部分と有限個の和集合は Scott 閉である(和集合については折りたたみで確かめる)。$U$ が Scott 開であることは、$U$ が上に閉じていて、有向集合 $A$ が $\bigsqcup A\in U$ なら $A\cap U\ne\emptyset$ となることと同値である。完備束の場合、これは 連続束 の定義「Scott 位相」と同じである。
$C_1,C_2$ を Scott 閉とし、有向集合 $A\subset C_1\cup C_2$ をとる。$A\cap C_1$ が $A$ で共終($A$ のどの元にもそれ以上の元を含む)なら、$A\cap C_1$ は有向で上限は $\bigsqcup A$ なので $\bigsqcup A\in C_1$ である。共終でなければ、ある $a_0\in A$ より上の $A$ の元はすべて $C_2$ に属し、$\{a\in A\mid a_0\le a\}$ は有向で上限は $\bigsqcup A$ なので $\bigsqcup A\in C_2$ である。下に閉じていることは明らか。
$D$ を dcpo とする。
$\downarrow y:=\{x\mid x\le y\}$ は Scott 閉である(下に閉じていて、含まれる有向集合の上限は $y$ 以下)。1:$x\le y$ なら、Scott 開集合は上に閉じているので $x\in U$ から $y\in U$。逆に $x\not\le y$ なら $D\setminus\downarrow y$ は $x$ を含み $y$ を含まない Scott 開集合である。2:$x\ne y$ なら $x\not\le y$ か $y\not\le x$ なので、1 から一方だけを含む開集合がある。3:順序が自明なら有向集合は 1 点集合だけなので、すべての部分集合が Scott 開であり、離散位相は Hausdorff である。$x< y$ なら、1 により $x$ のどの開近傍も $y$ を含むので、$x,y$ は開集合で分離できない。$\square$
AJ94 Proposition 2.3.2(p. 29)にあたる。つまり順序は位相から復元され、意味のある dcpo の Scott 位相は Hausdorff でない。2 元の鎖 $\{0<1\}$ の Scott 位相は Sierpinski空間 である。
dcpo $D,E$ の間の写像 $f\colon D\to E$ について、次は同値である。
1 ⇒ 2.$U\subset E$ を Scott 開集合とする。$f$ は単調で $U$ は上に閉じているので、$f^{-1}(U)$ は上に閉じている。有向集合 $A\subset D$ が $\bigsqcup A\in f^{-1}(U)$ をみたすとすると、$\bigsqcup f(A)=f\bigl(\bigsqcup A\bigr)\in U$ であり、$f(A)$ は有向なので $f(a)\in U$ となる $a\in A$ がある。よって $A\cap f^{-1}(U)\ne\emptyset$ であり、$f^{-1}(U)$ は Scott 開である。
2 ⇒ 1.まず単調性を示す。$x\le x'$ とする。$\downarrow f(x')$ は Scott 閉なので、$f^{-1}(\downarrow f(x'))$ は $x'$ を含む Scott 閉集合であり、下に閉じているので $x$ を含む。すなわち $f(x)\le f(x')$ である。次に有向集合 $A\subset D$ をとり、$s:=\bigsqcup f(A)$ とおく。単調性から $f(a)\le f\bigl(\bigsqcup A\bigr)$ なので $s\le f\bigl(\bigsqcup A\bigr)$ である。逆に、$f^{-1}(\downarrow s)$ は Scott 閉で $A$ を含むので、$\bigsqcup A$ を含む。すなわち $f\bigl(\bigsqcup A\bigr)\le s$ である。$\square$
AJ94 Proposition 2.3.4(p. 30)にあたる。以後、Scott 連続写像を単に連続写像ともいう。
dcpo $D,E$ の直積 $D\times E$ には成分ごとの順序を入れる。有向集合 $A\subset D\times E$ の射影 $A_1,A_2$ は有向で、$\bigl(\bigsqcup A_1,\bigsqcup A_2\bigr)$ が $A$ の上限になるので、$D\times E$ は dcpo であり、射影と、連続写像の組 $\langle f,g\rangle\colon x\mapsto(f(x),g(x))$ は連続である(AJ94 Definition 3.2.1・Proposition 3.2.2・3.2.3、p. 42)。
dcpo の写像 $h\colon D\times E\to F$ が連続であることは、各変数について連続であること(すべての $y$ で $x\mapsto h(x,y)$ が連続、すべての $x$ で $y\mapsto h(x,y)$ が連続)と同値である。
連続なら、有向集合 $\{(a,y)\mid a\in A\}$ の上限は $\bigl(\bigsqcup A,y\bigr)$ なので、各変数について連続である。逆を示す。$(x,y)\le(x',y')$ なら $h(x,y)\le h(x',y)\le h(x',y')$ なので $h$ は単調である。有向集合 $A\subset D\times E$ とその射影 $A_1,A_2$ について、変数ごとの連続性を 2 回使うと
$$
h\Bigl(\bigsqcup A\Bigr)=h\Bigl(\bigsqcup A_1,\bigsqcup A_2\Bigr)=\bigsqcup_{x\in A_1}\ \bigsqcup_{y\in A_2}h(x,y)
$$
である。$A\subset A_1\times A_2$ なので右辺は $\bigsqcup h(A)$ 以上である。逆に $x\in A_1$、$y\in A_2$ なら $(x,y'),(x',y)\in A$ となる $x',y'$ があり、$A$ の有向性からその共通の上界 $(x'',y'')\in A$ があって $h(x,y)\le h(x'',y'')$ である。よって右辺は $\bigsqcup h(A)$ 以下である。$\square$
dcpo $D,E$ について $[D\to E]$ は dcpo であり、有向族 $\mathcal F\subset[D\to E]$ の上限は点ごとの上限 $g(x):=\bigsqcup_{f\in\mathcal F}f(x)$ で与えられる。
各 $x$ で $\{f(x)\mid f\in\mathcal F\}$ は有向なので $g(x)$ は定まり、$g$ は単調である。有向集合 $A\subset D$ について
$$
g\Bigl(\bigsqcup A\Bigr)=\bigsqcup_{f\in\mathcal F}\ \bigsqcup_{a\in A}f(a)=\bigsqcup_{a\in A}\ \bigsqcup_{f\in\mathcal F}f(a)=\bigsqcup_{a\in A}g(a)
$$
である(2 番目の等号は、両辺がともに $\{f(a)\mid f\in\mathcal F,\,a\in A\}$ の上限であることによる)。よって $g\in[D\to E]$ であり、点ごとの順序で $\mathcal F$ の最小の上界である。$\square$
dcpo と連続写像の圏を $\mathbf{DCPO}$ とする。
1.lem-dt-separate により各変数について示せばよい。$f$ について連続であることは、$[D\to E]$ の有向族の上限が点ごとにとられること(prop-dt-function-space)による。$x$ について連続であることは、$[D\to E]$ の元が連続写像であることそのものである。
2.lem-dt-separate により $h(z,-)$ は連続なので $\Lambda h$ は $[D\to E]$ への写像として定まり、$h(-,x)$ の単調性から単調である。有向集合 $Z\subset F$ について、各 $x$ で
$$
(\Lambda h)\Bigl(\bigsqcup Z\Bigr)(x)=h\Bigl(\bigsqcup Z,x\Bigr)=\bigsqcup_{z\in Z}h(z,x)
$$
であり、prop-dt-function-space により右辺は $\bigsqcup_{z\in Z}(\Lambda h)(z)$ の $x$ での値である。よって $\Lambda h$ は連続である。$\mathrm{ev}((\Lambda h)(z),x)=h(z,x)$ は定義どおりであり、$\mathrm{ev}\circ(k\times\mathrm{id}_D)=h$ なら $k(z)(x)=h(z,x)$ がすべての $z,x$ で成り立つので $k=\Lambda h$ である。
1 点の dcpo への写像はただ 1 つで連続である。$D\times E$ が圏の直積であることは、射影が連続で、連続写像 $f,g$ の組 $\langle f,g\rangle$ が連続であり、射影と合成して $f,g$ に戻る写像がそれに限ることによる。1 と 2 は $[D\to E]$ と $\mathrm{ev}$ が冪対象の普遍性をもつことを述べている。$\square$
AJ94 §3.2.2(p. 43)と Theorem 3.3.3(p. 47)にあたる。デカルト閉性は、型付き λ 計算の項を dcpo の元や連続写像として解釈できることを意味する(λ計算)。
$D$ を点付き dcpo とする。$f\in[D\to D]$ に Kleeneの不動点定理 の最小不動点 $\operatorname{fix}(f)=\bigsqcup_{n}f^n(\bot)$ を対応させる写像 $\operatorname{fix}\colon[D\to D]\to D$ は連続である。
$\mathrm{it}_n(f):=f^n(\bot)$ とおく。$\mathrm{it}_0$ は定数写像 $\bot$ なので連続である。$\mathrm{it}_n$ が連続なら、$\mathrm{it}_{n+1}=\mathrm{ev}\circ\langle\mathrm{id},\mathrm{it}_n\rangle$ は連続写像の合成なので連続である(thm-dt-ccc の 1)。よって各 $\mathrm{it}_n$ は $\bigl[\,[D\to D]\to D\,\bigr]$ の元である。Kleeneの不動点定理 の証明の第 1 段により、各 $f$ で $\mathrm{it}_n(f)\le\mathrm{it}_{n+1}(f)$ なので $(\mathrm{it}_n)_n$ は鎖、とくに有向族であり、prop-dt-function-space によりその上限は点ごとの上限 $f\mapsto\bigsqcup_nf^n(\bot)=\operatorname{fix}(f)$ で、連続である。$\square$
AJ94 Theorem 2.1.19 の 2(p. 16)にあたる。再帰的な定義を組み合わせるとき、内側の定義の最小不動点が外側のパラメータについて連続に動くことをこの定理が保証する。
dcpo には「無限の情報を有限の情報で近似する」構造がまだない。それを与えるのが次の関係である。
$D$ を dcpo とする。
AJ94 Definition 2.2.1・2.2.3(p. 18)、2.2.6(p. 19)の定義である。$x\ll y$ なら $x\le y$ であり、$x'\le x\ll y\le y'$ なら $x'\ll y'$ である。完備束では $\ll$ は 連続束 の way-below 関係と同じものであり、連続束とは連続領域である完備束、代数的束とは代数的領域である完備束にほかならない(AJ94 Proposition 2.2.7、p. 19 による言い換え)。連続領域では補間性($x\ll y$ なら $x\ll z\ll y$ となる $z$ がある)が成り立ち、その証明は 連続束 の定理「補間性」と同じ議論で、AJ94 Lemma 2.2.15(p. 24)にある。この記事では繰り返さない。
コンパクト元 $c$ と元 $x$ について、$c\le x$ なら $c\ll x$ である($x\le\bigsqcup A$ なら $c\le\bigsqcup A$ で、$c\ll c$ から $c\le a$ となる $a\in A$ がある)。したがって代数的領域では、$K_x:=\{c\in K(D)\mid c\le x\}$ は上限 $x$ の有向部分集合を含む。$K_x$ 自身も有向である:$c_1,c_2\in K_x$ なら $c_i\ll x$ なので、上限 $x$ の有向集合 $A\subset K_x$ の中に $c_1,c_2$ 以上の元 $a_1,a_2$ があり、その $A$ の中の共通の上界が $K_x$ に属する。
$a< c\le d< b$ とし、有向族 $\{I_k\}$ が $\bigcap_kI_k\subset[c,d]$ をみたすとする。$\bigcap_kI_k$ は開区間 $(a,b)$ に含まれるので、$\{\mathbb R\setminus I_k\}$ はコンパクト集合 $I_{k_0}\setminus(a,b)$ を覆い、有限個の $I_{k_1},\dots,I_{k_m}$ の共通部分が $I_{k_0}$ の中で $(a,b)$ に含まれる。有向性から $I_{k_0},\dots,I_{k_m}$ に含まれる族の元 $I$ があり、$I\subset(a,b)\subset[a,b]$、すなわち $[a,b]\le I$ である。逆に $a>c$ または $d>b$ なら $[a,b]\not\le[c,d]$ なので $[a,b]\not\ll[c,d]$ である。$a=c$ なら、$I_k:=[c-1/k,\,d]$ は有向族で $\bigcap_kI_k=[c,d]$ だが、どの $I_k$ も $[a,b]$ に含まれない($d< b$ でない場合も同様)。
半順序集合 $P$ の空でない下に閉じた有向部分集合を イデアル といい、イデアルの全体を包含で順序づけたものを $\operatorname{Idl}(P)$ と書く。
1.イデアルの有向族 $\{I_k\}$ の和集合 $\bigcup_kI_k$ は下に閉じていて空でなく、2 元はそれぞれ $I_{k_1},I_{k_2}$ に属し、両者を含む $I_{k_3}$ の中で上界をもつので、イデアルである。これが上限なので $\operatorname{Idl}(P)$ は dcpo である。$\downarrow p\subset\bigcup_kI_k$ なら $p\in I_k$ となる $k$ があり、$I_k$ は下に閉じているので $\downarrow p\subset I_k$ である。よって主イデアルはコンパクト元である。任意のイデアル $I$ について $\{\downarrow p\mid p\in I\}$ は($I$ が有向なので)有向で、和集合は $I$ である。したがって主イデアルの全体は基底であり、$\operatorname{Idl}(P)$ は代数的領域である。逆に $I$ がコンパクト元なら、$I\subset\bigcup_{p\in I}\downarrow p$ から $I\subset\downarrow p$ となる $p\in I$ があり、$I=\downarrow p$ である。$p\le q\iff\downarrow p\subset\downarrow q$ なので、$p\mapsto\downarrow p$ は順序同型である。
2.上で見たとおり $K_x$ は有向で、下に閉じており、$\bigsqcup K_x=x$ である。よって $\varphi(x):=K_x$ は $\operatorname{Idl}(K(D))$ の元で、$\psi(I):=\bigsqcup I$ について $\psi\varphi=\mathrm{id}_D$ である。逆に $I$ をイデアルとすると $I\subset K_{\bigsqcup I}$ は明らかである。$c\in K(D)$、$c\le\bigsqcup I$ なら、$c\ll c$ から $c\le a$ となる $a\in I$ があり、$I$ は下に閉じているので $c\in I$ である。よって $\varphi\psi=\mathrm{id}$ である。$\varphi,\psi$ はともに単調なので、順序同型である。$\square$
AJ94 Proposition 2.2.22(p. 27)、Proposition 2.2.25(p. 28)にあたる(そこでは連続領域とその基底の上の関係 $\ll$ にまで一般化されている)。2 から、代数的領域 $D$ から dcpo $E$ への連続写像 $f$ は $K(D)$ への制限で決まる:$f(x)=f\bigl(\bigsqcup K_x\bigr)=\bigsqcup f(K_x)$。プログラムの言葉では、無限の対象への操作は有限の近似への操作で決まる。
表の各行は、1 つの条件を外したときに起こることを示す。
| 外す条件 | 反例 | 成り立たなくなること |
|---|---|---|
| 有向集合の上限を保つこと(単調性は残す) | $\mathbb N\cup\{\infty\}$ から 2 元の鎖 $\{0<1\}$ への写像 $n\mapsto0$、$\infty\mapsto1$ | Scott 位相についての連続性(thm-dt-scott-continuity) |
| 代数性(連続性は残す) | 区間の領域 $\mathbf I\mathbb R$ | $D\cong\operatorname{Idl}(K(D))$(thm-dt-ideal の 2) |
| 最小元の存在 | 比較不能な 2 元 $\{a,b\}$ と入れ替えの写像 | $\operatorname{fix}$ が定義されること(thm-dt-fix) |
1 行目:$\mathbb N\cup\{\infty\}$(自然数の大小に最大元 $\infty$ を加えたもの)は dcpo で、写像は単調だが、有向集合 $\mathbb N$ について $f\bigl(\bigsqcup\mathbb N\bigr)=1\ne0=\bigsqcup f(\mathbb N)$ である。$\{1\}$ は $\{0<1\}$ の Scott 開集合だが、逆像 $\{\infty\}$ は $\mathbb N$ と交わらないので Scott 開でない。2 行目:$K(\mathbf I\mathbb R)=\emptyset$(ex-dt-algebraic の 3)なので $\operatorname{Idl}(K(\mathbf I\mathbb R))$ は空であり、$\mathbf I\mathbb R$ と同型でない。3 行目:$\{a,b\}$ は有向集合が 1 点集合だけの dcpo で、入れ替えは連続だが不動点をもたない。
Mathpediaは寄付と、参考文献の書籍リンク(Amazonアソシエイト)の紹介料で運営されています。 支援について / 寄付する