このブログの更新は Twitterアカウント @m_hiyama で通知されます。
Follow @m_hiyama

メールでのご連絡は hiyama{at}chimaira{dot}org まで。

はじめてのメールはスパムと判定されることがあります。最初は、信頼されているドメインから差し障りのない文面を送っていただけると、スパムと判定されにくいと思います。

参照用 記事

距離空間と位相空間と連続写像

「イプシロン-デルタ論法って、なんすかアレ? 全然分からないっす!」と言っていた
N君も、最近では一般の位相空間の話なんぞをしています。今回は、距離空間位相空間のあいだの関係を把握するヒントを書いておきます。

内容:

距離と開球体の復習

イプシロン-デルタ論法はなぜ難しいのか? どうしたら分かるのか? 分かる必要があるのか?」と同じ用語・記法を使うことにします。集合Xとその上の距離関数 dX:X×X→R≧0 を組にした(X, dX)が距離空間〈metric space〉でした。記号の乱用により X = (X, dX) とも書きます。同じ文字Xを、距離空間の意味でも、その台集合〈underlying set〉の意味でも使います。また、dXのXが明らかなときは単にdと略記します。

距離空間(X, d)があるとき、a∈X と r∈R>0R>0 = {r∈R | r > 0})に対して

  • OBallX(a, r) := {x∈X | d(a, x) < r}

として開球体〈open ball〉が定義できます。aは開球体の中心、rは開球体の半径です。「球」だけでは、球体〈ball〉か球面〈sphere〉か曖昧ですが、ここでは球体だけを扱うので 球=球体 だと解釈してください。よって、OBallX(a, r)を開球とも呼びます。

開球の集まりを、

  • OBALLSX(a) = {OBall(a, r) | r∈R>0}
  • OBALLSX = {OBall(a, r) | a∈X, r∈R>0}

とします。OBALLSX(a)とOBALLSXとの関係は、

  • OBALLSX(a) = {A∈OBALLSX | center(A) = a} (centerは球体の中心)
  • OBALLSX = ∪(a∈X | OBALLSX(a)) (aを動かした合併)

となります。OBALLSX(a)やOBALLSXはXの開球の集まりなので、開球族開球体族〈family of open balls〉と呼びます。

X = Rn, d = (標準のユークリッド距離) のケースでは、

  • OBALLSRn(a) \stackrel{\sim}{=} R>0
  • OBALLSRn \stackrel{\sim}{=} Rn×R>0

という集合の同型があります。一般の距離空間Xでは、同型になっているとは限りませんが、aを固定したOBALLSX(a)とOBALLSXはそれぞれ、R>0とX×R>0で(重複を許して)パラメトライズ(またはインデキシング)されるとは言えます。

写像の連続性

2つの距離空間 (X, dX), (Y, dY) があって、f:X→Y は写像だとします。このとき、点aでのfの連続性〈continuity〉を、距離関数と正実数の大小関係を使って表現する方法が、イプシロン-デルタ論法〈ε-δ論法〉でした。

  • 自然言語: どんな正実数δに対しても、適当な正実数εを選べて、Xの点xが dX(a, x) < ε ならば、dY(f(a), f(x)) < δ とすることが出来る。
  • 論理式: ∀δ∈R>0.∃ε∈R>0.(∀x∈X.(dX(a, x) < ε ⇒ dY(f(a), f(x)) < δ))

この書き方はゴチャゴチャしていて何を言いたいか分かりにくく、直感的描像も得られないので、開球を使った記述のほうが望ましいだろう、ということが「イプシロン-デルタ論法はなぜ難しいのか? どうしたら分かるのか? 分かる必要があるのか?」の内容でした。

開球の族OBALLSX, OBALLSYを使うと、点aでのfの連続性の記述は次のようになります。

  • 自然言語: 任意の“f(a)を中心とするYの開球B”に対して、aを中心とするXの開球Aがあって、f*(A)⊆B と出来る。
  • 論理式: ∀B∈OBALLSY(f(a)).∃A∈OBALLSX(a). f*(A)⊆B

