| apebs[m0] = mkpeb(aehdr, avhdr, buf, m1, boolvar), m0 < # apebs, valid-eraseq(apebs, q0), valid-peb(v, m, apebs[n]), valid-peb(mkpeb(aehdr, avhdr, buf, m1, boolvar)), ∀ apebs, v, m, n, lref. valid-eraseq(apebs, q0) ∧ valid-peb(v, m, apebs[n]) ∧ eq-entry(n, lref) ∈ q0 → lref = v × m, eq-entry(n, lref) = eq-entry(m0, avhdr.vol × avhdr.leb) ∨ eq-entry(n, lref) ∈ q0 ⊦ lref = v × m |
apebs[m0] = mkpeb(aehdr, avhdr, buf, m1, boolvar), m0 < # apebs, valid-eraseq(apebs, q0), valid-peb(mkpeb(aehdr, avhdr, buf, m1, boolvar)), valid-peb(v, m, apebs[n]), ∀ apebs, v, m, n, lref. valid-eraseq(apebs, q0) ∧ valid-peb(v, m, apebs[n]) ∧ eq-entry(n, lref) ∈ q0 → lref = v × m, eq-entry(n, lref) = eq-entry(m0, avhdr.vol × avhdr.leb) ∨ eq-entry(n, lref) ∈ q0 ⊦ eq-entry(n, lref) = eq-entry(m0, avhdr.vol × avhdr.leb), lref = v × m
Used simplifier rules: ⊦ eq-entry(m, lref) = eq-entry(m0, lref0) ↔ m = m0 ∧ lref = lref0; (ws)%lf-02: ⊦ m < n ∧ m = n0 → n0 < n; (forward) from specification nat-basic%⊦ valid-peb(v, m, mkpeb(aehdr, avhdr, buf, m0, boolvar)) → avhdr.vol = v; (s)%⊦ valid-peb(v, m, mkpeb(aehdr, avhdr, buf, m0, boolvar)) → avhdr.leb = m; (s) Used formulas: eq-entry(n, lref) = eq-entry(m0, avhdr.vol × avhdr.leb)