情報
トップエスイー基礎講座 第1巻
ソフトウェア科学基礎最先端のソフトウェア開発に求められる数理的基礎
オープンソースの広がりにより、多様な機能を実現することは以前と比較すると驚くばかりに容易になっている。しかし、このような開発法ではスケーラビリティと高信頼性を同時に保証することはできない。機能の実現や追加が比較的安易にできる時代になったからこそ、成長し続けるシステム全体の正常な動作を保証しうる開発検査手法の必要性が増している。
本書では、優れた開発者として最先端の理論やツールと使ってソフトウェア開発をするために必要な基礎知識である、論理学、並行システム、オートマトン、モデル検査のアルゴリズムや実装技術、モデル検証ツールをまとめて解説する。
電子書籍¥4,180 小売希望価格(税込)
紙の書籍¥4,180定価(税込)
基本情報
発売日 | 2008年9月26日 |
---|---|
本体価格 | 3,800円 |
ページ数 | 384 ページ ※印刷物 |
サイズ | B5 変形 |
ISBN | 9784764903555 |
ジャンル | 情報 |
タグ | ソフトウェア工学 |
電子書籍形式 | 固定型 |
主要目次
第 0 章 これから技術者をめざす人のために
0.1 トップエスイープログラム
0.2 形式手法講座シリーズ
0.3 モデル検査講座シリーズ
0.4 FMBOK
0.5 形式仕様記述とは?
0.6 モデル検査とは
0.7 本書を学んだ後
第 1 章 論理―正しいと考えられる事柄から正しい事柄を新たに導く
1.1 命題と述語
1.2 命題論理の演算
1.3 命題論理の論理式
1.4 命題論理の法則
1.5 命題論理の形式化
1.6 命題論理の公理と推論
1.7 述語論理
1.8 述語論理の言語
1.9 述語論理の意味論
1.10 述語論理の形式化
1.11 述語論理における推論
第 2 章 集合―多様な構造や構成の方法を知る
2.1 集合と元
2.2 包含関係
2.3 集合の演算
2.4 集合算の法則
2.5 集合族
2.6 直積
2.7 関係
2.8 関数,写像
2.9 集合の同等性
2.10 公理的集合論
2.11 列
2.12 列上の帰納法
2.13 バグ(bag)
第 3 章 並行プログラム―並行性に特有の概念と知識を学ぶ
3.1 並行プログラムとは?
3.2 並行プログラムの課題
第 4 章 時相論理―システムやプログラムの動的な性質を記述する
4.1 命題線形時相論理 PLTL
4.2 分岐時相論理 CTL,CTL*
第 5 章 検証性質の記述―一般の技術者がシステムの性質を記述する
5.1 到達可能性
5.2 安全性
5.3 活性
5.4 公平性
5.5 性質記述パターン
第 6 章 オートマトン―コンピュータの動作を形式的に表現する
6.1 有限オートマトン
6.2 正規表現
6.3 B ¨uchi オートマトン
6.4 時間オートマトン
第 7 章 モデル検査基礎―並行システムのモデル検査を行う
7.1 並行システムのモデル化
7.2 CTL モデル検査
7.3 TCTL モデル検査
7.4 PLTL モデル検査
第 8 章 モデル検査実装―検証モデル記述のノウハウを利用する
8.1 BDD(二分決定グラフ)による記号モデル検査
8.2 部分順序関係を利用した状態数削減
8.3 On-the-fly 手法
8.4 ハッシュ手法
8.5 状態圧縮
第 9 章 抽象解釈―モデル検査の複雑さを軽減する
9.1 抽象化とは
9.2 データ抽象
9.3 述語抽象
9.4 抽象化と健全性
9.5 プログラムスライシング
第 10 章 モデル検査ツール―SPIN,SMV,LTSA,UPPAAL を使う
10.1 はじめに
10.2 SPIN
10.3 SMV
10.4 LTSA
10.5 UPPAAL
参考文献
索 引
0.1 トップエスイープログラム
0.2 形式手法講座シリーズ
0.3 モデル検査講座シリーズ
0.4 FMBOK
0.5 形式仕様記述とは?
0.6 モデル検査とは
0.7 本書を学んだ後
第 1 章 論理―正しいと考えられる事柄から正しい事柄を新たに導く
1.1 命題と述語
1.2 命題論理の演算
1.3 命題論理の論理式
1.4 命題論理の法則
1.5 命題論理の形式化
1.6 命題論理の公理と推論
1.7 述語論理
1.8 述語論理の言語
1.9 述語論理の意味論
1.10 述語論理の形式化
1.11 述語論理における推論
第 2 章 集合―多様な構造や構成の方法を知る
2.1 集合と元
2.2 包含関係
2.3 集合の演算
2.4 集合算の法則
2.5 集合族
2.6 直積
2.7 関係
2.8 関数,写像
2.9 集合の同等性
2.10 公理的集合論
2.11 列
2.12 列上の帰納法
2.13 バグ(bag)
第 3 章 並行プログラム―並行性に特有の概念と知識を学ぶ
3.1 並行プログラムとは?
3.2 並行プログラムの課題
第 4 章 時相論理―システムやプログラムの動的な性質を記述する
4.1 命題線形時相論理 PLTL
4.2 分岐時相論理 CTL,CTL*
第 5 章 検証性質の記述―一般の技術者がシステムの性質を記述する
5.1 到達可能性
5.2 安全性
5.3 活性
5.4 公平性
5.5 性質記述パターン
第 6 章 オートマトン―コンピュータの動作を形式的に表現する
6.1 有限オートマトン
6.2 正規表現
6.3 B ¨uchi オートマトン
6.4 時間オートマトン
第 7 章 モデル検査基礎―並行システムのモデル検査を行う
7.1 並行システムのモデル化
7.2 CTL モデル検査
7.3 TCTL モデル検査
7.4 PLTL モデル検査
第 8 章 モデル検査実装―検証モデル記述のノウハウを利用する
8.1 BDD(二分決定グラフ)による記号モデル検査
8.2 部分順序関係を利用した状態数削減
8.3 On-the-fly 手法
8.4 ハッシュ手法
8.5 状態圧縮
第 9 章 抽象解釈―モデル検査の複雑さを軽減する
9.1 抽象化とは
9.2 データ抽象
9.3 述語抽象
9.4 抽象化と健全性
9.5 プログラムスライシング
第 10 章 モデル検査ツール―SPIN,SMV,LTSA,UPPAAL を使う
10.1 はじめに
10.2 SPIN
10.3 SMV
10.4 LTSA
10.5 UPPAAL
参考文献
索 引