| wlar[n] = wl-entry(m0, stat), wlar0 = wlar, n < # wlar, m0 + UBI_ERASE_RETRIES < ecs(wlar).max ⊦ [ubi_erase_worker_helper#(n; wlar, apebs; err)] ∃ m. m ≠ 0 ∧ m ≤ UBI_ERASE_RETRIES + 1 ∧ Δ wlar + m = Δ wlar0 |
wlar0 = wlar, n < # wlar ⊦ [ubi_erase_worker_helper#(n; wlar, apebs; err)] ∃ m, stat. m ≠ 0 ∧ m ≤ UBI_ERASE_RETRIES + 1 ∧ wlar = wlar0[n, wl-entry(wlar0[n].ec + m, stat)]
wlar[n] = wl-entry(m0, stat), n0 = n, wlar = wlar, wlar0 = wlar, wlar1 = wlar, m0 + UBI_ERASE_RETRIES < ecs(wlar).max, n < # wlar ⊦ [ubi_erase_worker_helper#(n; wlar, apebs; err)] ( (∃ m, stat. m ≠ 0 ∧ m ≤ UBI_ERASE_RETRIES + 1 ∧ wlar = wlar1[n0, wl-entry(wlar1[n0].ec + m, stat)]) → (∃ m. m ≠ 0 ∧ m ≤ UBI_ERASE_RETRIES + 1 ∧ Δ wlar + m = Δ wlar0))