| is-encoded-nonempty(a, subarray(buf, 0, ENCODED_ELEM_SIZE)), ENCODED_ELEM_SIZE ≤ # buf, ENCODED_ELEM_SIZE ≤ EB_PAGE_SIZE, EB_PAGE_SIZE ≤ # buf ⊦ is-encoded-pagesize(a, subarray(buf, 0, EB_PAGE_SIZE)) |
⊦ is-encoded-pagesize(a, buf) ↔ # buf = EB_PAGE_SIZE ∧ ENCODED_ELEM_SIZE ≤ EB_PAGE_SIZE ∧ is-encoded-nonempty(a, subarray(buf, 0, ENCODED_ELEM_SIZE)) ∧ ¬ isempty(buf)
is-encoded-nonempty(a, subarray(buf, 0, ENCODED_ELEM_SIZE)), EB_PAGE_SIZE ≤ # buf, ENCODED_ELEM_SIZE ≤ EB_PAGE_SIZE, ENCODED_ELEM_SIZE ≤ # buf ⊦ # subarray(buf, 0, EB_PAGE_SIZE) = EB_PAGE_SIZE ∧ ENCODED_ELEM_SIZE ≤ EB_PAGE_SIZE ∧ is-encoded-nonempty(a, subarray(subarray(buf, 0, EB_PAGE_SIZE), 0, ENCODED_ELEM_SIZE)) ∧ ¬ isempty(subarray(buf, 0, EB_PAGE_SIZE))
Used terms: subarray(buf, 0, EB_PAGE_SIZE), a