| awbuf-inv(fill(mkavolume(m3), unmapped), nobuffer), freelist-cons(fill(mklparray(m3), mklp(0, 0, LP_FREE, 0)), freelist), synced(fill(mkavolume(m3), unmapped)) ⊦ bin-heap-inv(bin-heap(mkkeyarray(1), 0), fill(mklparray(m3), mklp(0, 0, LP_FREE, 0))) ∧ lpt-leb-size(fill(mklparray(m3), mklp(0, 0, LP_FREE, 0))) |
⊦ bin-heap-inv(bh, lpt) ↔ bh.size ≤ # bh.ar ∧ no-dups-idx(bh.ar, bh.size) ∧ valid-idx(bh.ar, lpt, bh.size) ∧ 2exp-size(# bh.ar) ∧ heap-order(bh.ar, bh.size)
awbuf-inv(fill(mkavolume(m3), unmapped), nobuffer), freelist-cons(fill(mklparray(m3), mklp(0, 0, LP_FREE, 0)), freelist), synced(fill(mkavolume(m3), unmapped)) ⊦ ( bin-heap(mkkeyarray(1), 0).size ≤ # bin-heap(mkkeyarray(1), 0).ar ∧ no-dups-idx(bin-heap(mkkeyarray(1), 0).ar, bin-heap(mkkeyarray(1), 0).size) ∧ valid-idx(bin-heap(mkkeyarray(1), 0).ar, fill(mklparray(m3), mklp(0, 0, LP_FREE, 0)), bin-heap(mkkeyarray(1), 0).size) ∧ 2exp-size(# bin-heap(mkkeyarray(1), 0).ar) ∧ heap-order(bin-heap(mkkeyarray(1), 0).ar, bin-heap(mkkeyarray(1), 0).size)) ∧ lpt-leb-size(fill(mklparray(m3), mklp(0, 0, LP_FREE, 0)))
Used terms: fill(mklparray(m3), mklp(0, 0, LP_FREE, 0)), bin-heap(mkkeyarray(1), 0)