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

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

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

変換手〈transfor〉は要らないだろう

関手や自然変換の高次元バージョンとして変換手〈transfor | トランスフォー〉があります。関手、自然変換、その他の“変換のようなもの”を一律に扱う方針を示した点で、変換手は意義があったと思います。が、新しい言葉としての「変換手」は要らないだろうと思います。

内容:

n-圏

n-圏〈n-category〉とは、対象(0-射)と射(1-射)以外に、2-射、3-射、… n-射までの構成素を持つ圏類似物です。通常の圏は1-圏となります。n-圏の全体からなる圏をn-Catと書きましょう。n-Cat自体は、単なる圏ではなくて(n+1)-圏となります。

実際にn-Catを構成するのは大変です。まず、サイズの問題があります。通常の圏は1-圏だったので、その全体は 1-Cat = Cat になります。Catを小さい圏の全体とすれば、集合圏Set1-Catの対象にはなれません。議論をスムーズに進めるには、次のような系列が欲しいのです。(X ∈0 Y は、X∈|Y| を意味します。)

  • Set = 0-Cat0 1-Cat0 2-Cat0 3-Cat

こういう系列を作れるか? 認めるか? は議論のあるところです。

n-圏は、n種類の結合演算を持ちます。演算が満たすべき法則結合法則など)があります。これらの法則の“弱さ”のバリエーションがたくさんあります。nが増えるとバリエーションは膨大になります。バリエーションをひとつ固定しても、法則を記述することがとても大変。

そういった頭が痛い問題があるのですが、ここでは、詳細は曖昧なままにn-Catというナニカがあるのだ、と前提します。そして、n-Catは、我々が欲しいと思う良い性質を持っていると楽観的に仮定します。

n-関手、n-自然変換、(n, k)-変換手

C, D をn-圏とします。つまり、C, D0 n-Cat です。このとき、n-圏Cからn-圏Dへの関手 F:CD を定義できます。通常の圏の場合より面倒ですが、通常の関手と類似の概念としてn-圏のあいだの関手も定義できます。同様に、F, G:CD が2つの関手のとき、自然変換 α::F⇒G:CD も、通常の自然変換の類似として定義できます。

n-圏のあいだの関手はn-関手〈n-functor〉と呼びます。n-関手のあいだの自然変換はn-自然変換〈n-natural transformation〉です。関手においても、様々な“弱さ”があるので、n-関手もバリエーションがあります。それについては、次の記事を参照してください。

n-圏はn-Catの対象(0-射)、n-関手はn-Catの射(1-射)、n-自然変換はn-Catの2-射になります。この調子で、n-Catの3-射、4-射、… を定義していくことができます。4-射までは名前が付いています。

  • n-Catの3-射 = n-変更〈n-modification〉
  • n-Catの4-射 = n-摂動〈n-perturbation〉

しかし、名前をずっと付け続けられるわけではないので、これらを総称する呼び名として変換手〈transfor〉が定義されました。"natural transformation"の"trans"と、"functor"の"or"をくっつけた造語だそうです。

関手や自然変換などはすべて変換手に統合できます。

  • n-関手 = (n, 0)-変換手
  • n-自然変換 = (n, 1)-変換手
  • n-変更 = (n, 2)-変換手
  • n-摂動 = (n, 3)-変換手
  • (n, 3)-変換手

(n, k)-関手

変換手という概念と言葉をしばらく使ってみたのですが、どうも使いにくい。その主たる原因は番号付けがズレてるせいです。

  • n-Catの1-射 = (n, 0)-変換手
  • n-Catの2-射 = (n, 1)-変換手
  • n-Catの3-射 = (n, 2)-変換手
  • n-Catの4-射 = (n, 3)-変換手

番号を合わせるには、次の言葉を使えばよさそうです。

  • n-Catの1-射 = (n, 1)-関手
  • n-Catの2-射 = (n, 2)-関手
  • n-Catの3-射 = (n, 3)-関手
  • n-Catの4-射 = (n, 4)-関手

n-Catの対象は0-射なので、(n, 0)-関手ということになります。

変換手という新しい言葉を導入せずに、今までと同じ「関手」を使い、番号を付けて次元を識別するわけです。ただし、番号(次元)は二つ必要です、対象である圏の次元nと、n-Catにおける射の次元kです。単に「n-関手」といったら、それは (n, 1)-関手です。

二つの番号で識別された「関手」を使うと、だいぶスッキリします。

追記(2019-08-28): 検索の問題があるか

「関手」を拡大解釈すれば、「変関手」という言葉は要らないし、そのほうが便利な気がします。が、検索容易性(ググられビリティ)からは問題が生じるかも。

「関手」、"functor"と検索すると、通常の関手(1-圏のあいだの1-関手)に関する情報が圧倒的にたくさん引っかかるでしょう。高次圏の文脈で一般化した関手を検索したい場合は、高次圏に特化した言葉があったほうが便利ですね。

実際僕は、"transfor"で検索して、通常の関手に限らない“変換のようなもの”について調べますし。

特化した用語を作ると、用語が増えてしまう弊害があるけど、検索を精密化するときは役に立つわけです。ウーム。これはねー、トレードオフだからなー、両立はしないなー。