| n0 ≤ n1, n0 ≤ # buf ⊦ datasize(buf, n0) = datasize(buf, n1) ↔ (∀ n. n0 ≤ n ∧ n < n1 → buf[n] = empty) |
0 ≤ # buf, 0 ≤ n1 ⊦ datasize(buf, 0) = datasize(buf, n1) ↔ (∀ n. 0 ≤ n ∧ n < n1 → buf[n] = empty)
n +1 ≤ # buf, n +1 ≤ n1, ∀ n1, buf. n ≤ n1 ∧ n ≤ # buf → (datasize(buf, n) = datasize(buf, n1) ↔ (∀ n2. n ≤ n2 ∧ n2 < n1 → buf[n2] = empty)) ⊦ datasize(buf, n +1) = datasize(buf, n1) ↔ (∀ n2. n +1 ≤ n2 ∧ n2 < n1 → buf[n2] = empty)
Used simplifier rules: nat freely generated by 0, +1;;