| key-index(natkey, n) ∈ keyset(kar, m) ↔ key-index(natkey, n) ∈ gc-heap(lpt, nx, # lpt), lpt[n] = mklp(m4, m5, lpf, m6), kar[m9] = key-index(natkey, n), 2exp-size(# kar), n < # lpt, m9 < # kar, m9 < m, heap-order(kar, m), no-dups-idx(kar, m), m ≤ # kar ⊦ lpf = LP_GROUP_NODES, m6 = m9 |
⊦ 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)
key-index(natkey, n) ∈ keyset(kar, m) ↔ n < # lpt ∧ ¬ n ∈ nx ∧ lpt[n].ref-size = natkey ∧ lpt[n].flags = LP_GROUP_NODES, kar[m9] = key-index(natkey, n), lpt[n] = mklp(m4, m5, lpf, m6), 2exp-size(# kar), m9 < m, m9 < # kar, n < # lpt, heap-order(kar, m), no-dups-idx(kar, m), m ≤ # kar, # lpt ≤ # lpt ⊦ lpf = LP_GROUP_NODES, m6 = m9
Used simplifier rules: ⊦ m ≤ n ↔ ¬ n < m; (ss)% ⊦ ¬ n < n; (s) Used terms: # lpt, nx, lpt, n, natkey