| buf[m1] = empty, m1 < m, m1 < # buf, m ≤ # buf, ∀ m, buf. m1 ≤ m ∧ m ≤ # buf ∧ m1 ≤ # buf → datasize(subarray(buf, 0, m), m1) = datasize(buf, m1) ⊦ datasize(subarray(buf, 0, m), m1) = datasize(buf, m1) |
buf[m1] = empty, m1 < # buf, m1 < m, m ≤ # buf, ∀ m, buf. m1 ≤ m ∧ m ≤ # buf ∧ m1 ≤ # buf → datasize(subarray(buf, 0, m), m1) = datasize(buf, m1) ⊦ datasize(subarray(buf, 0, m), m1) = datasize(buf, m1)