情報科学 › ソフトウェア設計とテスト › 性質ベーステスト

ddmin と 1-最小性

定義 5.4(「性質ベーステスト」§5)

cc を相異なる要素の列、fails\mathrm{fails} を cc の部分列に対して「テストが失敗する」かどうかを答える述語とし、fails(c)\mathrm{fails}(c) は真、空の列については偽とする。失敗する部分列 c′c' が 1-最小であるとは、c′c' からどの 1 要素を取り除いた列も失敗しないことをいう。

ddmin は、現在の列 cc(最初は入力全体)と粒度 gg(最初は 22)をもち、cc の長さが 22 以上のあいだ次を繰り返す。cc を、長さがほぼ等しい gg 個の連続した塊 Δ1,…,Δg\Delta_1, \ldots, \Delta_g に分ける(Δi\Delta_i は cc の ⌊∣c∣(i−1)/g⌋\lfloor |c|(i-1)/g \rfloor 番目から ⌊∣c∣i/g⌋\lfloor |c| i/g \rfloor 番目の手前まで)。

  • (a) ある Δi\Delta_i が失敗するなら、最初のそれを新しい cc とし、g=2g = 2 とする。
  • (b) そうでなく、ある補集合 c∖Δic \setminus \Delta_i が失敗するなら、最初のそれを新しい cc とし、gg を max⁡(g−1,2)\max(g - 1, 2) にする。
  • (c) そうでなく、g<∣c∣g \lt |c| なら、gg を min⁡(∣c∣,2g)\min(|c|, 2g) にする。
  • (d) そうでなければ(g≥∣c∣g \ge |c|)、繰り返しをやめる。

最後の cc を返す。

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

閉包の状態

定義

定義は閉包の起点です(証明を要しません)。

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

これを使っている定理

証明で明示的に参照している定理は、まだありません。

関連するノック 1 問