| wlar[n] = wl-entry(m, free), apebs[n] = mkpeb(aehdr, avhdr, buf, m0, boolvar), n < # wlar, n < # apebs, ubi-io-inv(apebs), valid-wl(apebs, wlar) ⊦ avhdr = empty ∧ aehdr.valid? ∧ m0 = 0 |
wlar[n] = wl-entry(m, free), apebs[n] = mkpeb(aehdr, avhdr, buf, m0, false), n < # wlar, n < # apebs, ubi-io-inv(apebs), ubi-io-peb-inv(mkpeb(aehdr, avhdr, buf, m0, false)), valid-wl(apebs, wlar) ⊦ avhdr = empty ∧ aehdr.valid? ∧ m0 = 0
Used simplifier rules: lf-valid-wl-not-erroneous: n < # wlar, stat ≠ erroneous ⊦ apebs[n] = mkpeb(aehdr, avhdr, buf, m, boolvar) ∧ wlar[n] = wl-entry(m0, stat) ∧ valid-wl(apebs, wlar) → ¬ boolvar;%ubi-io-inv-fwd: n < # apebs ⊦ apebs[n] = apeb ∧ ubi-io-inv(apebs) → ubi-io-peb-inv(apeb);% ⊦ m < n → (n ≤ m ↔ false); (s)% ⊦ m < n ↔ ¬ n ≤ m; (ss)% ⊦ free ≠ erroneous; (s)