Y側の開球Bに対して、X側の開球Aを選んで f*(A)⊆B を達成するゲームと考えればいいのでしたね。ここで、f*(A)は、fによる集合Aの像〈image〉で、f*(A) = {y∈Y | ∃x∈X.(x∈A ∧ f(x) = y)} です。単に像をf(A)と書くことも多いですが、混乱しないように区別しています。ちなみに、逆像〈inverse image〉は(f-1(B)ではなくて)f*(B)とここでは書きます。f*(B) = {x∈X | ∃y∈Y.(y∈B ∧ f(x) = y)}。

一点aでのfの連続性が上記のように定義できれば、Xのすべての点で連続な写像〈関数〉として、連続写像連続関数 | continuous {map | function}〉が定義されます。

開集合族

距離空間 X = (X, d) の部分集合U(U⊆X)が開集合〈open set〉であるとは、次のことでした。

  • 自然言語: Uの任意の点xに対して、xを中心とする開球Aで、A⊆U となるものが在る。
  • 論理式: ∀x∈U.∃A∈OBALLSX(x). A⊆U

距離空間Xの開集合の全体をOSETSXとします。OSETSXは“集合の集合”なので、

  • OSETSX ⊆ Pow(X)
  • OSETSX∈Pow(Pow(X))

Pow(X)はXのベキ集合で、Y∈Pow(X) ⇔ Y⊆Y です。OSETSX(Xの開集合の集合)は、Xのベキ集合のベキ集合の要素です。OSETSXをXの開集合族〈family of open sets〉と呼びます。

ところで、Iをインデックス集合〈{index | indexing} set〉として、I→OSETSX という写像のことも開集合族と言いますね。こっちはインデックス族〈indexed family〉です。用語・記法の乱用・不整合・混乱は日常茶飯事なので、気にしてたらキリがないのですが、紛らわしいときは、OSETSXのほうを全開集合族*1と呼ぶことにします。全開集合族の部分集合(部分族、これも集合の集合)、または全開集合族への写像を、「開集合族」と呼ぶ可能性があるわけです。

距離空間Xの全開集合族OSETSXは次の性質を持ちます。

  1. \emptyset∈OSETSX
  2. X∈OSETSX
  3. U, V∈OSETSX ならば、(U∩V)∈OSETSX
  4. (Ui | i∈I) が開集合のインデックス族ならば、(∪(Ui | i∈I))∈OSETSX

一番目の「 \emptyset∈OSETSX 」は、そう約束していると思ってもかまいません。論理的には、開集合の条件 ∀x∈U.(...) を ∀x.(x∈U ⇒ ...) と書き換えてみると、x∈\emptyset が偽になるので、全体は真となり空集合\emptysetは開集合となります。

二番目の「 X∈OSETSX 」で、「Xに孤立点があったら成立しないのでは?」という質問を受けたことがあります。X⊆Rnの場合、OBallRn(a, r)とOBallX(a, r)を同じだと思ってしまう誤解がありますが、OBallX(a, r) = X∩OBallRn(a, r) です(同じとは限らない)。OBallRn(a, r)⊆X じゃなくても OBallX(a, r)⊆X となることはあります。a∈X が孤立点のとき、適当なεに関して、{a} = OBallX(a, ε) となりますが、{a}⊆X なので、OBallX(a, ε)⊆X です。孤立点であれ何であれ、xを中心とする小さな(いや、小さくなくても)開球はスッポリXに入ります。

三番目「 U, V∈OSETSX ならば、(U∩V)∈OSETSX 」は特に問題ないでしょう。練習問題ですね。

四番目「 (Ui | i∈I) が開集合のインデックス族ならば、(∪(Ui | i∈I))∈OSETSX 」は、インデックス族を使わなくても、全開集合族(集合の集合)OSETSXの任意の部分集合の合併が再びOSETSXの要素だ、とも言えます。

  • W⊆OSETSX ならば、∪(W)∈OSETSX

この性質も簡単に分かると思います。

距離空間とは限らない位相空間では、上記の全開集合族の性質を基本に据えます。距離空間では、実数値を取る距離関数や実数の大小比較(不等号)などで議論しました。そのテの数量的評価から、“部分集合/部分集合の集合(集合族)/写像の像・逆像”などへと記述の道具が変わってきます。したがって、“集合の集合”や“集合引数を取る関数”や、“集合値を返す関数”などに慣れる必要があるのです。

距離連続性と位相連続性

