Natural Semantics 実行過程の、最初と最後の状態(state)の関係を考える。

Slides:



Advertisements
Similar presentations
組合せ最適化輪講 2.3 連結性 川原 純. 2.3 連結性 内容 – グラフ上の節点をすべてたどるアルゴリズム 計算機上でのグラフの表現 – 強連結成分を求めるアルゴリズム トポロジカル順序を求める方法も – k- 連結、 k- 辺連結について – 2- 連結グラフの耳分解について.
Advertisements

1. 補間多項式 n 次の多項式 とは、単項式 の 線形結合の事である。 Definitions: ( 区間, 連続関数, abscissas (データ点、格子点、差分点), 多項 式 ) Theorem. (補間多項式の存在と一意性) 各 i = 0, …, n について、 をみたす、次数が高々 n.
人工知能特論2011 No.4 東京工科大学大学院 担当教員:亀田弘之.
3.2.3~3.3 D3 川原 純.
プログラミング言語としてのR 情報知能学科 白井 英俊.
「Postの対応問題」 の決定不能性の証明
© Yukiko Abe 2014 All rights reserved
ソフトウェア基礎科学 授業資料: 論理関係(logical relations)のお話
VBA H106077 寺沢友宏.
Extremal Combinatorics 14.1 ~ 14.2
Extremal Combinatrics Chapter 4
計算の理論 II 文脈自由文法と プッシュダウンオートマトン
論理式の表現を数学的に取り扱いやすくするために代数学の助けを借りる.
Semantics with Applications
10. 積分 積分・・確率モデルと動学モデルで使われる この章は計算方法の紹介 積分の定義から
Solving Shape-Analysis Problems in Languages with Destructive Updating
二分探索木によるサーチ.
情報学研究科 通信情報システム専攻 小野寺研究室 M1 奥村 佳弘
プログラミング言語論プログラミング言語論 プログラムの意味論 水野嘉明
第25章 単一始点最短路 3節 Bellman-Fordのアルゴリズム
ネットワーク理論 Text. Part 3 pp 最短路問題 pp 最大流問題 pp.85-94
形式言語の理論 5. 文脈依存言語.
Notes on Voronoi Diagrams for Pure Quantum States
プログラミング入門 電卓を作ろう・パートIV!!.
アルゴリズムとプログラミング (Algorithms and Programming)
2006年10月31日 木下佳樹 高橋孝一 田辺良則 湯浅能史 産業技術総合研究所 システム検証研究センター
7.4 Two General Settings D3 杉原堅也.
アルゴリズムとデータ構造勉強会 第6回 スレッド木
逐次プログラムの正当性(2) 帰納的アサーション法(フロイド法)
 型推論1(単相型) 2007.
25. Randomized Algorithms
Selfish Routing and the Price of Anarchy 4.3
計算量理論輪講 chap5-3 M1 高井唯史.
Talkプログラムのヒント 1 CS-B3 ネットワークプログラミング  &情報科学科実験I.
数理統計学 西 山.
Cプログラミング演習 第10回 二分探索木.
Structural operational semantics
論理と推論 命題論理 推論 命題論理体系の健全性と完全性 構文と意味 → 同値関係と標準形(節形式) 決定問題と意味木 推論規則
Additive Combinatrics 7
電気回路学Ⅱ コミュニケーションネットワークコース 5セメ 山田 博仁.
プログラミング言語論 第四回 理工学部 情報システム工学科 新田直也.
電機情報工学専門実験 6. 強化学習シミュレーション
アルゴリズム論 (第12回) 佐々木研(情報システム構築学講座) 講師 山田敬三
第5章 計算とプログラム 本章で説明すること ・計算の概観と記述法 ・代表的な計算モデル ・プログラムとプログラム言語.
© Yukiko Abe 2015 All rights reserved
コンパイラ 2011年10月20日
 型推論3(MLの多相型).
