| ubi-io-inv(apebs), ubi-io-write-echdr-pre(n, aehdr, apebs) ⊦ ⟪aubi_io_write_echdr#(n, aehdr; apebs; err)⟫ ubi-io-inv(apebs) |
apebs[n].echdr = empty, aehdr.valid?, n < # apebs, ubi-io-inv(apebs), ¬ apebs[n].bad ⊦ ⟪aubi_io_write_echdr#(n, aehdr; apebs; err)⟫ ubi-io-inv(apebs)
Used simplifier rules: ⊦ m < n → n ≠ 0; (s)%f: ⊦ m < n → n ≠ 0; (forward) from specification nat-basic%⊦ ubi-io-write-echdr-pre(n, aehdr, apebs) ↔ n < # apebs ∧ ¬ apebs[n].bad ∧ aehdr.valid? ∧ apebs[n].echdr = empty; (s)