| n < align↓(# buf0 + # buf1, EB_PAGE_SIZE), # buf0 % EB_PAGE_SIZE + # buf1 < EB_PAGE_SIZE, n < # buf0 + # buf1, # buf0 % EB_PAGE_SIZE < # buf0, EB_PAGE_SIZE ≤ # buf0 + # buf1 ⊦ (buf0 + buf1)[n] = subarray(buf0, 0, align↓(# buf0, EB_PAGE_SIZE))[n], n < align↓(# buf0, EB_PAGE_SIZE) |
# buf0 % EB_PAGE_SIZE < # buf0, n < # buf0 + # buf1, # buf0 % EB_PAGE_SIZE + # buf1 < EB_PAGE_SIZE, n < align↓(# buf0 + # buf1, EB_PAGE_SIZE), align↓(# buf0, EB_PAGE_SIZE) < # buf0 + # buf1, align↓(# buf0, EB_PAGE_SIZE) < align↓(# buf0 + # buf1, EB_PAGE_SIZE), EB_PAGE_SIZE ≤ # buf0 + # buf1, align↓(# buf0, EB_PAGE_SIZE) ≤ n ⊦ (buf0 + buf1)[n] = subarray(buf0, 0, align↓(# buf0, EB_PAGE_SIZE))[n]
Used simplifier rules: fle-01: ⊦ m ≤ n ∧ n < n0 → m < n0; (forward) from specification nat% ⊦ m < n ↔ ¬ n ≤ m; (ss)