| # buf1 = a.alignedsize + 2 * NODE_HEADER_SIZE, abs-node(buf1, a), abs-nodes(buf0, 0, x, lax, false), abs-nodes(subarray(buf0 + buf1, 0, align↓(# buf0 + # buf1, EB_PAGE_SIZE)), 0, x + a ', lax + @(# buf0, # buf1) ', boolvar) ⊦ is-aligned(# buf0 + # buf1, EB_PAGE_SIZE) |
⊦ abs-nodes(buf0, m, x, lax, false) ∧ abs-node(buf1, a) ∧ is-aligned(n, NODE_HEADER_SIZE) ∧ is-aligned(m, NODE_HEADER_SIZE) ∧ n ≤ # buf0 + # buf1 ∧ abs-nodes(subarray(buf0 + buf1, 0, n), m, x + a ', lax + @(m + # buf0, a.flashsize) ', boolvar) → n = # buf0 + # buf1
# buf1 = a.alignedsize + 2 * NODE_HEADER_SIZE, abs-node(buf1, a), abs-nodes(subarray(buf0 + buf1, 0, align↓(# buf0 + # buf1, EB_PAGE_SIZE)), 0, x + a ', lax + @(# buf0, # buf1) ', boolvar), abs-nodes(buf0, 0, x, lax, false), abs-nodes(buf0, 0, x, lax, false) ∧ abs-node(buf1, a) ∧ is-aligned(align↓(# buf0 + # buf1, EB_PAGE_SIZE), NODE_HEADER_SIZE) ∧ is-aligned(0, NODE_HEADER_SIZE) ∧ align↓(# buf0 + # buf1, EB_PAGE_SIZE) ≤ # buf0 + # buf1 ∧ abs-nodes(subarray(buf0 + buf1, 0, align↓(# buf0 + # buf1, EB_PAGE_SIZE)), 0, x + a ', lax + @(0 + # buf0, a.flashsize) ', boolvar) → align↓(# buf0 + # buf1, EB_PAGE_SIZE) = # buf0 + # buf1 ⊦ is-aligned(# buf0 + # buf1, EB_PAGE_SIZE)
Used terms: buf0, 0, x, lax, buf1, a, align↓(# buf0 + # buf1, EB_PAGE_SIZE), boolvar