| wlar[m] = wl-entry(m5, stat3), wlar[n1] = wl-entry(m1, stat0), wlar[n2] = wl-entry(m0, stat), apebs0[n2] = mkpeb(aehdr, empty, buf1, 0, false), vols[v][m2] = ⌜m⌝ , wlar[m, wl-entry(m5, erasing)][n2] = wl-entry(m3, stat1), wlar[m, wl-entry(m5, erasing)][n1] = wl-entry(m4, stat2), align↑(datasize(buf, n0), EB_PAGE_SIZE) = align↑(datasize(buf, align↑(datasize(buf, n0), EB_PAGE_SIZE)), EB_PAGE_SIZE), aehdr.valid?, n2 < # wlar, m < # wlar, n1 < # wlar, n2 < # apebs0, m2 < # vols[v], v ∈ vols, align↑(datasize(buf, n0), EB_PAGE_SIZE) ≤ LEB_SIZE, align↑(datasize(buf, n0), EB_PAGE_SIZE) ≤ # buf, m = n1 ∨ v = VTBL_VOLID ∧ m2 = VTBL_LNUM ∧ vtblpnum1 = n1 ⊦ datasize(buf, align↑(datasize(buf, n0), EB_PAGE_SIZE)) = 0, datasize(buf, n0) = 0, n2 = n1, v = VTBL_VOLID ∧ m2 = VTBL_LNUM, m3 = m0 ∧ m4 = m1 |
⊦ m ≠ n → wlar[n, wle][m] = wlar[m]
wlar[m, wl-entry(m5, erasing)][n1] = wl-entry(m4, stat2), wlar[n2] = wl-entry(m3, stat1), vols[v][m2] = ⌜m⌝ , apebs0[n2] = mkpeb(aehdr, empty, buf1, 0, false), wlar[n2] = wl-entry(m0, stat), wlar[n1] = wl-entry(m1, stat0), wlar[m] = wl-entry(m5, stat3), align↑(datasize(buf, n0), EB_PAGE_SIZE) = align↑(datasize(buf, align↑(datasize(buf, n0), EB_PAGE_SIZE)), EB_PAGE_SIZE), aehdr.valid?, m2 < # vols[v], n2 < # apebs0, n1 < # wlar, m < # wlar, n2 < # wlar, v ∈ vols, align↑(datasize(buf, n0), EB_PAGE_SIZE) ≤ # buf, align↑(datasize(buf, n0), EB_PAGE_SIZE) ≤ LEB_SIZE, m = n1 ∨ v = VTBL_VOLID ∧ m2 = VTBL_LNUM ∧ vtblpnum1 = n1 ⊦ datasize(buf, n0) = 0, datasize(buf, align↑(datasize(buf, n0), EB_PAGE_SIZE)) = 0, n2 = n1, n2 = m, m3 = m0 ∧ m4 = m1, v = VTBL_VOLID ∧ m2 = VTBL_LNUM
Used simplifier rules: ⊦ m < # wlar → wlar[m, wle][m] = wle; (s)% ⊦ wl-entry(m, stat) = wl-entry(m0, stat0) ↔ m = m0 ∧ stat = stat0; (ws)% ⊦ m ≠ n → wlar[n, wle][m] = wlar[m]; (s) Used terms: n2, wl-entry(m5, erasing), m, wlar