| wlar[n] = wl-entry(m, stat), ∀ n0. n0 ∈ q0 + eq-entry(n, lref) ' + q1 ↔ n0 < # wlar ∧ wlar[n0].status = erasing ⊦ stat = erasing |
⊦ n ∈ q ∧ valid-eraseq(wlar, q) ∧ wlar[n] = wl-entry(m, stat) → wlar[n] = wl-entry(m, erasing)
Used simplifier rules: valid-eraseqw: ⊦ valid-eraseq(wlar, q) ↔ (∀ n. n ∈ q ↔ n < # wlar ∧ wlar[n].status = erasing);% ⊦ wl-entry(m, stat) = wl-entry(m0, stat0) ↔ m = m0 ∧ stat = stat0; (ws)% ⊦ n ∈ q0 + q1 ↔ n ∈ q0 ∨ n ∈ q1; (ss)%a: ⊦ (q + q0) + q1 = q + q0 + q1; from specification list[erasequeue-base]% ⊦ n ∈ eq-entry(n0, lref) ' + q ↔ n ∈ q ∨ n = n0; (ss) Used terms: stat, m, q0 + eq-entry(n, lref) ' + q1, n, wlar