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

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

オートマトンと双代数

なにがミソかというと、係数(可換)半環Kが総和完備なこと。これによって、K値関数の引き戻しだけではなくて前送りが定義できる。つまり、反変関手だけでなく共変関手も定義できる。反変と共変が同時に定義できると内積と共軛(随伴)っぽい概念が使えるようになる。

ミソだけ書いておくと、周辺の当たり前のことを忘れるので、周辺も以下に書いておく。

Mがモノイドとして、それに係数半環(基礎半環)がKである双代数 Ba(M) を対応させる。その対応は Ba:MonBiAlgK という関手になる。

  • (Ba(M) の台集合) := (M→Kの関数)
  • (Ba(M) の線形構造) := (関数空間の線形構造)
  • (Ba(M) の乗法) := (関数空間の乗法、Kの乗法から自然に作る)
  • (Ba(M) の単位) := (関数空間の乗法の単位、Kの単位への定数関数)
  • (Ba(M) の余乗法) := (Mの乗法の双対、反変関手性を使う)
  • (Ba(M) の余単位) := (Mの単位の双対、反変関手性を使う)

形式言語は、この双代数の台集合の要素となる。形式言語の乗法は、実はこの双代数の畳み込み積になる。畳み込み積は、双代数の乗法と余乗法から構成される。したがって、加法は共有しながら、2つの乗法を持つような構造ができる。

この双代数は可換だが、非余可換。通常は激しく非余可換だ。そうすると、可換双代数の圏で考えれば十分だし、可換性を使ったほうが細かい結果が出せるだろう。可換積を持つことからストーン表現を使えるし、ストーン表現として、代数(可換環)のスペクトルとしてモノイドの台集合を再構成できる(ストーン双対性)。

一方で、余乗法と畳み込み半環(半代数)は非可換モノイドの表現を使って調べることになる。こっちは淡中双対で再構成するのだろう。

で、キモは始状態(初期状態)と終状態。Aが双代数上の加群だとして、i:K→A という線形写像が始状態、q:A→K という線形写像が終状態、qはquitまたはquery。

A*はAのKに対する標準双対空間とする。つまり、K-ベクトル空間において A* := Hom(A, K)。始状態 i:K→A が決まると、係数双代数Hに対して、H→A が決まる。集合的に表現すると、a∈H |→ (ai)∈A で決まる写像、併置は左作用。終状態 q:A→K が決まると、H→A* が決まる。これは、a∈H |→ (x |→ q(ax))。

始状態が決まると H→A が決まるので、これが全射になるとき可達となる。終状態が決まると H→A* が決まるので、これが単射となるとき可識となる(要確認)。可達と可識は双対となる。Aに内積があってAとA*が同一視可能だと、可達と可識をもっと関係づけることができそう。

  • 可達性は始状態で決まる概念。
  • 可識性は終状態=観測コベクトルで決まる概念
  • 可達性と可識性は双対な概念

マイヒル/ネロードの定理は、可達かつ可識なオートマトンは、係数双代数H上のコベクトルだけで記述できることを主張する。

さて、色々と問題がある。

  • 言語は係数双代数の要素だが、言語の補集合はどう扱う?
  • 言語のクリーニスターはどう扱う?
  • 言語の逆転(abc → cba のような変換)はどう扱う?
  • 双代数上の加群の圏におけるトレースと不動点は?