| # buf2 = nd.alignedsize + 2 * NODE_HEADER_SIZE, ladr = @(m, # buf2), lax1 = ladr + lax3, abs-node(buf2, nd), abs-nodes(buf, m + # buf2, x, lax2, boolvar0), abs-nodes(buf + buf1, m + # buf2, x2, lax3, boolvar1), ∀ buf3, buf1, m, x1, lax1, boolvar1, x0, lax0, boolvar0. # buf3 < #(buf2 + buf) → abs-nodes(buf3 + buf1, m, x1, lax1, boolvar1) ∧ abs-nodes(buf3, m, x0, lax0, boolvar0) → x0 ⊑ x1 ∧ lax0 ⊑ lax1 ⊦ lax1 = [], x ⊑ x2 ∧ @(m, # buf2) ' + lax2 ⊑ lax1 |
# buf2 = nd.alignedsize + 2 * NODE_HEADER_SIZE, abs-node(buf2, nd), abs-nodes(buf + buf1, m + # buf2, x2, lax3, boolvar1), abs-nodes(buf, m + # buf2, x, lax2, boolvar0), ∀ buf3, buf1, m, x1, lax1, boolvar1, x0, lax0, boolvar0. # buf3 < #(buf2 + buf) → abs-nodes(buf3 + buf1, m, x1, lax1, boolvar1) ∧ abs-nodes(buf3, m, x0, lax0, boolvar0) → x0 ⊑ x1 ∧ lax0 ⊑ lax1 ⊦ x ⊑ x2 ∧ lax2 ⊑ lax3
Used simplifier rules: ⊦ ladr ' + lax ⊑ ladr ' + lax0 ↔ lax ⊑ lax0; (s)%a: ⊦ (lax + lax0) + lax1 = lax + lax0 + lax1; from specification list[laddress-list]% ⊦ ladr ' + lax ≠ []; (s)% ⊦ ladr + lax = ladr ' + lax; (s)