| n ∈ q ↔ n < # wlar ∧ stat1 = erasing, wlar[m] = wl-entry(m0, stat), wlar[n] = wl-entry(m2, stat0), wlar[m, wl-entry(m1, stat)][n] = wl-entry(m3, stat1), ∀ n. n ∈ q ↔ n < # wlar ∧ wlar[m, wl-entry(m1, stat)][n].status = erasing ⊦ n ∈ q ↔ n < # wlar ∧ stat0 = erasing |
Used simplifier rules: ⊦ m ≠ n → wlar[n, wle][m] = wlar[m]; (s)% ⊦ wl-entry(m, stat) = wl-entry(m0, stat0) ↔ m = m0 ∧ stat = stat0; (ws)% ⊦ m < n ↔ ¬ n ≤ m; (ss)% ⊦ m ≤ n → (n < m ↔ false); (s)%m < # wlar ⊦ wlar[m, wle][m] = wle; (s) Used formulas: n = m