| ⊦ ¬ apeb.bad ∧ (apeb.echdr ≠ empty → apeb.vidhdr ≠ empty ∧ 0 = apeb.fill + 2 * EB_PAGE_SIZE) ∧ ¬ apeb.echdr.valid? ∧ apeb.echdr ≠ garbage ∧ ¬ apeb.vidhdr.valid? ∧ apeb.vidhdr ≠ garbage ∧ emptyleb = apeb.data ↔ (∃ m. apeb = mkpeb(empty, empty, mkempbuf(LEB_SIZE), m, false)) |
apeb = mkpeb(aehdr, avhdr, buf, m0, boolvar) ⊦ ¬ boolvar ∧ (aehdr ≠ empty → avhdr ≠ empty ∧ 0 = m0 + 2 * EB_PAGE_SIZE) ∧ ¬ aehdr.valid? ∧ aehdr ≠ garbage ∧ ¬ avhdr.valid? ∧ avhdr ≠ garbage ∧ emptyleb = buf ↔ (∃ m. apeb = mkpeb(empty, empty, mkempbuf(LEB_SIZE), m, false))
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: apeb, aehdr, avhdr, buf, m0, boolvar