距離とは関係なく位相空間を定義するときは、台集合XとXの部分集合の族OXOX⊆Pow(X))の組(X, OX)で、OXが前節で出した全開集合族と同じ性質を満たすものを考えます。

  1. \emptysetOX
  2. X∈OX
  3. U, V∈OX ならば、(U∩V)∈OX
  4. (Ui | i∈I) がOXの要素のインデックス族ならば、(∪(Ui | i∈I))∈OX

一般の位相空間では正実数値の大小比較とかの数量的概念は使えなく/使わなくなります。数量的記述と集合的記述の中間的な、あるいは架け橋的な定式化が開球族による連続性の定義(「イプシロン-デルタ論法はなぜ難しいのか? どうしたら分かるのか? 分かる必要があるのか?」の定義)でした。開球は、中心と半径により定義されますが、開球族では正実数値である半径を表立って扱うことはなくなります。

ここから後では、距離空間の開球族を用いた連続性の定義と、開集合族を用いた連続性の定義が同値であることを示しましょう。開球の族OBALLSX, OBALLSYを使った連続性の定義は前節で述べたとおりです。開集合を用いた連続性の定義は次のようになります。

前節と同じ設定で、f:X→Y が連続であるとは:

  • 自然言語: 任意のYの開集合Vに対して、f*(V)はXの開集合である。
  • 論理式: ∀V∈OSETSY. f*(V)∈OSETSY

2つの連続性の定義は結果的に同値だとは言いながら、区別しないと同値性のステートメントを書けないので、距離空間の意味の連続性を距離連続、位相空間の意味の連続性を位相連続と区別しておきます。で、示すべきことは:

  • f:X→Y が距離連続 ⇔ f:X→Y が位相連続

2つの連続性が同値であること

「 f:X→Y が距離連続 ⇒ f:X→Y が位相連続 」を先に示しましょう。ターゲット命題は含意(⇒)が入れ子になるので、証明の“お膳立て”シリーズで導入した証明要求の書き方を使いましょう。我々に課せられた証明要求は次のとおりです。

  • Γ/ f:X→Y が距離連続 |-? f:X→Y が位相連続

ここで、Γ〈ガンマ〉は使ってよい予備知識をまとめて表したものです。位相連続であることを論理式に展開すると:

  • Γ/ f:X→Y が距離連続 |-? ∀V∈OSETSY. f*(V)∈OSETSX

右辺の全称束縛を、Vを自由変数にして左辺に移すと:

  • Γ/ f:X→Y が距離連続, V∈OSETSY |-? f*(V)∈OSETSX

開集合の定義により、f*(V)∈OSETSY を書き換えると:

  • Γ/ f:X→Y が距離連続, V∈OSETSY |-? ∀x∈f*(V).∃A∈OBALLSX(x). A⊆f*(V)

右辺の全称束縛を、xを自由変数にして左辺に移すと:

  • Γ/ f:X→Y が距離連続, V∈OSETSY, x∈f*(V) |-? ∃A∈OBALLSX(x). A⊆f*(V)

x∈f*(V) を同値な命題 f(x)∈V と置き換えて:

  • Γ/ f:X→Y が距離連続, V∈OSETSY, f(x)∈V |-? ∃A∈OBALLSX(x). A⊆f*(V)

ここで、一般的な定理として、次を思い出しましょう。

  • f*(S)⊆T ⇔ S⊆f*(T)

順序随伴性: ガロア接続の圏論」で述べた順序随伴性の例2です。これを A⊆f*(V) に対して適用すると:

  • f*(A)⊆V ⇔ A⊆f*(V)

証明要求に出てくる命題を同値な命題で置き換えてもいいので、我々の証明要求は次の形になります。

  • Γ/ f:X→Y が距離連続, V∈OSETSY, f(x)∈V |-? ∃A∈OBALLSX(x). f*(A)⊆V

証明要求の変形(お膳立て)はこのくらいでいいでしょう。前方推論〈forward reasoning〉による証明に切り替えます。

