| m < # apebs, valid-eraseq(apebs, eqent + q0), ∀ m, apebs, apeb. m < # apebs ∧ valid-eraseq(apebs, q0) → valid-eraseq(apebs[m, apeb], q0) ∨ valid-peb(apeb) ⊦ valid-eraseq(apebs[m, apeb], eqent + q0), valid-peb(apeb) |
m < # apebs, eqent.pnum < # apebs, valid-eraseq(apebs, q0), valid-peb(apebs[eqent.pnum]) → eqent.lebref = apebs[eqent.pnum].vidhdr.vol × apebs[eqent.pnum].vidhdr.leb, ∀ m, apebs, apeb. m < # apebs ∧ valid-eraseq(apebs, q0) → valid-eraseq(apebs[m, apeb], q0) ∨ valid-peb(apeb) ⊦ valid-peb(apeb), (valid-peb(apebs[m, apeb][eqent.pnum]) → eqent.lebref = apebs[m, apeb][eqent.pnum].vidhdr.vol × apebs[m, apeb][eqent.pnum].vidhdr.leb) ∧ valid-eraseq(apebs[m, apeb], q0)
Used simplifier rules: valid-eraseqp-rec: ⊦ valid-eraseq(apebs, eqent ' + q) ↔ eqent.pnum < # apebs ∧ ( valid-peb(apebs[eqent.pnum]) → eqent.lebref = apebs[eqent.pnum].vidhdr.vol × apebs[eqent.pnum].vidhdr.leb) ∧ valid-eraseq(apebs, q);% ⊦ # apebs[n, apeb] = # apebs; (s)%a: ⊦ (q + q0) + q1 = q + q0 + q1; from specification list[erasequeue-base]% ⊦ eqent + q = eqent ' + q; (s)