| apebs[m] = mkpeb(aehdr, avhdr, buf0, m0, boolvar0), m < # apebs, valid-peb(mkpeb(aehdr, avhdr, buf0, m0, boolvar0)), valid-peb(mkpeb(aehdr, avhdr, buf1, m1, boolvar1)) ⊦ valid-global-sqn(apebs[m, mkpeb(aehdr, avhdr, buf1, m1, boolvar1)], n) ↔ valid-global-sqn(apebs, n) |
apebs[m] = mkpeb(aehdr, avhdr, buf0, m0, boolvar0), m < # apebs, valid-peb(mkpeb(aehdr, avhdr, buf0, m0, boolvar0)), valid-peb(mkpeb(aehdr, avhdr, buf1, m1, boolvar1)) ⊦ (∀ v, m2. valid-sqns(v, m2, apebs[m, mkpeb(aehdr, avhdr, buf1, m1, boolvar1)]) ≠ ∅ → valid-sqns(v, m2, apebs[m, mkpeb(aehdr, avhdr, buf1, m1, boolvar1)]).max < n) ↔ (∀ v, m2. valid-sqns(v, m2, apebs) ≠ ∅ → valid-sqns(v, m2, apebs).max < n)
Used simplifier rules: valid-global-sqn: ⊦ valid-global-sqn(apebs, n) ↔ (∀ v, m. valid-sqns(v, m, apebs) ≠ ∅ → n > valid-sqns(v, m, apebs).max);% ⊦ m < n → n ≠ 0; (s)%f: ⊦ m < n → n ≠ 0; (forward) from specification nat-basic% ⊦ m > n ↔ n < m; (s)