| buf0 = buf, buf ≠ mkbuf(0), is-aligned(# buf, 2 * NODE_HEADER_SIZE) ⊦ ⟪persistence_encode_padding_node#(; buf; err)⟫ ((err = ESUCCESS ∨ ⌊err⌋ ) ∧ # buf = # buf0 ∧ (err = ESUCCESS → abs-padding(buf))) |
buf0 = buf, is-aligned(# buf, 2 * NODE_HEADER_SIZE) ⊦ ⟪let m = # buf - 2 * NODE_HEADER_SIZE in {encode_header#(nodeheader(m, true), 0; buf; err); buf := copy(validtrailer, 0, buf, # buf - NODE_HEADER_SIZE, NODE_HEADER_SIZE)}⟫ ((err = ESUCCESS ∨ ⌊err⌋ ) ∧ # buf = # buf0 ∧ (err = ESUCCESS → abs-padding(buf))), buf = mkbuf(0)
Used simplifier rules: encode-padding-node: ⊦ ;