| avols[v][m2].mapped?, m2 < # avols[v], # avols[v][m2].data < m1, # avols[v][m2].data < LEB_SIZE, ebm-cons(avols), is-aligned(m1, EB_PAGE_SIZE), is-aligned(n, EB_PAGE_SIZE), v ∈ avols, m1 + n ≤ LEB_SIZE, n + n2 ≤ # buf, avols[v][m2].fill ≤ m1, m1 ≤ LEB_SIZE, avols[v][m2].fill ≤ LEB_SIZE ⊦ n = 0 |
Used simplifier rules: ⊦ v ∈ avols ∧ m < # avols[v] ∧ avols[v][m] = mapped(buf, n) ∧ ebm-cons(avols) → # buf = LEB_SIZE; (s)% ⊦ m ≤ n → (n < m ↔ false); (s)%⊦ leb.mapped? → (buf = leb.data ∧ m = leb.fill ↔ leb = mapped(buf, m)); (elim) Used terms: avols[v][m2], buf0, m