情報科学 › ソフトウェア設計とテスト › 契約による設計

表現不変条件の帰納法

定理 6.2(「契約による設計」§6) ・ ✓公理まで証明済み

データ型の実装と表現不変条件 Inv\mathrm{Inv} が次の 2 条件を満たすとする。

  • (成立)Init⊆Inv\mathrm{Init} \subseteq \mathrm{Inv}。
  • (保存)すべての m∈Opm \in \mathrm{Op}、r∈Invr \in \mathrm{Inv}、x∈Xmx \in X_m について、(r,x)∈prem(r, x) \in \mathrm{pre}_m かつ opm(r,x)=(r′,y)\mathrm{op}_m(r, x) = (r', y) ならば r′∈Invr' \in \mathrm{Inv}。

このとき、表現を漏らさない任意の実行 (r0,e0),…,(rN,eN)(r_0, e_0), \ldots, (r_N, e_N) について、すべての ii で ri∈Invr_i \in \mathrm{Inv} である。

本文で読む(証明と前後の説明)→

閉包の状態

✓ 公理まで証明済み

証明が使う定理を 前提 としてたどると、Rikai の中の証明だけで定義・公理(物理では基本仮定)までつながっています(前提の定理類 2 件、定義なども含めて 3 件)。

印の意味: ✓公理まで証明済み ・ △証明あり(閉包未完)・ ※主張のみ。テーマごとの集計は 閉包の状況。

前提をたどる 証明が使う定理・定義(直接 1 件)

▸ を開くと、その項目の証明が使う前提が出ます。深い先は各項目のページでたどれます。

これを使っている定理 証明で参照している 1 件

関連するノック 2 問