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