| apebs[m] = mkpeb(aehdr, avhdr, buf, m0, boolvar), m < # apebs, lref ≠ none → valid-peb(lref.vol, lref.leb, mkpeb(aehdr, avhdr, buf, m0, boolvar)) ∧ avhdr.sqn ≠ valid-sqns(lref.vol, lref.leb, apebs).max, lref = none → ¬ valid-peb(mkpeb(aehdr, avhdr, buf, m0, boolvar)) ⊦ (valid-peb(v, m1, mkpeb(aehdr, avhdr, buf, m0, boolvar)) ↔ lref = v × m1) ∧ (lref = v × m1 → avhdr.sqn ≠ valid-sqns(v, m1, apebs).max) |
apebs[m] = mkpeb(aehdr, avhdr, buf, m0, boolvar), m < # apebs, lref = none → ¬ valid-peb(mkpeb(aehdr, avhdr, buf, m0, boolvar)), lref ≠ none → valid-peb(lref.vol, lref.leb, mkpeb(aehdr, avhdr, buf, m0, boolvar)) ∧ avhdr.sqn ≠ valid-sqns(lref.vol, lref.leb, apebs).max ⊦ valid-peb(v, m1, mkpeb(aehdr, avhdr, buf, m0, boolvar)) ↔ lref = v × m1
Used simplifier rules: ⊦ none ≠ v × m; (s)% ⊦ (v × m).vol = v; (s)% ⊦ (v × m).leb = m; (s)