Systems and Software Verification 9. Deadlock-freeness システム情報科学府 情報工学専攻 荒木研究室 修士2年 住田 辰雄 目次 • • • • 9.0 デッドロック 9.1 安全性,それとも活性? 9.2 与えられたオートマトンのデッドロック 9.3 抽象化に注意せよ! 2006/10/4 モデル検査勉強会 2 9.0 デッドロック • デッドロックが存在しない – システムはそれ以上進行できないような状態 に到達することは決してない 2006/10/4 モデル検査勉強会 3 9.1 安全性,それとも活性? • デッドロックが存在しない – – AG EX true 理論的には安全性ではない • AG -形式の論理式に変換することはできない 1. モデル検査ツールがAG EX trueを扱うことが可能な らば,デッドロックは検証できる 2. 安全性に束縛される方法をあてにすることでは, デッドロックを検証することは不可能である(第11 章) 3. モデル検査ツールがAG EX trueを扱うことが不可 能ならば,検査しようとしているオートマトンに限定し たデッドロックを直接記述することができる 2006/10/4 モデル検査勉強会 4 9.2 与えられたオートマトンのデッドロック • オートマトンAはデッドロックが存在しない – s1 : xとyの値が常に等しい – s2 : xとyの値が常に異なる – s3 : 決して到達しない 2006/10/4 モデル検査勉強会 5 9.2 与えられたオートマトンのデッドロック • デッドロック状態 – s3においてxの値が0以下である – A |= AG(s3 x 0) (9.1) • これは安全性である – AG -形式の論理式である 2006/10/4 モデル検査勉強会 6 9.2 与えられたオートマトンのデッドロック • オートマトンA’ – s2からs1への遷移を禁止する – Aにおいて満足される全ての安全性を満たす • しかしA’にはデッドロックが存在する – (9.1)はもはやデッドロックを表現していない 2006/10/4 モデル検査勉強会 7 9.3 抽象化に注意せよ! • A’からA’’へ行われる抽象化操作は安全性 と両立する • A’’にデッドロックが存在しなくても,A’がそ うであると証明することにはならない 2006/10/4 モデル検査勉強会 8
© Copyright 2025 ExpyDoc