| lpt[n0] = mklp(m, m0, lpf, m1), n0 < # lpt, n0 ≤ # lpt → gc-heap(lpt.mapIndices(ns, λ lp. lp.size:= LEB_SIZE), nx, n0) = gc-heap(lpt, nx, n0) ⊦ gc-heap(lpt.mapIndices(ns, λ lp. lp.size:= LEB_SIZE), nx, n0 + 1) = gc-heap(lpt, nx, n0) ∪ (¬ n0 ∈ nx ∧ lpf = LP_GROUP_NODES ⊃ ∅ ++ key-index(m, n0);∅) |
lpt[n0] = mklp(m, m0, lpf, m1), gc-heap(lpt.mapIndices(ns, λ lp. lp.size:= LEB_SIZE), nx, n0) = gc-heap(lpt, nx, n0), n0 < # lpt ⊦ gc-heap(lpt.mapIndices(ns, λ lp. lp.size:= LEB_SIZE), nx, n0 + 1) = gc-heap(lpt, nx, n0) ∪ (¬ n0 ∈ nx ∧ lpf = LP_GROUP_NODES ⊃ ∅ ++ key-index(m, n0);∅)
Used simplifier rules: ⊦ m < n → m ≤ n; (s)