| freelist-cons(lpt, n ' + freelist) ⊦ n < # lpt ∧ lpt[n].flags = LP_FREE |
∀ n0. n0 < # lpt ∧ lpt[n0].flags = LP_FREE ↔ n0 = n ∨ n0 ∈ freelist ⊦ dups(freelist), n ∈ freelist, n < # lpt ∧ lpt[n].flags = LP_FREE
Used simplifier rules: freelist-cons: ⊦ freelist-cons(lpt, freelist) ↔ ¬ dups(freelist) ∧ (∀ n. n < # lpt ∧ lpt[n].flags = LP_FREE ↔ n ∈ freelist);% ⊦ n ∈ n0 ' + nx ↔ n = n0 ∨ n ∈ nx; (s)%a: ⊦ (nx + nx0) + nx1 = nx + nx0 + nx1; from specification list[nat-list-set]% ⊦ dups(n ' + nx) ↔ n ∈ nx ∨ dups(nx); (s)