| avol[n, unmapped][n0] = mapped(buf), n0 < # avol, ∀ n. n < # avol ∧ avol[n].mapped? → is-aligned(# avol[n].data, EB_PAGE_SIZE) ⊦ is-aligned(# avol[n0].data, EB_PAGE_SIZE) |
avol[n, unmapped][n0] = mapped(buf), n0 < # avol, ∀ n. n < # avol ∧ avol[n].mapped? → is-aligned(# avol[n].data, EB_PAGE_SIZE) ⊦ n0 = n, is-aligned(# avol[n0].data, EB_PAGE_SIZE)
Used simplifier rules: ⊦ m < # avol → avol[m, aleb][m] = aleb; (s)% ⊦ unmapped ≠ mapped(buf); (s) Used formulas: n0 = n