| LEB_SIZE = n0 + n1, avols[default-volid][m2] = mapped(buf0, n1), m2 < # avols[default-volid], ebm-cons(avols), ebm-vol-inv(abs(avols[default-volid])), default-volid ∈ avols, m1 + n2 ≤ n1 + n0, n3 + n2 ≤ # buf2, m1 + n2 ≤ LEB_SIZE, n1 ≤ LEB_SIZE ⊦ ∃ buf, n. mapped(buf0, n1) = mapped(buf, n) |
LEB_SIZE = n0 + n1, avols[default-volid][m2] = mapped(buf0, n1), m2 < # avols[default-volid], ebm-cons(avols), ebm-vol-inv(abs(avols[default-volid])), default-volid ∈ avols, n1 ≤ LEB_SIZE, n3 + n2 ≤ # buf2, m1 + n2 ≤ LEB_SIZE ⊦ ∃ buf, n. mapped(buf0, n1) = mapped(buf, n)
Used simplifier rules: c: ⊦ m + n = n + m; from specification nat-basic