| # vols[v0] = # avols[v0], avols[v0][m0].data = apebs[vols[v0][m0].pnum].data, apebs[n, apeb][vols[v0][m0].pnum] = mkpeb(aehdr, avhdr, buf, m2, boolvar), vols[v][m] = ⌜n⌝ , avols[v0][m0].mapped?, m0 < # avols[v0], m < # vols[v], valid-ebatbl(apebs, wlar, vols, n0), v0 ∈ avols, v0 ∈ vols, v ∈ vols, apebs[vols[v0][m0].pnum].fill ≤ avols[v0][m0].fill, avols[v0][m0] = erased → ¬ v0 × m0 ∈ q, v0 ≠ v ∨ m0 ≠ m ⊦ vols[v0][m0] = unmapped, avols[v0][m0].data = buf ∧ m2 ≤ avols[v0][m0].fill |
# vols[v0] = # avols[v0], vols[v][m] = ⌜n⌝ , apebs[n, apeb][vols[v0][m0].pnum] = mkpeb(aehdr, avhdr, buf, m2, boolvar), avols[v0][m0] = mapped(buf0, m1), buf0 = apebs[vols[v0][m0].pnum].data, avols[v0][m0].mapped?, m < # vols[v], m0 < # avols[v0], valid-ebatbl(apebs, wlar, vols, n0), v ∈ vols, v0 ∈ vols, v0 ∈ avols, apebs[vols[v0][m0].pnum].fill ≤ m1, avols[v0][m0] = erased → ¬ v0 × m0 ∈ q, v0 ≠ v ∨ m0 ≠ m ⊦ vols[v0][m0] = unmapped, buf0 = buf ∧ m2 ≤ m1
Used simplifier rules: ⊦ leb.mapped? → (buf = leb.data ∧ m = leb.fill ↔ leb = mapped(buf, m)); (elim) Used terms: avols[v0][m0], buf0, m1