射の積 product of arrows とは domain も codomain も異なる2つの射 f : A -> B, g : C -> D の積だ。
この2つの射の積となる射をもとめるのに、どんな方法でも構わないのだろうが、圏論では次の定義のように A と C の積 A × C から、B と D の積 B × D への射を定義し f × g で表す。つまり、射 f と g の domain 同士の積から codomain 同士の積への射を f と g の積として定義している。 定義 f : A -> B, g : C -> D とする。このとき <f . π1, g . π2> : A × C -> B × D は、f と g との 「射の積」 product of arrows と呼ばれ、記号 f × g で表される。 上の定義を集合の言葉で表してみる。集合 A と集合 B の直積集合 A × C の要素を (a, c)、B × D の要素を (b, d) とすると、 b = f (a), d = g(c) という関係がある。また、直積集合の要素で表すと、 (b, d) = (f × g) ((a, b)) = (f(a), g(b)) となる。射の積 f × g は射 f と射 g の性質を保存したまま、直積集合と直積集合の間の射にまとめ上げているとも言える。 また、射の積の図式には、対象の積の図式が隠れている。射の積の図式は次のようになっている。 f : A -> B g: C -> D π1 : A × C -> A, B × D -> B π2 : A × C -> C, B × D -> D したがって、 f . π1 : A × C -> B g . π2 : A × C -> D これは、A × C = E とおくと、次のような図式になる。 f . π1 : E -> B g . π2 : E -> D これは、B × D という対象の積を定義するときの図式だから、 f × g : A × C -> B × D は <f . π1, g . π2> : E -> B × D と同じものであることがわかる。 射の積 f × g がどのような目的で定義されているのかは、参考書には書かれていない。しかし、これは、射(関数)の集合を扱うときには便利な道具としての機能を発揮する。 いま、A -> B の関数(射)全てを集めた集合 BA を考える。そうすると、関数の集合 BA と値の集合 A との直積は、全ての関数と全ての値の組み合わせのペアの集合になる。 このとき特定の関数すなわち、BA の要素と全ての値の要素との組み合わせを取り出すにはどうしたら良いだろうか。 圏論では対象の要素を表す言葉がないので、終対象 1 から対象 C への射 e : 1 -> C で要素を表現する。したがって、全ての A -> B の関数の集合 BA の中から1つの関数を取り出すには、 f : 1 -> BA という射で表現しなくてはならない。しかし、この場合でも BA × A という対象から特定の関数とそれを関数適用させる全ての値 A とのペアを取り出すにはどうすればいいだろうか。 その答えは 1 × A を domain とし、BA × A を codomain とする射 f × idA で表現すればよい。つまり、 f × idA : 1 × A -> BA × A である。この例では BA の要素を指定するのに終対象 1 を用いたが、これは任意の対象 C をとってもよい。この場合射 g で指定される要素は複数になる。 g × idA : C × A -> BA × A これで射のネットワークを解析するための道具がまたひとつ増えた。しかし、どんな道具も構造を全て射で表現するという圏の大方針を頭においておくと、その抽象性に当惑せずに使い方を考えることができる。 また、射の積 f × g にしても、簡単な対象と射の図式にずいぶん複雑なものを詰め込めるものだと感心する。射の表現がどんなに簡潔かは、同じことを集合の言葉で表現してみるとわかる。圏論を数学者に独り占めさせるのはもったいないのかもしれない。
by tnomura9
| 2014-04-16 01:09
| 圏論
|
Comments(0)
|
カテゴリ
新型コロナウイルス 主インデックス Haskell 記事リスト 圏論記事リスト 考えるということのリスト 考えるということ ラッセルのパラドックス Haskell Prelude Ocaml ボーカロイド 圏論 jQuery デモ HTML Python ツールボックス XAMPP Ruby ubuntu WordPress 脳の話 話のネタ リンク 幸福論 キリスト教 心の話 メモ 電子カルテ Dojo JavaScript C# NetWalker ed と sed HTML Raspberry Pi C 言語 命題論理 以前の記事
最新のトラックバック
最新のコメント
ファン
記事ランキング
ブログジャンル
画像一覧
|
ファン申請 |
||