| 0 = datasize(buf, n), wlar[n1] = wl-entry(m1, stat0), wlar[n2] = wl-entry(m0, stat), apebs[n2] = mkpeb(aehdr, empty, buf0, m, false), lref = none, vtblpnum = n2, wlar0 = wlar, aehdr.valid?, vtblpnum < # wlar, n1 < # wlar, n2 < # wlar, n2 < # apebs, ⌊err0⌋ , v ∈ vols ∧ m2 < # vols[v] ∧ vols[v][m2] = ⌜n1⌝ ∨ v = VTBL_VOLID ∧ m2 = VTBL_LNUM ∧ vtblpnum1 = n1 ⊦ [q := q + eq-entry(vtblpnum, lref)] ( sum-of-differences(ecs(wlar[vtblpnum, wlar[vtblpnum].status:= erasing]).max, ecs(wlar[vtblpnum, wlar[vtblpnum].status:= erasing])) = sum-of-differences(ecs(wlar0).max, ecs(wlar0)) ∧ ecs(wlar[vtblpnum, wlar[vtblpnum].status:= erasing]) = ecs(wlar0)), n2 = n1, avhdr.valid? |
Used simplifier rules: ecs-write-same: m < # wlar ⊦ wlar[m] = wl-entry(m0, stat0) → ecs(wlar[m, wl-entry(m0, stat1)]) = ecs(wlar);% ⊦ wle.status:= stat = wl-entry(wle.ec, stat); (s)% ⊦ wl-entry(m, stat).ec = m; (s)% ⊦ m < n ↔ ¬ n ≤ m; (ss)% ⊦ m < n → (n ≤ m ↔ false); (s)