| wlar[m, wl-entry(m0, erasing)][n] = wl-entry(m1, stat), m < # wlar, ∀ n. n ∈ q ↔ n < m ∧ wlar[n].status = erasing ⊦ n ∈ q + eq-entry(m, lref) ' ↔ ¬ m < n ∧ stat = erasing, n = m |
wlar[n] = wl-entry(m1, stat), m < # wlar, ∀ n. n ∈ q ↔ n < m ∧ wlar[n].status = erasing ⊦ n ∈ q ↔ ¬ m < n ∧ stat = erasing, n = m
Used simplifier rules: a: ⊦ (q + q0) + q1 = q + q0 + q1; from specification list[erasequeue-base]% ⊦ n ≠ n0 → (n ∈ q + eq-entry(n0, lref) ' ↔ n ∈ q); (s)% ⊦ m ≠ n → wlar[n, wle][m] = wlar[m]; (s)