| avol[0] = mapped(buf1), buf = mkbuf(LEB_SIZE), err = err0, m2 = LEB_SIZE, n0 = 0, ebm-vol-inv(avol), is-encoded(sb0, buf1), ⌊err0⌋ ∨ err0 = ESUCCESS ⊦ # avol = 0, err = ESUCCESS, ∀ buf1. # buf1 = # buf → range=(buf, 0, buf1, 0, n0) → # buf ≥ n0 + m2 |
Used simplifier rules: ⊦ ¬ n < n; (s)% ⊦ m ≤ n ↔ ¬ n < m; (ss)% ⊦ n ≥ m ↔ m ≤ n; (s)%c: ⊦ m + n = n + m; from specification nat-basic%a: ⊦ (m + n0) + n1 = m + n0 + n1; from specification nat-basic% ⊦ n + 0 = n; (s)% ⊦ 0 ≤ m; (s)% ⊦ range=(buf, n0, buf0, n1, 0) ↔ n0 ≤ # buf ∧ n1 ≤ # buf0; (s)% ⊦ # mkbuf(n) = n; (s)