| n ∈ free-ecs(wlar, m) ↔ (∃ m1. m1 < m ∧ wlar[m1].status = free ∧ wlar[m1].ec = n), wlar[m] = wl-entry(m2, stat), m < # wlar, n ∈ (stat = free ⊃ free-ecs(wlar, m) ++ m2;free-ecs(wlar, m)) ⊦ # (stat = free ⊃ free-ecs(wlar, m) ++ m2;free-ecs(wlar, m)) = 0, (stat = free ⊃ free-ecs(wlar, m) ++ m2;free-ecs(wlar, m)) = ∅, ∃ m0. ¬ m < m0 ∧ wlar[m0].status = free ∧ wlar[m0].ec = n |
n ∈ free-ecs(wlar, m) ↔ (∃ m1. m1 < m ∧ wlar[m1].status = free ∧ wlar[m1].ec = n), wlar[m] = wl-entry(m2, stat), stat = free, m < # wlar, n ∈ (stat = free ⊃ free-ecs(wlar, m) ++ m2;free-ecs(wlar, m)) ⊦ # (stat = free ⊃ free-ecs(wlar, m) ++ m2;free-ecs(wlar, m)) = 0, free-ecs(wlar, m) ++ m2 = ∅, ∃ m0. ¬ m < m0 ∧ wlar[m0].status = free ∧ wlar[m0].ec = n
n ∈ free-ecs(wlar, m) ↔ (∃ m1. m1 < m ∧ wlar[m1].status = free ∧ wlar[m1].ec = n), wlar[m] = wl-entry(m2, stat), m < # wlar, n ∈ (stat = free ⊃ free-ecs(wlar, m) ++ m2;free-ecs(wlar, m)) ⊦ # (stat = free ⊃ free-ecs(wlar, m) ++ m2;free-ecs(wlar, m)) = 0, free-ecs(wlar, m) = ∅, stat = free, ∃ m0. ¬ m < m0 ∧ wlar[m0].status = free ∧ wlar[m0].ec = n