| m < # pebs, ¬ pebs[m].bad, pebs[m].fill ≤ m0, m0 + n ≤ PEB_SIZE, n0 + n ≤ # buf, is-aligned(m0, EB_PAGE_SIZE), is-aligned(n, EB_PAGE_SIZE), mtd-cons(pebs), pebs0 = pebs ⊦ ⟨mtd_asm_write#(m, m0, n0, n, buf; pebs; err)⟩ (pebs0 = pebs) |
pebs0 = pebs, m < # pebs, is-aligned(n, EB_PAGE_SIZE), is-aligned(m0, EB_PAGE_SIZE), mtd-cons(pebs), n0 + n ≤ # buf, m0 + n ≤ PEB_SIZE, pebs[m].fill ≤ m0 ⊦ ⟨mtd_asm_write#(m, m0, n0, n, buf; pebs; err)⟩ (pebs0 = pebs), pebs[m].bad