単純なものから複雑なものを構成する

【 単純なものから複雑なものを構成する 】

これまでのことを、少しまとめてみましょう。

  Diagram = Box + Wire

ここでBoxは、あるものがほかのものに変化する「プロセス」を表現しています。

  Diagramは、プロセスとしてものごとをとらえる手段

本当でしょうか? 箱と線からなる図形だけで、ものごとの変化の特徴を捉えるのに、なにか役に立つのでしょうか?

String Diagram ではこう考えます。

  複雑なDiagramは、単純なDiagramから合成される

これは、実は、次のもっと一般的な考え方の応用です。

  複雑なものは、単純なものから構成される

これを、「構成可能性 = composability の原理」といいます。

【 単純なものから複雑なものをつくる二つの方法 】

String Diagram = プロセスの理論 では、単純なプロセスから複雑なプロセスをつくるには、二つの方法があると言います。

1. 二つのプロセス A,  B を、独立に、並行に走らせる。(この独立に走る二つのプロセス全体を「一つのプロセス」としてとらえかえすことがポイントです)

2. 一つのプロセスAの出力を、もう一つのプロセスBの入力に結合する。(ここでも、結合された二つのプロセス全体を「一つのプロセス」としてとらえかえすことがポイントになります)

前者をプロセス A, Bの「並列合成」といって、A ⊗ B で表します。
後者をプロセス A, Bの「直列合成」といって、B ○ A で表します。

【 図形で表すことのメリット 】

ここで導入した記号 ⊗ や ○ を用いると、プロセス A, B, C について、式で書くと次のような関係(結合律)が成り立ちます。

 A ⊗ B ⊗ C = (A ⊗ B) ⊗ C = A ⊗ (B ⊗ C)
 A ○ B ○ C = (A ○ B) ○ C = A ○ (B ○ C)

式で書くと複雑に見えますが、これを図形で表すと、この関係がなりたつことが、すぐに直感的に理解できます。これが、図形を使うことのメリットです。詳しくは、ショートムービーで。

ショートムービー「Diagramの合成」を公開しました。

https://youtu.be/4G7S5f8Xocg?list=PLQIrJ0f9gMcPSp_fL7-LZW0yOwYXyvXtb

動画のスライドは、こちらからアクセスできます。

https://drive.google.com/file/d/1_bmBEq7BGFsjtt5YA8GLCCfOxCfpKqMH/view?usp=sharing

コメント

このブログの人気の投稿

マルレク・ネット「エントロピーと情報理論」公開しました。

初めにことばありき

人間は、善と悪との重ね合わせというモデルの失敗について