| avol[0] = mapped(buf1), # avol ≠ 0, ebm-vol-inv(avol), is-encoded(sb0, buf1), # buf1 ≤ LEB_SIZE, LEB_SIZE ≤ # buf1 + (LEB_SIZE - # buf1) ⊦ [decode_superblock#(0, copy(avol[0].data + mkempbuf(LEB_SIZE - # avol[0].data), 0, mkbuf(LEB_SIZE), 0, LEB_SIZE), EB_PAGE_SIZE; sb, m; err)] ( is-encoded(sb, subarray(avol[0].data + mkempbuf(LEB_SIZE - # avol[0].data), 0, encoding-size(sb, EB_PAGE_SIZE))) ∧ encoding-size(sb, EB_PAGE_SIZE) ≤ # avol[0].data + (LEB_SIZE - # avol[0].data) ∧ m = encoding-size(sb, EB_PAGE_SIZE) → err = ESUCCESS → sb = sb0) |
avol[0] = mapped(buf1), ebm-vol-inv(avol), is-encoded(sb0, buf1), LEB_SIZE ≤ # buf1 + (LEB_SIZE - # buf1), # buf1 ≤ LEB_SIZE ⊦ # avol = 0, ∀ sb, m, err. is-encoded(sb, subarray(avol[0].data + mkempbuf(LEB_SIZE - # avol[0].data), 0, encoding-size(sb, EB_PAGE_SIZE))) ∧ encoding-size(sb, EB_PAGE_SIZE) ≤ # avol[0].data + (LEB_SIZE - # avol[0].data) ∧ m = encoding-size(sb, EB_PAGE_SIZE) → err = ESUCCESS → sb = sb0