| # avol0 = # avol2, # lpt1 = # avol2, # buf = EB_PAGE_SIZE, abs(avol2, bleb0, mkwbuf(buf, m2, m3), avol0, rofs0), awbuf-inv(avol2, bleb0), ebm-vol-inv(avol0), avol0 ⊆ avol1, ⌊err0⌋ , bleb0 ≠ nobuffer → bleb0.leb < # avol2 ∧ wbuf-cons(mkwbuf(buf, m2, m3), avol0[bleb0.leb], rofs0) ⊦ ⟪skip⟫ ∀ adr, m, plog, avol, lpt, ns, bleb, rofs. ⟨awbuf_recover#(; adr4, m5, ns4, plog3, lpt4, adr5, m7, plog4, lpt5, ns5, avol3; bleb3, rofs3, err1)⟩ ( adr = adr5 ∧ m = m7 ∧ plog = plog4 ∧ avol = avol3 ∧ lpt = lpt5 ∧ ns = ns5 ∧ bleb = bleb3 ∧ (rofs ↔ rofs3) ∧ adr0 = adr4 ∧ m0 = m5 ∧ ns0 = ns4 ∧ log = plog3 ∧ lpt0 = lpt4 ∧ err0 = err1) |
# buf = EB_PAGE_SIZE, # lpt1 = # avol2, # avol0 = # avol2, abs(avol2, bleb0, mkwbuf(buf, m2, m3), avol0, rofs0), awbuf-inv(avol2, bleb0), ebm-vol-inv(avol0), avol0 ⊆ avol1, ⌊err0⌋ , bleb0 ≠ nobuffer → bleb0.leb < # avol2 ∧ wbuf-cons(mkwbuf(buf, m2, m3), avol0[bleb0.leb], rofs0) ⊦ ∀ adr, m, plog, avol, lpt, ns, bleb, rofs. ⟨awbuf_recover#(; adr4, m5, ns4, plog3, lpt4, adr5, m7, plog4, lpt5, ns5, avol3; bleb3, rofs3, err1)⟩ ( adr = adr5 ∧ m = m7 ∧ plog = plog4 ∧ avol = avol3 ∧ lpt = lpt5 ∧ ns = ns5 ∧ bleb = bleb3 ∧ (rofs ↔ rofs3) ∧ adr0 = adr4 ∧ m0 = m5 ∧ ns0 = ns4 ∧ log = plog3 ∧ lpt0 = lpt4 ∧ err0 = err1)