| lpt[n] = mklp(m0, m1, lpf0, m2), n < # lpt ⊦ gc-heap(lpt[n, mklp(n0, n1, lpf1, n2)], nx) = gc-heap(lpt, nx), lpf0 = LP_GROUP_NODES, lpf1 = LP_GROUP_NODES |
lpt[n] = mklp(m0, m1, lpf0, m2), n < # lpt ⊦ gc-heap(lpt[n, mklp(n0, n1, lpf1, n2)], nx, # lpt) = gc-heap(lpt, nx, # lpt), lpf0 = LP_GROUP_NODES, lpf1 = LP_GROUP_NODES
Used simplifier rules: gc-heap: ⊦ gc-heap(lpt, nx) = gc-heap(lpt, nx, # lpt);% ⊦ m < n → n ≠ 0; (s)%f: ⊦ m < n → n ≠ 0; (forward) from specification nat-basic% ⊦ # lpt[n, lp] = # lpt; (s)