| m < # avol, ebm-vol-inv(avol) ⊦ ⟪if m < # avol then {fail_or_success#(; ; err); if err = ESUCCESS then avol[m] := mapped(mkbuf(0)) else {skip or avol[m] := unmapped}} else abort⟫ ebm-vol-inv(avol) |
m < # avol, ebm-vol-inv(avol) ⊦ ⟪fail_or_success#(; ; err); if err = ESUCCESS then avol[m] := mapped(mkbuf(0)) else {skip or avol[m] := unmapped}⟫ ebm-vol-inv(avol)
Used simplifier rules: ⊦ m < n ↔ ¬ n ≤ m; (ss)% ⊦ m < n → (n ≤ m ↔ false); (s)