| ⊦ m ≤ # buf ∧ m = # buf0 ∧ m0 ≤ # buf1 ∧ buf = buf0 + buf1 ∧ buf1 = mkempbuf(# buf1) → datasize(buf, # buf0 + m0) = datasize(buf0, # buf0) |
buf1 = mkempbuf(# buf1), m0 ≤ # buf1 ⊦ datasize(buf0 + buf1, # buf0 + m0) = datasize(buf0, # buf0)
[Concretesimprules((Csimpnamedseq(nat-basic2,,c, ⊦ m + n = n + m) Csimpnamedseq(nat-basic2,,a, ⊦ (m + n0) + n1 = m + n0 + n1) Csimpnamedseq(nat,,lep, ⊦ m ≤ m + n) Csimpnamedseq(array-splice,buffer,append-a, ⊦ (buf + buf0) + buf1 = buf + buf0 + buf1) Csimpnamedseq(array-splice,buffer,append-len, ⊦ #(buf + buf0) = # buf + # buf0)))]