| wlar[m0].status = used, ¬ boolvar ↔ used-ecs(wlar, m0) = ∅, wlar[vtblpnum] = wl-entry(m, stat), m0 < # wlar, boolvar → vtblpnum < m0 ∧ stat = used ∧ m = used-ecs(wlar, m0).min, boolvar → vtblpnum < # wlar, ¬ boolvar ∨ wlar[m0].ec < m ⊦ wlar[m0].ec = used-ecs(wlar, m0 + 1).min ∧ used-ecs(wlar, m0 + 1) ≠ ∅ |
¬ boolvar ↔ used-ecs(wlar, m0) = ∅, wlar[vtblpnum] = wl-entry(m, stat), wlar[m0] = wl-entry(m1, stat0), stat0 = used, m0 < # wlar, boolvar → vtblpnum < # wlar, boolvar → vtblpnum < m0 ∧ stat = used ∧ m = used-ecs(wlar, m0).min, ¬ boolvar ∨ m1 < m ⊦ m1 = used-ecs(wlar, m0 + 1).min ∧ used-ecs(wlar, m0 + 1) ≠ ∅
Used simplifier rules: ⊦ m = wle.ec ∧ stat = wle.status ↔ wle = wl-entry(m, stat); (elim) Used terms: wlar[m0], m1, stat0