| remove-refsize0(istore) = istore, btree-inv(rp, adr, istore0, istore, zh, ∅, ∅), btree-inv(rp, adr, istore0, istore, zh, ri0, fi), inv(istore0), inv(istore), istore ⊑ istore0, ¬ pstate.journal?, pstate.index? → pstate.lnum ∈ istore0 ⊦ ⟨index_format#(maxino3, LEB_SIZE, maxino2; ; fi1, fi2, ginval3, gstore3, gstore4, nx1, maxino5, ginval4, syn1, err0)⟩ ( ginval3 = ∅ ∧ gstore3 = ∅ ∧ gstore4 = ∅ ∧ nx1 = [] ∧ maxino5 = maxino2 ∧ ginval4 = ∅ ∧ btree-inv(rp, adr, istore0, istore, zh, fi1, fi2) ∧ ri = fi1 ∧ fi3 = fi2 ∧ syn1 ∧ ESUCCESS = err0) |
maxino0 = maxino4, maxino1 = LEB_SIZE, maxino2 = maxino3, remove-refsize0(istore) = istore, btree-inv(rp, adr, istore0, istore, zh, ri0, fi), btree-inv(rp, adr, istore0, istore, zh, ∅, ∅), inv(istore), inv(istore0), istore ⊑ istore0, pstate.index? → pstate.lnum ∈ istore0 ⊦ ⟨if maxino1 = LEB_SIZE then {fail_or_success#(; ; err); if err = ESUCCESS then maxino := maxino0, syn := true, ginval0 := ∅, nx := [], gstore0 := ∅, gstore := ∅, ginval := ∅, fi0 := ∅, fi := ∅ else maxino := ?, syn := ?, ginval0 := ?, nx := ?, gstore0 := ?, gstore := ?, ginval := ?, fi0 := ?, fi := ?} else abort⟩ ( ginval = ∅ ∧ gstore0 = ∅ ∧ gstore = ∅ ∧ nx = [] ∧ maxino = maxino4 ∧ ginval0 = ∅ ∧ btree-inv(rp, adr, istore0, istore, zh, fi0, fi) ∧ ri = fi0 ∧ fi3 = fi ∧ syn ∧ ESUCCESS = err), pstate.journal?
Used simplifier rules: index_format# (VOLSIZE, SIZE, PMAXINO0 ; ; PRI, PFI, PINVAL, PSTORE, PSTORE0, PNL, PMAXINO, P_OS, ISYNCED, ERR ) {if SIZE = LEB_SIZE then {fail_or_success#(; ; ERR); if ERR = ESUCCESS then PMAXINO := PMAXINO0, ISYNCED := true, P_OS := ∅, PNL := [], PSTORE := ∅, PSTORE0 := ∅, PINVAL := ∅, PRI := ∅, PFI := ∅ else PMAXINO := ?, ISYNCED := ?, P_OS := ?, PNL := ?, PSTORE := ?, PSTORE0 := ?, PINVAL := ?, PRI := ?, PFI := ?} else abort };