| buf[n0 + n] = empty, n0 + n < # buf, n1 < n, ¬ n < n1 → subarray(buf, n0, n + 1)[n1] = mkempbuf(n + 1)[n1] ⊦ buf[n0 + n1] = empty, datasize(buf, n0 + n) = datasize(buf, n0) |
buf[n0 + n] = empty, subarray(buf, n0, n + 1)[n1] = mkempbuf(n + 1)[n1], n1 < n, n0 + n < # buf ⊦ buf[n0 + n1] = empty, datasize(buf, n0 + n) = datasize(buf, n0)
Used simplifier rules: ⊦ m < n → ¬ n < m; (s)