Pnueli論文のメモ

MSCのライバルMTS(Modal Transition System)をやっているUchitelに対抗すべく
理論武装のため、合成派の古典論文であるPnueliの"On the synthesis of a reactive module"を読んだ。

リアクティブシステムは環境からの入力変数xに対して動作してyを環境に対して出力するものとして
このシステムのプロパティとしてφ(x,y)という性質をもつときに、このリアクティブシステムを
合成できるか?というのがお題で、環境とシステムの間のgameとみたてて、環境がどんな手xを繰り出しても
φ(x,y)が成立するようなyを出力できるようなプログラムが構築できるか?という課題に落とし込み、
これが、tree automaton問題になってさらに、transducer問題に帰着されて、最後にプログラムになる
という話(つながっているのか????)

理解できていないが、忘れないために概要をメモする。

Theorem1.以下は同値である

  • 線形時相論理φが実装可能である
  • ψ=(∀x)(∃y)Aφ(x,y)が全てのtree modelに対してvalidである
  • Aφ(x,y)があるfull-x-treeで成り立つこと
  • あとは略

Theorem2.線形時相論理φを実装するプログラム(P=P^Cを構成するtransducer C)を得るためには、

  • 線形時相論理φからNondeterministic Buchi Automaton(NBA)を生成
    • standard constructionという手法が確立されているらしい。Tabulau法だったりなんだったり、
  • NBAをdeterministicなRabin Automaton:Bに変換
    • ここでいわゆるSafraの構成法がでてくる
  • Bを無限木上のtree-automaton B'と見立てる
  • Tω(B')のemptinessの検査をする
  • 上記検査の過程ででてきたtransducer Cがφを実装するプログラムである
    • boolean domainに限定すると以下の流れになる
    • Theorem1より、φ(x,y)が実装可能であることとAφ(x,y)がsome full-x-treeで成立することが同値であることを利用すると
    • full binary tree でφ(x,y)が常に成立するようなラベリングL(s,x),L(s,y)を求めればよい
    • L(s,x)はfull-x-treeできまるので、L(s,y)をきめればよい
    • すなわちL(s,y)がφ(x,y)を成立させるように割り当てられたbinary treeを受理するTree Automaton Aをつくればよい
    • ψの全てのtree modelにおいてvalid性は、Tω(A)のnon-emptinessに帰着できることが知られており
    • さらに[HR72,Rab72]であるように、t.a. A がある無限の木を受理するiff Aがあるregular-labellingを受理する
    • regular labeling はdeterministic (string) ω-transducerにより生成できる
    • transducerは0,1にエンコードされたdirectionのシーケンスを入力として、木をたどり、各ノードでlabelを出力する
    • このようなtransducer Cが見つかれば、P=P^Cとなるプログラムとして解釈できる
      • P=P^Mって、"fpM(a0,a1,...,ai)=L(a0,a1,...,ai,y)"(p184)のこと??
    • このプログラムは変数xの履歴a1,...,akを入力として、yをポイントポイントで出力する。