| # buf0 = # buf1, subarray(buf0, 0, n * ENCODED_LPROPS_SIZE) = subarray(buf1, 0, n * ENCODED_LPROPS_SIZE), n < # lpt, is-encoded(lpt, buf0, n), is-encoded(lpt[n], subarray(buf1, n * ENCODED_LPROPS_SIZE, ENCODED_LPROPS_SIZE)), n * ENCODED_LPROPS_SIZE + ENCODED_LPROPS_SIZE ≤ # buf0 ⊦ is-encoded(lpt, buf1, n + 1) |
# buf0 = # buf1, subarray(buf0, 0, n * ENCODED_LPROPS_SIZE) = subarray(buf1, 0, n * ENCODED_LPROPS_SIZE), n < # lpt, is-encoded(lpt, buf0, n), is-encoded(lpt[n], subarray(buf1, n * ENCODED_LPROPS_SIZE, ENCODED_LPROPS_SIZE)), n * ENCODED_LPROPS_SIZE + ENCODED_LPROPS_SIZE ≤ # buf1 ⊦ is-encoded(lpt, buf1, n + 1)
Used simplifier rules: ⊦ m < n → n ≠ 0; (s)% ⊦ # subarray(buf, m, n) = n; (s)%is-encoded-size: ⊦ is-encoded(lp, buf) → # buf = ENCODED_LPROPS_SIZE; (forward) from specification encoding-fixed-size[encoding-lprops]%f: ⊦ m < n → n ≠ 0; (forward) from specification nat-basic