このブログは、旧・はてなダイアリー「檜山正幸のキマイラ飼育記 メモ編」(http://d.hatena.ne.jp/m-hiyama-memo/)のデータを移行・保存したものであり、今後(2019年1月以降)更新の予定はありません。

今後の更新は、新しいブログ http://m-hiyama-memo.hatenablog.com/ で行います。

詳細は後で(バートレット、計算の世界、XML)

寒いし雨降っていたので、ふさぎ込んで頭に来ていろいろと考えた。

  1. ブルース・バートレット(Bruce Bartlett)は秀才だ。修士論文も学位論文もよい。
  2. http://d.hatena.ne.jp/m-hiyama-memo/searchdiary?word=Bartlett
  3. そのバートレットの学位論文 "On unitary 2-representations of finite groups and topological quantum field theory" 5章を読んだ。
  4. それで、カテゴリカルマニュピュレーションと工作圏論の概念を思いついた。
  5. カテゴリカルマニュピュレーション=手作業=加工の例:ラムダ抽象とその逆、ブレイド(とツイスト*1)による単位/余単位のフリッピング、軸的圏(pivotal category)における軸反転(pivotting)
  6. バートレットは、双対構造のフリッピングによって、もろ手双対(もろ手随伴)を定式化している。εAをフリップする操作(マニュピュレーション)ΨAと、ηAをフリップする操作ΦAの集まり。
  7. バートレットは、even-handed構造と呼ぶ。訳語は両側構造か? 両側公平、左右公平??
  8. バートレットは随伴と双対は区別しないと明言している。ナルホド、やっぱりな。で、もろ手双対は ambidual(アンバイ双対、ambidextrous dualの短縮) でいいと思う。

それとは別に:

  1. コンピュータとプログラムの世界を、全体的にまるごと定式化するにはどうする?
  2. インスティチューションは必須だ。
  3. プログラミング言語は、構文生成モナドTとプリミティブを与える指標Σとの組だ。
  4. プログラムpは、モナドTのKleisli圏に射として存在するが、Σによるスライス圏の対象と考えたほうがよい。
  5. よって、プログラムp:Σ→Δ は、スライス圏のあいだのプログラム変換関手も定義する。圏の対象でもあり同時に関手でもあるという二重性。
  6. プログラムの生成(creation)、進化(evolution)、リファクタリングなども定義したい。
  7. エミュレーションやコンパイルも定式化。
  8. そのためには、単一のインスティチューションでは無理そうだ。
  9. インスティチューションの圏が必要だが、射の概念が難しい。
  10. モデル圏は状態遷移系が基本だと思う。
  11. セリンガー流の入出力=コミュニケーションを持つ遷移系だろう。
  12. 具体例のなかでの具体的構成が必要だ。

ひさびさにXMLのモジュールについて考えた。

  1. モジュール式(表現)という概念が基本。
  2. モジュールの名前は、モジュール型の変数
  3. モジュール定義とは、モジュール(実体)のリテラル表記
  4. 変数とリテラル演算子で組み立てた表現がモジュール式
  5. モジュール式もモジュールを指し示す
  6. モジュール型変数へのモジュール式を代入する文(宣言)の集まりがモジュール記述
  7. モジュールにもα変換がある
  8. α変換で移れる関係=α同値を入れて考える
  9. α変換とα同値のもとでは、モジュールの並置(モノイド積)や結合(多圏の結合)が合理的に定義できる。
  10. モジュールにプライベートな名前も内部α変換される。これは、圏からスパン圏を構成するときに同値類を取る操作に対応する。内部α変換で移れるモジュールはイコールとみなす。
  11. 構文的には、結合以外に、並置とトレースを組み合わせたマージがある。
  12. importの合理的解釈も可能だ。
  13. includeは止めたほうがいい。
  14. モジュールもコンパイルすべき。適当なプログラミング言語のソースにするか、独自の言語に変換。

*1:ツイストのペアによりネジレ玉をほぐす。