| # buf = NODE_HEADER_SIZE, # buf3 = NODE_HEADER_SIZE, (buf + buf2 + validtrailer) + buf1 = buf3 + buf4, is-aligned(# buf2, 2 * NODE_HEADER_SIZE), is-aligned(# buf1, NODE_HEADER_SIZE), is-encoded(nodeheader(# buf2, true), buf), is-garbage-header(buf3) ∨ is-encoded(ndhd, buf3) ∧ # buf4 ≤ align↑(ndhd.size, 2 * NODE_HEADER_SIZE) ⊦ |
# buf3 = NODE_HEADER_SIZE, # buf = NODE_HEADER_SIZE, (buf + buf2 + validtrailer) + buf1 = buf3 + buf4, ndhd = nodeheader(m, boolvar), is-aligned(# buf1, NODE_HEADER_SIZE), is-aligned(# buf2, 2 * NODE_HEADER_SIZE), is-encoded(nodeheader(# buf2, true), buf), is-garbage-header(buf3) ∨ is-encoded(ndhd, buf3) ∧ # buf4 ≤ align↑(m, 2 * NODE_HEADER_SIZE) ⊦
Used simplifier rules: ⊦ m = ndhd.size ∧ (boolvar ↔ ndhd.ispadding) ↔ ndhd = nodeheader(m, boolvar); (elim) Used terms: ndhd, m, boolvar