| # avol0 = # avol1, # lpt0 = # avol1, # buf = EB_PAGE_SIZE, err = err1, m4 < # avol1, abs(avol1, bleb0, mkwbuf(buf, m3, m2), avol0, rofs), awbuf-inv(avol1, bleb0), ebm-vol-inv(avol0), synced(avol1), ⌊err1⌋ , bleb0 ≠ nobuffer → bleb0.leb < # avol1 ∧ wbuf-cons(mkwbuf(buf, m3, m2), avol0[bleb0.leb], rofs) ⊦ ⟨if err = ESUCCESS then avol1[m4] := mapped(mkbuf(0)) else {skip or avol1[m4] := unmapped}⟩ (abs(avol1, bleb0, mkwbuf(buf, m3, m2), avol0, rofs) ∧ err1 = err), buffered(m4) = bleb0 |
# buf = EB_PAGE_SIZE, # lpt0 = # avol1, # avol0 = # avol1, err = err1, m4 < # avol1, abs(avol1, bleb0, mkwbuf(buf, m3, m2), avol0, rofs), awbuf-inv(avol1, bleb0), ebm-vol-inv(avol0), synced(avol1), ⌊err1⌋ , bleb0 ≠ nobuffer → bleb0.leb < # avol1 ∧ wbuf-cons(mkwbuf(buf, m3, m2), avol0[bleb0.leb], rofs) ⊦ ⟨skip or avol1[m4] := unmapped⟩ (abs(avol1, bleb0, mkwbuf(buf, m3, m2), avol0, rofs) ∧ err1 = err), buffered(m4) = bleb0
Used simplifier rules: ⊦ ⌊err⌋ → err ≠ ESUCCESS; (s)