情報科学 › ソフトウェア設計とテスト › 継続的インテグレーション

マージキューは主ブランチの不変条件を保つ

定理 3.3(「継続的インテグレーション」§3) ・ ✓公理まで証明済み

検査 χ\chi は決定的で、最初の先頭 h0h_0 は χ(h0)=合格\chi(h_0) = \text{合格} を満たし、先頭はマージキューの規則(定義 3.2)によってのみ更新されるとする。

(a) 先頭の列 h0,h1,h2,…h_0, h_1, h_2, \ldots のすべてについて χ(hk)=合格\chi(h_k) = \text{合格} である。

(b) (楽観的な並列化)先頭が hh のとき、待っている変更 δ1,…,δk\delta_1, \ldots, \delta_k に対して s0=hs_0 = h、sj=δj(sj−1)s_j = \delta_j(s_{j-1}) と順に定め(衝突が出たらそこで止める)、定まった s1,s2,…s_1, s_2, \ldots の検査を同時に実行する。sjs_j が衝突であるか不合格である最小の jj を j∗j^{*} とし(なければ j∗=k+1j^{*} = k + 1)、先頭を sj∗−1s_{j^{*}-1} に進め、δj∗\delta_{j^{*}} を却下し、δj∗+1,…,δk\delta_{j^{*}+1}, \ldots, \delta_k を待ち行列に戻して同じことを繰り返す。この方式の先頭の列と却下される変更の集合は、変更を 1 つずつ処理した場合と同じである。特に不変条件は保たれる。

(c) (b) の方式で kk 個の変更を処理し終えるまでに実行する検査の回数は、却下が rr 個のとき (r+1)k(r + 1)k 以下である。却下が 1 つ出るたびに捨てられる検査の結果は、その変更より後ろに並んでいた変更の個数以下である。

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

閉包の状態

✓ 公理まで証明済み

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

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

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

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

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

関連するノック 1 問