| n3 < # lpt ∧ lpt[n3].flags = LP_FREE ↔ n3 ∈ freelist, lpt[n3] = mklp(m, m2, lpf0, m4), lpt[n] = mklp(n0, n1, lpf, n2), n < # lpt, ∀ n. n < # lpt ∧ lpt[n].flags = LP_FREE ↔ n ∈ freelist ⊦ lpf = LP_FREE, n3 = n, dups(freelist), ¬ n ∈ freelist ∧ (n3 < # lpt ∧ lpf0 = LP_FREE ↔ n3 ∈ freelist) |
n3 < # lpt ∧ lpf0 = LP_FREE ↔ n3 ∈ freelist, lpt[n3] = mklp(m, m2, lpf0, m4), lpt[n] = mklp(n0, n1, lpf, n2), n < # lpt, n ∈ freelist, ∀ n. n < # lpt ∧ lpt[n].flags = LP_FREE ↔ n ∈ freelist ⊦ lpf = LP_FREE, n3 = n, dups(freelist)
Used simplifier rules: ⊦ mklp(n2, n3, lpf, m).flags = lpf; (s)