| # apebs = # wlar, apebs[n] = mkpeb(aehdr1, avhdr1, buf1, m2, boolvar1), aehdr0.valid?, n < # wlar, m3 ≠ 0 → m3 ≤ datasize(buf0) ∧ m0 = checksum(buf0, m3), valid-sqns(v, m, apebs) ≠ ∅ → valid-sqns(v, m, apebs).max < m4, ∀ m0. m0 < # wlar ∧ m0 ≠ n ∧ wlar[m0].status = used → apebs[m0].vidhdr.vol ≠ v ∨ apebs[m0].vidhdr.leb ≠ m, ∀ n. n < # wlar → (wlar[n].status = erroneous ↔ apebs[n].bad) ∧ (wlar[n].status = free → apebs[n].vidhdr = empty) ∧ (wlar[n].status ≠ erroneous ∧ wlar[n].status ≠ erasing → apebs[n].echdr = aechdr(wlar[n].ec)) ∧ (wlar[n].status = used → (∃ v, m. valid-peb(v, m, apebs[n]) ∧ apebs[n].vidhdr.sqn = valid-sqns(v, m, apebs).max)) ⊦ aehdr0 = aechdr(aehdr0.ec) |
Used simplifier rules: ⊦ aehdr.valid? → (m = aehdr.ec ↔ aehdr = aechdr(m)); (elim) Used terms: aehdr0, m1