| ⌊err⌋ ⊦ ⟨apersistence_io_format#(# lpt0, LEB_SIZE, lpt0, adr1, m3; ; adr2, m6, plog, avol1, lpt1, ns0, err0)⟩ (adr = adr2 ∧ m1 = m6 ∧ log0 = plog ∧ avol0 = avol1 ∧ lpt2 = lpt1 ∧ ns = ns0 ∧ err = err0) |
adr0 = adr1, m0 = m3, m1 = LEB_SIZE, m2 = # lpt0, ⌊err1⌋ ⊦ ⟨if # lpt0 = m2 ∧ m1 = LEB_SIZE then {fail_or_success#(; ; err); if err = ESUCCESS then {avol := fill(mkavolume(m2), unmapped); adr := adr0; m := m0; plog := []; lpt := lpt0; ns := ∅} else avol := ?, adr := ?, m := ?, plog := ?, lpt := ?, ns := ?} else abort⟩ (adr3 = adr ∧ m1 = m ∧ log0 = plog ∧ avol0 = avol ∧ lpt2 = lpt ∧ ns1 = ns ∧ err1 = err)
Used simplifier rules: apersistence_io_format# (VOLSIZE, SIZE, LPT, PROOTADR0, PMAXINO0 ; ; PROOTADR, PMAXINO, PLOG, PVOL, PLPT, PORPHANS, ERR ) {if # LPT = VOLSIZE ∧ SIZE = LEB_SIZE then {fail_or_success#(; ; ERR); if ERR = ESUCCESS then {PVOL := fill(mkavolume(VOLSIZE), unmapped); PROOTADR := PROOTADR0; PMAXINO := PMAXINO0; PLOG := []; PLPT := LPT; PORPHANS := ∅} else PVOL := ?, PROOTADR := ?, PMAXINO := ?, PLOG := ?, PLPT := ?, PORPHANS := ?} else abort };