| freelist0 = [], n = n0, n1 = 0, n < # lpt, freelist-cons(subarray(lpt, 0, n), freelist), n ≤ # lpt ⊦ ⟪if lpt[n].flags = LP_FREE then freelist := freelist + n; n := n + 1⟫ ((n ≤ # lpt ∧ freelist-cons(subarray(lpt, 0, n), freelist)) ∧ # lpt - n < # lpt - n0) |
lpt[n].flags = LP_FREE, freelist0 = [], n = n0, n1 = 0, n < # lpt, freelist-cons(subarray(lpt, 0, n), freelist), n ≤ # lpt ⊦ ⟪freelist := freelist + n; n := n + 1⟫ ((n ≤ # lpt ∧ freelist-cons(subarray(lpt, 0, n), freelist)) ∧ # lpt - n < # lpt - n0)
freelist0 = [], n = n0, n1 = 0, n < # lpt, freelist-cons(subarray(lpt, 0, n), freelist), n ≤ # lpt ⊦ ⟪skip; n := n + 1⟫ ((n ≤ # lpt ∧ freelist-cons(subarray(lpt, 0, n), freelist)) ∧ # lpt - n < # lpt - n0), lpt[n].flags = LP_FREE
freelist0 = [], n = n0, n1 = 0, n < # lpt, freelist-cons(subarray(lpt, 0, n), freelist), n ≤ # lpt ⊦ n < # lpt