| n0 ∈ q ↔ n0 < # wlar ∧ stat1 = erasing, wlar[n] = wl-entry(m0, stat), wlar[n0] = wl-entry(m, stat0), wlar[n, wl-entry(m1, used)][n0] = wl-entry(m2, stat1), ∀ n0. n0 ∈ q ↔ n0 < # wlar ∧ wlar[n, wl-entry(m1, used)][n0].status = erasing ⊦ n0 ∈ q ↔ n0 < # wlar ∧ stat0 = erasing, stat = 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 ≠ erasing; (s) Used formulas: n0 = n