| # buf < NODE_HEADER_SIZE ⊦ # buf = 0 ∧ lax = [] ∨ (∃ buf0, buf1. buf = buf0 + buf1 ∧ abs-padding(buf0) ∧ abs-nodes(buf1, m + # buf0, [], lax, boolvar)) ∨ boolvar ∧ abs-failed(buf) ∧ lax = [] ↔ lax = [] ∧ buf = mkbuf(0) |
# buf < NODE_HEADER_SIZE, buf = mkbuf(0) ∧ lax = [] ∨ buf = buf0 + buf1 ∧ abs-padding(buf0) ∧ abs-nodes(buf1, m + # buf0, [], lax, boolvar) ⊦ lax = [] ∧ buf = mkbuf(0)
Used simplifier rules: ⊦ # mkbuf(n) = n; (s)% ⊦ # buf < NODE_HEADER_SIZE → ¬ abs-failed(buf); (s)% ⊦ # buf = 0 ↔ buf = mkbuf(0); (s)