Structural operational semantics •Structural operational semanticsでは実行過 程の各々の段階に注目する。 •Transition relation の形は、 <S, s> ⇒ r と表す。 (1)r が<S’, s’>の形 状態 sにおけるSの実行が終わらなかっ た。結 果ではなく、中間の形。 (2)rが s’の形 状態s におけるSは終了して、最終状態はs’。 •rが存在しなければ、stuck(行き詰まった?)と 呼ぶ。 finite と infinite • 状態sからステートメントSを実行したとき、 derivation sequence は以下の2つのどち らかになる。 (1) finiteなシーケンス r0, r1, r2, ‥ rk rkはterminalかstuck の形 (2)infiniteなシーケンス r0, r1, r2, ‥ ステップ数の表し方 • r0 ⇒i ri ‥ r0からriまで実行するのにiス テップあることを示す。 • r0 ⇒* ri ‥ r0からriまで実行するのに、有 限回のステップがあることを示す。 • 上の2つは、derivation sequence でなくて もよい。riがterminal もしくは、stuckの形で あればよい。 terminateとloop • <S, s>から始めて、有限のderivation sequenceになるとき、状態sにおけるス テートメントSの実行はterminateするという。 • <S, s>から始めて、無限に続く derivation sequenceになるとき、状態sに おけるステートメントSの実行はloopすると いう。 定義 • 状態sにおけるステートメントSの実行は、 <S, s> ⇒* s’になるとき、成功した (terminate successfully)という。 • また、Sがすべてのsにおいて終了するとき、 Sはいつでも終了するという。 • また、Sがすべてのsにおいてloopするとき、 Sはいつでもloopするという。 Property of the semantics • Structural operational semantics では、 derivation sequence の長さにおける帰納 法で証明するのが好都合である。 • 実際証明するときは、この帰納法のステッ プは以下のどちらかを調べることでなされ る。(1)syntaxの要素の構造 (2)derivation sequenceの最初の transitionの正当性を証明する導出木 Induvction on the Length of Derivation Sequence(derivation sequenceの長さにお ける帰納法) • 1, まず示したい性質が全ての長さが0の deriation sequenceにて成立することを示す。 • 2, 次に他の全てのderivation sequence にて成 立することを示す。長さが最大でkの全ての derivation sequenceを満たすことを仮定する (induction hypothesis)。そして、長さがk+1の derivation sequenceでも成立することを示す。 定理2.19 • <S1; S2, s> ⇒k s” ならば、 <S1, s> ⇒k1 s’かつ<S2, s’> ⇒k2 s” である。(ただしk = k1 + k2) となるような状態sと自然数k1とk2が存在 する。 deterministic • テーブル2.2が、全てのS, s, r, r’ において、<S, s> ⇒ r かつ<S, s> ⇒ r’ならば r = r’であるとき、 テーブル2.2はdeterministicであ るという。
© Copyright 2024 ExpyDoc