| # buf = n1 + n, ∀ n0. n0 < n → buf[n0] = empty ⊦ buf = mkempbuf(n) + subarray(buf, n, n1) |
⊦ buf = buf0 ↔ # buf = # buf0 ∧ (∀ n. n < # buf → buf[n] = buf0[n])
# buf = n1 + n, ∀ n0. n0 < n → buf[n0] = empty ⊦ # buf = #(mkempbuf(n) + subarray(buf, n, n1)) ∧ (∀ n0. n0 < # buf → buf[n0] = (mkempbuf(n) + subarray(buf, n, n1))[n0])
Used terms: mkempbuf(n) + subarray(buf, n, n1), buf