| # lpt1 = n1 + m2, lpt1[m2] = mklp(m, m0, LP_GROUP_NODES, m1), gc-heap(lpt2, log, m2) = keyset(bin-heap(kar, m3)), bin-heap-inv(bin-heap(kar, m3), lpt1), id-idx(lpt2, lpt1), key-index(natkey, m2) ∈ gc-heap(lpt2, log, m2) ⊦ # gc-heap(lpt2, log, m2) = 0, gc-heap(lpt2, log, m2) = ∅, m3 = 0, n1 = 0, m2 ∈ log |
⊦ n ≤ # lpt → (key-index(n0, n1) ∈ gc-heap(lpt, nx, n) ↔ n1 < n ∧ ¬ n1 ∈ nx ∧ lpt[n1].ref-size = n0 ∧ lpt[n1].flags = LP_GROUP_NODES)
# lpt1 = n1 + m2, lpt1[m2] = mklp(m, m0, LP_GROUP_NODES, m1), gc-heap(lpt2, log, m2) = keyset(bin-heap(kar, m3)), bin-heap-inv(bin-heap(kar, m3), lpt1), id-idx(lpt2, lpt1), key-index(natkey, m2) ∈ gc-heap(lpt2, log, m2) ⊦ # gc-heap(lpt2, log, m2) = 0, gc-heap(lpt2, log, m2) = ∅, m3 = 0, n1 = 0, m2 ∈ log, m2 ≤ # lpt2
Used simplifier rules: ⊦ ¬ n < n; (s) Used terms: m2, log, lpt2, m2, natkey