| m < # apebs, ∀ v, m0. valid-sqns(v, m0, apebs, m) ≠ ∅ → valid-sqns(v, m0, apebs, m).max < n ⊦ (∀ v, m0. valid-sqns(v, m0, apebs, m) ∪ (valid-peb(v, m0, apebs[m]) ⊃ {apebs[m].vidhdr.sqn} ;∅) ≠ ∅ → (valid-sqns(v, m0, apebs, m) ∪ (valid-peb(v, m0, apebs[m]) ⊃ {apebs[m].vidhdr.sqn} ;∅)).max < n) ↔ ¬ valid-peb(apebs[m]) ∨ apebs[m].vidhdr.sqn < n |
apebs[m] = mkpeb(aehdr, avhdr, buf, m1, boolvar), m < # apebs, ∀ v, m0. valid-sqns(v, m0, apebs, m) ≠ ∅ → valid-sqns(v, m0, apebs, m).max < n ⊦ (∀ v, m0. valid-sqns(v, m0, apebs, m) ∪ (valid-peb(v, m0, apebs[m]) ⊃ {avhdr.sqn} ;∅) ≠ ∅ → (valid-sqns(v, m0, apebs, m) ∪ (valid-peb(v, m0, apebs[m]) ⊃ {avhdr.sqn} ;∅)).max < n) ↔ ¬ valid-peb(apebs[m]) ∨ avhdr.sqn < n
Used simplifier rules: ⊦ ( ((aehdr = apeb.echdr ∧ avhdr = apeb.vidhdr) ∧ buf = apeb.data) ∧ m = apeb.fill) ∧ (boolvar ↔ apeb.bad) ↔ apeb = mkpeb(aehdr, avhdr, buf, m, boolvar); (elim) Used terms: apebs[m], aehdr, avhdr, buf, m1, boolvar