Model Checking (2) Temporal Logic

Slides:



Advertisements
Similar presentations
分決定グラフに基づく記号 モデル検査 BDD における論理演算 2. f  p =  f p S  p = S – S p 3. f p  q =f p  f q S p  q = S p  S q f p  q =f p  f q S p  q = S p  S.
Advertisements

3D Wand による 3 次 元形状計測. 3次元形状計測装置  3D Wand(テクノドリーム 21 社 製)  構成 3D Wand 本体: 7 つの発光ダイオー ドとラインレーザー発光装置が一体となっ た手に持って移動できる電池駆動の装置.
マルチスレッド GUI モデル 小笠原啓 有限会社 IT プランニング. Page 2 ゴール  マルチスレッドな GUI ライブラリを OCaml で。  動きのある UI は近頃必須なので、アニメーションを容易にする仕組みを導 入。  GUI 部品のイベント、見かけを自由にカスタマイズできるように。
レポート書き方. おしいレポート よく調べてある それぞれの、1文の言っていることは正 しい しかし、全体として、何が言いた いのかわからない 内容の重要だが、全体の構成も重 要である.
1 7.時間限定チューリングマシンと クラス P. 2 7 -1.入力サイズ チューリングマシンの入力記号 の長さ を 入力サイズという。 名称:合成数の問題 インスタンス:整数n 問:nは合成数か? 通常は、入力サイズとしてはもっとも短い表現での 長さが利用される。 例えば、次のような合成数の問題における入力サイズは、
7.n次の行列式   一般的な(n次の)行列式の定義には、数学的な概念がいろいろ必要である。まずそれらを順に見ていく。
第 3 回 iPhone アプリ開発勉強会 Objective-C 基礎講座 - インスタンスメソッド - 三井 相和.
9.線形写像.
3.多項式計算アルゴリズム べき乗の計算 多項式の計算.
情報処理A 第10回 Excelの使い方 その3.
九州大学 岡村研究室 久保 貴哉 1. 利用中のAPの数の推移 2 横軸:時刻 縦軸:接続要求数 ・深夜では一分間で平均一台、 昼間では平均14台程度の接続 要求をAPが受けている。 ・急にAPの利用者数が増えてく るのは7~8時あたり.
5.連立一次方程式.
相関.
―本日の講義― ・平均と分散 -代表値 -ぱらつき(分散・標準偏差等) ・Excelによる演習
人工知能特論 II 第 6 回 二宮 崇 1. 今日の講義の予定 確率的文法 品詞解析 HMM 構文解析 PCFG 教科書 北研二 ( 著 ) 辻井潤一 ( 編 ) 言語と計算 4 確率的言語モデル 東大出版会 C. D. Manning & Hinrich Schütze “FOUNDATIONS.
広告付き価格サービ ス 小園一正. はじめに 世の中には様々な表現方法の広告があり ます。その中でも私たち学生にとって身 近にあるものを広告媒体として取り入れ られている。 価格サービス(無料配布のルーズリー フ)を体験したことにより興味を惹かれ るきっかけとなった。主な目的は、これ.
素数判定法 2011/6/20.
公開鍵暗号系 2011/05/09.
1章 行列と行列式.
本宮市立白岩小学校. 1 はじめに 2 家庭学習プログラム開発の視点 ① 先行学習(予習)を生かした 確かな学力を形成する授業づく り ② 家庭との連携を図った家庭学習の習慣化.
フーリエ級数. 一般的な波はこのように表せる a,b をフーリエ級数とい う 比率:
3.エントロピーの性質と各種情報量.
9.通信路符号化手法1 (誤り検出と誤り訂正の原理)
人工知能特論II 第10回 二宮 崇.
Excelによる積分.
1 6.低次の行列式とその応用. 2 行列式とは 行列式とは、正方行列の特徴を表す一つのスカ ラーである。すなわち、行列式は正方行列からスカ ラーに写す写像の一種とみなすこともできる。 正方行列 スカラー(実数) の行列に対する行列式を、 次の行列式という。 行列 の行列式を とも表す。 行列式と行列の記号.
計算のスピードアップ コンピュータでも、sin、cosの計算は大変です 足し算、引き算、掛け算、割り算は早いです
線形符号(10章).
1 0章 数学基礎. 2 ( 定義)集合 集合については、 3セメスタ開講の「離散数学」で詳しく扱う。 集合 大学では、高校より厳密に議論を行う。そのために、議論の 対象を明確にする必要がある。 ある “ もの ” (基本的な対象、概念)の集まりを、 集合という。 集合に含まれる “ もの ” を、集合の要素または元という。
10.PとNP完全問題との境界.
複素数.
4.プッシュダウンオートマトンと 文脈自由文法の等価性
1 0章 数学基礎. 2 ( 定義)集合 集合については、 3セメスタ開講の「離散数学」で詳しく扱う。 集合 大学では、高校より厳密に議論を行う。そのために、議論の 対象を明確にする必要がある。 ある “ もの ” (基本的な対象、概念)の集まりを、 集合という。 集合に含まれる “ もの ” を、集合の要素または元という。
人工知能特論II 第7回 二宮 崇.
1 9.線形写像. 2 ここでは、行列の積によって、写像を 定義できることをみていく。 また、行列の積によって定義される写 像の性質を調べていく。
通信路(7章).
3.プッシュダウンオートマトンと 文脈自由文法
ビット. 十進数と二進数 十進数  0から9までの数字を使って 0、1、2、3、4、5、6、7、8、9、 10、11、12 と数える 二進数  0と1を使って 0、1、10、11、100、101、11 0、111 と数える.
人工知能特論 II 第 4 回 二宮 崇 1. CCG (COMBINATORY CATEGORIAL GRAMMAR) 組合せ範疇文法 2 今日の講義の予定.
正弦波.
3.正方行列(単位行列、逆行列、対称行列、交代行列)
年度 情報数理学. 2 履修にあたって 2009 年度 大学院奇数セメスター(前期)開講 K336→ 大学院棟 D 416(次回から)教室: 時限: 火曜日3時限( 12:50 - 14:20 ) 担当 草苅良至 4/21( 火) 休講 → 補講 ?/? ? 時限 D416.
様々な情報源(4章).
レイアウトとデザインの基本 情報処理演習2.
学習者の意欲を高める音読指導の 一時例 1 Speak を使った 音読指導 鈴木政浩(西武文理大学)
論理回路 第1回. 今日の内容 論理回路とは? 本講義の位置づけ,達成目標 講義スケジュールと内容 受講時の注意事項 成績の評価方法.
Bar-TOP における光の 群速度伝播の解析 名古屋大学 高エネルギー物理研究室 松石 武 (Matsuishi Takeru)
Three-Year Course Orientation International Course.
Analog “ neuronal ” networks in early vision Koch and Yuille et al. Proc Academic National Sciences 1986.
C言語応用 構造体.
3.多項式計算アルゴリズム べき乗の計算 多項式の計算.
Automatic Language Acquisition, an Interactive Approach † Robert J. Martin † 大西昇 ‡ 山村毅 † 名古屋大学 ‡ 愛知県立大学.
言語とジェンダー. 目的 言語には、性的な存在である人間の自己認識や 世界認識を決定する力が潜んでいる。 – 言語構造の面(言語的カテゴリー ) – 言語運用の面 日常に潜む無意識の言語の力を、記述し、意識 化することが本講義の目的である。 同時に、さまざまな言語、さまざまな文化には、 それぞれに特徴的な問題があり、ジェンダーの.
移動エージェントプログラムの 動作表示のためのアニメーション言 語 名古屋大学情報工学コース 坂部研究室 高岸 健.
1 プログラミング言語論 第13回 プログラムの意味論と検証 (2) 表示的意味論 担当:犬塚. 2 表示的意味論 denotational semantics  表示的意味論では、プログラムの要素とそれが 意味するものを対応付ける。 変数 式 文 A B … A+2 2B+C A:=A+2 if.
プログラミング言語論 第9回 論理型プログラミング言語 担当:犬塚.
プログラミングⅠ( 2 組) 第 1 回 / pLB1.pptx.
人を知るとは何を知るこ とか McAdams, D. P What do we know when we know a person? Journal of Personality 63:
8.任意のデータ構造 (グラフの表現とアルゴリズム)
第14回 プログラムの意味論と検証(3) 不動点意味論 担当:犬塚
実験5 規則波 C0XXXX 石黒 ○○ C0XXXX 杉浦 ○○ C0XXXX 大杉 ○○ C0XXXX 高柳 ○○ C0XXXX 岡田 ○○ C0XXXX 藤江 ○○ C0XXXX 尾形 ○○ C0XXXX 足立 ○○
Run2b シリコン検出 器 現在の SVX-II (内側3層)は 放射線損傷により Run2b 中に 著しく性能が劣化する Run2b シリコン検出器 日本の分担: 1512 outer axial sensors 648 outer stereo sensors ( 144 inner axial.
LabVIEWを用いた計測制御システムの構築1 - 電気抵抗率算出プログラムの作成 -
音の変化を視覚化する サウンドプレイヤーの作成
Self-efficacy(自己効力感)について
知能ソフトウェア特論 項書換え系(3) 合流性 Term Rewriting Systems(3) Confluence Intelligent Software.
知能ソフトウェア特論 項書換え系(2) 停止性 Term Rewriting Systems(2) Termination Intelligent Software.
Discrete Optimization (離散最適化) Linear Programming (線形計画) Nonlinear Programming (非線形計画) Network optimization (ネットワーク計画) Mathematical Programming (数理計画)
Where is Wumpus Propositional logic (cont…) Reasoning where is wumpus
Formal Methods in software development
Presentation transcript:

Model Checking (2) Temporal Logic 知能ソフトウェア特論 Intelligent Software モデル検査(2) 時相論理 Model Checking (2) Temporal Logic 1.時相論理の概要 2.状態遷移系の形式化 3.線形時相論理 LTL 4.計算木時相論理 CTL 1. Overview of temporal logic 2. Formalization of state transition systems 3. Linear Temporal Logic: LTL 4. Computational Tree Logic: CTL ■Reference Model Checking, E.M. Clarke, Jr. et al, MIT Press (1999)

(state transition system) モデル検査器の概要   (Overview of model checker) モデル検査器 model checker モデル model 検査結果 result 状態遷移系 OK/反例 性質 property (state transition system) The result is either OK or a counterexample (error trace). モデル記述言語 プロセス代数 C言語風言語 安全性,活性 (safety, liveness) 性質記述言語 時相論理

1.時相論理の概要 (Overview of temporal logic) To verify sequential programs, it is enough to represent the systems by input/output relationships in classical logic. To verify reactive, concurrent systems, which are often non-terminating, it is important to represent the internal state transitions of the systems in non-classical logic.

時相論理の概要 (Overview of temporal logic) Temporal logic allows you to describe properties of reactive, concurrent systems, describe properties related to time, describe properties of state transition using temporal operators. LTL: Linear Temporal Logic CTL: Computational Tree Logic

2. 状態遷移系の形式化 (Formalization of state transition systems) (the set of variables in a concurrent system) (domain: a finite set of values taken by the variables) (state: a vector of values taken by the variables) (the set of atomic propositions: Their truth values are determined in each state. For example, “v1=3” is an atomic proposition whose value is true in the states where the value of v1 is 3.)

クリプキ構造 (Kripke structure) :状態遷移系の一種 State transition systems are formally modeled by the Kripke structure defined as 4-tuple. (S is a finite set of states) (S0 ⊆ S is a set of initial states) (R ⊆ S×S is a state transition relation) ベキ集合 (APのすべての部分集合の集合) (L: S→2AP is a labeling function, which assigns each state in S with a label, i.e. a subset of AP that are true in that state) powerset (the set of all subsets of AP)

クリプキ構造の例(オーブンレンジ) (An example of Kripke structure: an oven) 初期状態 (initial state) start oven open door cook open door close door done close door open door reset start oven start cooking warmup

パス (Path) We assume every state s has a state s’ to which transition from s is possible. Otherwise, we will fix R so that transition from s to s itself is possible. A path from a state s is an infinite sequence of states p=(s0s1s2…). where s0=s and (si , si+1) ∈R for all i.

3.線形時相論理 LTL (Linear Temporal Logic: LTL) Is c true in this path? false false true false a b a b c a このパスでは,いつか必ず c が成り立つ LTLでは,この性質を Fc で表す In this path, c will be eventually true. In LTL, this property is expressed as Fc.

LTLの構文論 LTL式 (Syntax of LTL) The syntax for LTL formulas are defined inductively by using temporal operators X, F, G, and U as follows. LTL式 (LTL formulas) An atomic proposition p is an LTL formula. These eight formulas are LTL formulas, if f and g are LTL formulas.

LTLの直観的な意味(1/2) (Intuitive meaning of LTL) The truth of an LTL formula is determined for each path. f is true in the neXt state on the path. f will be Finally true in some state on the path. f is true in all the states (Globally) on the path. g is true in some state s on the path, and f is true in all the states before s (Until g is true).

LTLの直観的な意味(2/2) (Intuitive meaning of LTL) p p with no temporal operators f neXt f ¬f ¬f ¬f f Future f f f f f f Globally f f∧¬g f∧¬g f∧¬g g f Until g

LTLの形式的意味論(1/3) 表記法 (Formal semantics of LTL: Notation) A path is represented by an infinite sequence p=(s0s1s2…) of states. A subpath of p starting from si , i.e. (sisi+1…), is denoted by pi. The LTL formula f is true for the path p (p fulfills f ). The negation of the above formula

LTLの形式的意味論(2/3) 時相演算子を含まないとき (Formal semantics of LTL: When no temporal operators involved) The inductive definition of the truth for LTL formulas, where p is an atomic proposition and f, g are LTL formulas. s0に付けられた ラベル(原始命題の集合) the label (a subset of AP) attached to s0 If f involves no temporal operators, the truth of f is its truth in the initial state s0 of the path p.

LTLの形式的意味論(3/3) 時相演算子を含むとき (Formal semantics of LTL: When temporal operators involved) p=(s0s1s2…) pi=(sisi+1…)

LTLモデル検査器 (LTL Model Checker) SPIN など When an LTL formula f is input to an LTL model checker such as SPIN, it checks all the paths p starting from the initial states to see if p |= f. If it finds a path with p |= ¬f, it will output that path.

4.計算木時相論理 CTL (Computation Tree Logic: CTL) 計算木 computation tree path クリプキ構造 計算木 a b Kripke structure computation tree a b b c c b c c a b c c path

CTLの構文論 CTL式 (Syntax of CTL) (CTL uses the path quantifiers E and A in addition to LTL temporal operators) CTL式 (CTL formulas) An atomic proposition p is a CTL formula. These 12 formulas are CTL formulas, if f and g are CTL formulas.

CTLの直観的な意味: E,A (Intuitive meaning of CTL: E,A) The truth of a CTL formula is determined for each computation tree starting from a state. There exists a path in the computation tree for which f is true. f is true for all paths in the computation tree.

CTLの直観的な意味: Eの使用例 (Intuitive meaning of CTL: Sample use of E) EX blue EF blue EG blue E(gray U blue) There exists a path such that the next state is blue. There exists a path that will, in future, get blue. There exists a path that is globally blue. There exists a path that is gray until blue.

CTLの直観的な意味: Aの使用例 (Intuitive meaning of CTL: Sample use of A) AX blue AF blue AG blue A(gray U blue) For all paths, the next state is blue. For all paths, it will finally become blue. For all paths, it is globally blue. For all paths, it is gray until blue.

CTLの形式的意味論(1/3) 表記法 (Formal semantics of CTL: Notation) The CTL formula f is true for the computation tree starting from the state s (s fulfills f ). (The negation of the above formula)

CTLの形式的意味論(2/3) 時相演算子を含まないとき (Formal semantics of CTL: When no temporal operators involved) The inductive definition of the truth for CTL formulas, where p is an atomic proposition and f, g are CTL formulas. s に付けられた ラベル(原始命題の集合) the label (a set of atomic propositions) attached to s If f involves no temporal operators, the truth of f is its truth in the state s , the root of the computation tree.

CTLの形式的意味論(3/3) 時相演算子を含むとき (Formal semantics of CTL: When temporal operators involved)

CTL式の例(1/4) (Example of CTL formula) There exists a path where in future we will see that start is true but ready is not. ready start ready start

CTL式の例(2/4) (Example of CTL formula) For all paths, we will see that deviceEnabled will be finally true. devEn devEn = deviceEnabled devEn

CTL式の例(3/4) (Example of CTL formula) In any path, it is always true that if req is true at that time, then for all paths after that, ack will be eventually true. req ack ack

CTL式の例(4/4) (Example of CTL formula) From any state, there is a path to reach a restart state. restart

演習問題4 Exercise 4 Prove the following identical equations. 参考