4. システムの安定性.
15.cons と種々のデータ構造.
知能ソフトウェア特論 Intelligent Software
知能ソフトウェア特論 Intelligent Software
第16章 動的計画法 アルゴリズムイントロダクション.
プログラミング入門2 第6回 関数 情報工学科 篠埜 功.
米澤研究室 全体ミーティング 2010/07/07 M2 渡邊裕貴.
Max Cut and the Smallest Eigenvalue 論文紹介
解析学 ー第9〜10回ー 2019/5/12.
情報工学概論 (アルゴリズムとデータ構造)
ウェブデザイン演習 第6回.
矛盾した知識 デフォルト推論 仮説を用いた推論 準無矛盾推論 デフォルト規則 デフォルト理論の拡張 → デフォルト証明 シナリオ
4.プッシュダウンオートマトンと 文脈自由文法の等価性
ヒープソート.
Chapter5 Systems of Distinct Representatives
PROGRAMMING IN HASKELL
プログラミング基礎演習 第4回.
ヒープソート.
プログラミング入門2 第6回 関数 情報工学科 篠埜 功.
場合分け(If Then Else,Select Case) 繰返し(Do While) 繰返しその2(For Next)
Static Enforcement of Security with Types
分岐(If-Else, Else if, Switch) ループ(While, For, Do-while)
グラフの帯域幅連続多重彩色 を求めるアルゴリズム (Bandwidth Consective Multicolorings of Graphs) 西関研究室 西川和秀.
Presentation transcript:

Natural Semantics 実行過程の、最初と最後の状態(state)の関係を考える。 transition(推移)は、                       <S, s> → s’                  と書く。  →の定義 が、Table2.1(p20)に書いてあ る。

derivation tree(導出木) root ‥ 証明したい、<S, s> → s’ (一番下にある) leaves ‥ 公理の例(一番上に来る) internal node ‥ 規則(rule)の例の、結論。自分のすぐ上に、対応する仮定(premise)が来る。(真ん中にある)   使った公理と規則の条件(condition)は、すべて満たされているべき。 公理を木にしたものはsimple, 規則を木にしたものはcompositeと呼ぶ

導出木の組み立て方 rootから始めて、下から上へ築いてゆく。 まず、成り立つことを示したい、<S, s> → s’の左側<S, s>と一致する、公理や規則を見つける。                          (1)もし、公理と一致して、条件を満たすなら最終状態を決定して、導出木は完成。      (2)もし、規則と一致するなら、まず規則の前提部分を作る。次に、条件がみたされているか調べて、OKだったら、最終状態を決定する。

terminate と loop (p25) もし、<S, s> → s’ となる s’が存在すれば、状態 s におけるステートメント S の実行はterminateする。 もし存在しなければ、loopする。

Properties of the semantics transition systemは、ステートメントとその性質について、論じる方法を提供してくれる。例えば、S1とS2が意味的に同じものであるか考える。                 すべての s と s’ において、        <S1, s> → s’ かつ <S2, s> → s’であるなら、S1 と S2 は、意味的に同じであるといえる。                 

補題2.5 次のステートメント while b do S は、    if b then (S; while b do S) else skip と  意味的に同じである。 (証明)2段階で行う。まず、(*)から(**)を示す。次に(**)から(*)を示す。

Induction on the Shape of Derivation Tree (導出木の構造における帰納法) transition system の公理(Table2.1)で成り立つことを示して、証明したい性質がすべてのsimpleな導出木で成り立つことを証明する。 証明したい性質が、すべてのcompositeな導出木で成り立つことを示す。(以下のように)。各規則に対して、その性質が規則の仮定(これをinduction hypothesisとよぶ )で成り立つとする。そして、条件が満たされているゆえ、その性質は規則の結果で成り立つことを証明する

定理 2.9 Table2.1で表される natural semantics は deterministic である。 deterministic ‥ どのステートメントSや初期状態 s においても、 S の実行が終了するならば、最終状態 s’ を一意に決めることができる。 (証明) <S, s> → s’ を仮定して、         <S, s> → s’’ならば s’ = s” を証明する。  導出木の構造における帰納法を使う。

つまり‥Induction on the Shape of Derivation Treeの言いたいことは‥ まず公理で成り立つことを証明。 次に、規則で成り立つことを証明。それが言えれば、証明したかったものが transition system において、成り立つと言える。 leaf(公理)が成立して、internal node(規則)が成立すれば、root(証明したいもの)が成立することが言える。(どんな形の木になるかは判らない。しかし公理と規則が成立することが言えたので、証明できることがわかる)

注意 (◦_◦) ステートメントSについて、構造的帰納法を用いて、定理2.9を証明するのは不可能なぜなら[While tt]で While b do S の semantics をそのままの自分を使って定義しているから。 構造的帰納法は、証明するもののsemanticsが、compositionally に定義されている時に有効。 Compositionally ‥ AやBの定義のようなもの。AやB自体は出てくるけれど、小さくなっている。

The semantic function Sns ステートメントの意味‥状態から状態への部分関数 次のように定義する。                 Sns : Stm → (State → State) ステートメントを受け取って、状態を受け取って、状態を返すかもしれないし、返さないかもしれない関数を返す、関数。 • Sns [[s]] s = s’ if <S, s> → s’ | undef otherwise