specs/ubi-io-refine/proofs/1489759528000
refine-read-echdrubi-io-read-echdr-pre(m, apebs), abs(pebs, apebs), ubi-io-inv(apebs), m0 = EB_PAGE_SIZE, mtd-cons(pebs), aehdr = aehdr0
⊦ ⟪ubi_io_read_echdr#(m, m0, pebs; aehdr; bitflips, err)⟫
⟨aubi_io_read_echdr#(m, apebs; aehdr0; isbad, err0)⟩ (abs(pebs, apebs) ∧ aehdr = aehdr0 ∧ (bitflips ↔ isbad) ∧ err = err0)
<_SIDEGOALS>
17105refine-read-echdr-proofrefine-read-echdr-proof-info
refine-write-echdrubi-io-write-echdr-pre(m, aehdr, apebs), abs(pebs, apebs), ubi-io-inv(apebs), m0 = EB_PAGE_SIZE, mtd-cons(pebs)
⊦ ⟪ubi_io_write_echdr#(m, aehdr, m0; pebs; err)⟫ ⟨aubi_io_write_echdr#(m, aehdr; apebs; err0)⟩ (abs(pebs, apebs) ∧ err = err0)
<_SIDEGOALS>
12102refine-write-echdr-proofrefine-write-echdr-proof-info
refine-read-vidhdrubi-io-read-vidhdr-pre(m, apebs), abs(pebs, apebs), ubi-io-inv(apebs), m0 = EB_PAGE_SIZE, mtd-cons(pebs), avhdr = avhdr0
⊦ ⟪ubi_io_read_vidhdr#(m, m0, pebs; avhdr; bitflips, err)⟫
⟨aubi_io_read_vidhdr#(m, apebs; avhdr0; isbad, err0)⟩ (abs(pebs, apebs) ∧ avhdr = avhdr0 ∧ (bitflips ↔ isbad) ∧ err = err0)
<_SIDEGOALS>
17105refine-read-vidhdr-proofrefine-read-vidhdr-proof-info
refine-write-vidhdrubi-io-write-vidhdr-pre(m, avhdr, apebs), abs(pebs, apebs), ubi-io-inv(apebs), m0 = EB_PAGE_SIZE, mtd-cons(pebs)
⊦ ⟪ubi_io_write_vidhdr#(m, avhdr, m0; pebs; err)⟫ ⟨aubi_io_write_vidhdr#(m, avhdr; apebs; err0)⟩ (abs(pebs, apebs) ∧ err = err0)
<_SIDEGOALS>
11100refine-write-vidhdr-proofrefine-write-vidhdr-proof-info
refine-write-dataubi-io-write-data-pre(m, m0, n, n0, buf, apebs), abs(pebs, apebs), ubi-io-inv(apebs), m1 = EB_PAGE_SIZE, mtd-cons(pebs)
⊦ ⟪ubi_io_write_data#(m, m0, n, n0, buf, m1; pebs; err)⟫ ⟨aubi_io_write_data#(m, m0, n, n0, buf; apebs; err0)⟩ (abs(pebs, apebs) ∧ err = err0)
<_SIDEGOALS>
32159refine-write-data-proofrefine-write-data-proof-info
refine-write-data-wlubi-io-write-data-wl-pre(m, n, buf, apebs), abs(pebs, apebs), ubi-io-inv(apebs), m0 = EB_PAGE_SIZE, mtd-cons(pebs)
⊦ ⟪ubi_io_write_data_wl#(m, n, buf, m0; pebs; err)⟫ ⟨aubi_io_write_data_wl#(m, n, buf; apebs; err0)⟩ (abs(pebs, apebs) ∧ err = err0)
<_SIDEGOALS>
39166refine-write-data-wl-proofrefine-write-data-wl-proof-info
refine-sync-eraseubi-io-erase-pre(m, apebs), abs(pebs, apebs), ubi-io-inv(apebs), m0 = EB_PAGE_SIZE, mtd-cons(pebs)
⊦ ⟪ubi_io_sync_erase#(m; pebs; err)⟫ ⟨aubi_io_sync_erase#(m; apebs; err0)⟩ (abs(pebs, apebs) ∧ err = err0)
<_SIDEGOALS>
252refine-sync-erase-proofrefine-sync-erase-proof-info
refine-markbadubi-io-markbad-pre(m, apebs), abs(pebs, apebs), ubi-io-inv(apebs), m0 = EB_PAGE_SIZE, mtd-cons(pebs)
⊦ ⟪ubi_io_markbad#(m; pebs; err)⟫ ⟨aubi_io_markbad#(m; apebs; err0)⟩ (abs(pebs, apebs) ∧ err = err0)
<_SIDEGOALS>
353refine-markbad-proofrefine-markbad-proof-info
refine-get-blockcountabs(pebs, apebs), ubi-io-inv(apebs), m = EB_PAGE_SIZE, mtd-cons(pebs)
⊦ ⟪ubi_io_get_blockcount#(pebs; ; n)⟫ ⟨aubi_io_get_blockcount#(apebs; ; n0)⟩ (abs(pebs, apebs) ∧ n = n0)
<_SIDEGOALS>
07refine-get-blockcount-proofrefine-get-blockcount-proof-info
refine-isbadubi-io-isbad-pre(m, apebs), abs(pebs, apebs), ubi-io-inv(apebs), m0 = EB_PAGE_SIZE, mtd-cons(pebs)
⊦ ⟪ubi_io_isbad#(m, pebs; ; isbad, err)⟫ ⟨aubi_io_isbad#(m, apebs; ; isbad0, err0)⟩ (abs(pebs, apebs) ∧ (isbad ↔ isbad0) ∧ err = err0)
<_SIDEGOALS>
243refine-isbad-proofrefine-isbad-proof-info
refine-read-dataubi-io-read-data-pre(m, m0, n, n0, buf, apebs), abs(pebs, apebs), ubi-io-inv(apebs), m1 = EB_PAGE_SIZE, mtd-cons(pebs), buf = buf0
⊦ ⟪ubi_io_read_data#(m, m0, n, n0, m1, pebs; buf; bitflips, err)⟫
⟨aubi_io_read_data#(m, m0, n, n0, apebs; buf0; isbad, err0)⟩ (abs(pebs, apebs) ∧ buf = buf0 ∧ (bitflips ↔ isbad) ∧ err = err0)
<_SIDEGOALS>
1462refine-read-data-proofrefine-read-data-proof-info
initialization⊦ ⟪ubi_io_format#(; m, pebs; err)⟫
( (err = ESUCCESS → ⟨aubi_io_format#(; ; apebs0, err0)⟩ (abs(pebs, apebs0) ∧ err = err0))
∧ (err ≠ ESUCCESS → (∀ apebs. ⟨aubi_io_format#(; ; apebs0, err0)⟩ (apebs = apebs0 ∧ err = err0))))
initial-ex-abstract-initial
<_SIDEGOALS>
631initialization-proofinitialization-proof-info
recoverypebs = pebs0, abs(pebs0, apebs0), ubi-io-inv(apebs0), m = EB_PAGE_SIZE, mtd-cons(pebs0)
⊦ ⟪ubi_io_recovery#(pebs; ; m0)⟫ ∃ apebs. apebs = apebs0 ∧ ⟨aubi_io_recovery#(apebs)⟩ abs(pebs, apebs)
<_SIDEGOALS>
07recovery-proofrecovery-proof-info
refine-get-leb-sizeabs(pebs, apebs), ubi-io-inv(apebs), m = EB_PAGE_SIZE, mtd-cons(pebs)
⊦ ⟪ubi_io_get_leb_size#(m, pebs; ; n)⟫ ⟨aubi_io_get_leb_size#(apebs; ; n0)⟩ (abs(pebs, apebs) ∧ n = n0)
<_SIDEGOALS>
010refine-get-leb-size-proofrefine-get-leb-size-proof-info
refine-get-page-sizeabs(pebs, apebs), ubi-io-inv(apebs), m = EB_PAGE_SIZE, mtd-cons(pebs)
⊦ ⟪ubi_io_get_page_size#(m; ; n)⟫ ⟨aubi_io_get_page_size#(apebs; ; n0)⟩ (abs(pebs, apebs) ∧ n = n0)
<_SIDEGOALS>
06refine-get-page-size-proofrefine-get-page-size-proof-info
initial-ex-abstract-initial ⊦ ubi-io-initial(pebs) → (∃ apebs. abs(pebs, apebs) ∧ ubi-io-initial(apebs))
<_SIDEGOALS>
4898initial-ex-abstract-initial-proofinitial-ex-abstract-initial-proof-info
0