| abs-nodes(buf0, x0, lax0, false) ⊦ abs-nodes(buf0 + buf1, x0, lax0, weak) ↔ abs-nodes(buf1, # buf0, [], [], weak) |
Used simplifier rules: abs-nodes-prefix-elim: ⊦ abs-nodes(buf0, x0, lax0, false) → ( abs-nodes(buf0 + buf1, x1, lax1, boolvar1) ↔ (∃ x2, lax2. x1 = x0 + x2 ∧ lax1 = lax0 + lax2 ∧ abs-nodes(buf1, # buf0, x2, lax2, boolvar1)));%append-a: ⊦ (buf + buf0) + buf1 = buf + buf0 + buf1; from specification array-splice[buffer]%a: ⊦ (lax + lax0) + lax1 = lax + lax0 + lax1; from specification list[laddress-list]% ⊦ lax = lax + lax0 ↔ lax0 = []; (s)%a: ⊦ (x + y) + z = x + y + z; from specification list% ⊦ x = x + y ↔ y = []; (s)