| buf1 = mkempbuf(# buf1), n < m0, n < # buf1, m0 ≤ # buf1 ⊦ # buf0 + datasize(buf1, m0) = datasize(buf0, # buf0), buf1[n] = empty |
⊦ buf = buf0 ↔ # buf = # buf0 ∧ (∀ n. n < # buf → buf[n] = buf0[n])
# buf1 = # mkempbuf(# buf1), n < # buf1, n < m0, m0 ≤ # buf1, ∀ n. n < # buf1 → buf1[n] = mkempbuf(# buf1)[n] ⊦ # buf0 + datasize(buf1, m0) = datasize(buf0, # buf0), buf1[n] = empty
Used terms: mkempbuf(# buf1), buf1