V∈OSETSY, f(x)∈V より、B∈OBALLSY(f(x)), B⊆V となるYの開球Bが存在します。fは距離連続だったので、Yの開球Bに対して、f*(A)⊆B となるXの開球Aが取れます(A∈OBALLSX(x))。f*(A)⊆B, B⊆V より f*(A)⊆V 。これで目的の命題(証明要求の左辺)を示せたので、証明要求が満足されて、次の証明判断が得られました。

  • Γ/ f:X→Y が距離連続, V∈OSETSY, f(x)∈V |- ∃A∈OBALLSX(x). f*(A)⊆V

これで、当初のターゲット命題「 f:X→Y が距離連続 ⇒ f:X→Y が位相連続 」が示されたことになります。逆向きの含意「 f:X→Y が位相連続 ⇒ f:X→Y が距離連続 」については、証明のお膳立てだけ示しておきます。

  Γ/ f:X→Y が位相連続 |-? f:X→Y が距離連続
  --------------------------------------------------- 距離連続の定義
  Γ/ f:X→Y が位相連続 |-?
    ∀x∈X.∀B∈OBALLSY(f(x)).∃A∈OBALLSX(x). fX(A)⊆B
  --------------------------------------------------- 全称束縛の変形
  Γ/ f:X→Y が位相連続, x∈X |-?
    ∀B∈OBALLSY(f(x)).∃A∈OBALLSX(x). f*(A)⊆B
  --------------------------------------------------- 全称束縛の変形
  Γ/ f:X→Y が位相連続, x∈X, B∈OBALLSY(f(x)) |-?
    ∃A∈OBALLSX(x). f*(A)⊆B
  --------------------------------------------------- 同値な命題で置き換え
  Γ/ f:X→Y が位相連続, x∈X, B∈OBALLSY(f(x)) |-?
    ∃A∈OBALLSX(x). A⊆f*(B)

距離から導かれる位相と距離とは無関係な位相

さて、今示した「 距離連続 ⇔ 位相連続 」がどんな意味・意義を持つかを考えてみましょう。

今回扱ってきたのは距離空間です(一般の位相空間の定義にも触れてますが)。距離空間(X, dX)から出発して、全開集合族を付加した(X, dX, OSETSX)を考えると、写像の連続性の定義は、dXには一切言及せずに、OSETSXの言葉だけでも記述できることが分かりました。

であるならば、距離から出発するのではなくて、「全開集合族ありき」の(X, OSETSX)から連続性を定義しても連続関数の理論は出来そうです。実際に、連続関数を載せる構造は、「集合+全開集合族」がふさわしいと信じられています。抽象的に全開集合族を規定する公理が先に述べたOXの性質です。

  1. \emptysetOX
  2. X∈OX
  3. U, V∈OX ならば、(U∩V)∈OX
  4. (Ui | i∈I) がOXの要素のインデックス族ならば、(∪(Ui | i∈I))∈OX

これらの公理を満たす全開集合族OXを備えた集合(X, OX)が位相空間〈topological space〉です*2。抽象的・公理的な意味での全開集合族を位相〈topology〉と呼ぶので、「位相空間とは位相を備えた空間(点集合)」ということで用語法の辻褄はあいます。

距離から導かれた位相の例は多いですが、距離とはまったく違った方法で定義される位相もあります。計算科学と順序に由来するスコット位相〈Scott topology〉、論理とブール代数に由来するストーン空間〈Stone space〉の位相、代数幾何に由来するザリスキー位相〈Zariski topology〉などは距離と無関係です。距離では捉えられない空間を扱うには、開集合族ベースの定義に移行せざるを得ないのです。

距離と無関係な位相と言えば、随分以前に、ブール代数のストーン空間の構成は、二元体上の可換環のスペクトルにザリスキー位相を入れることと同じだ、という話を書いたことがあります。

一方で、我々が常識的に想定する「空間」は距離空間なので、距離から導かれた位相はやはり重要です。距離から導かれる位相の特徴付けは熱心に研究された課題で、幾つかの距離化定理〈metrization theorems〉があります。


距離は、色々な位相空間の例を提供してくれますが、距離では定義できない位相空間もあります。距離と無関係な位相空間にも目を向けましょう、というお話でした。

*1:これはこれで、全開〈フルオープン〉な集合の族みたいで、語感が良くないのですが。

*2:位相を定義する方法は、開集合族以外にもたくさんあります。歴史的な紆余曲折を経て、現在の標準的定義が開集合族の公理に落ち着いている、ということです。