| adr = adr0 ∧ istore = remove-refsize0(crash(istore0, istore1)) ∧ istore2 = istore1 ∧ ginval = ginval0 ∧ gstore = crash(gstore0, gstore1, ginval0, nx) ∧ gstore2 = gstore1 ∧ nx0 = nx ∧ maxino = maxino0 ∧ ginval1 = ginval2, syn, inv-journal(nx, gstore0, gstore1, ginval0), inv-index(istore0, istore1), inv-state(pstate, nx, gstore0, istore0, syn) ⊦ ⟪apersistence_recover#(; adr1, maxino1, nx1, ginval3, adr, istore, istore2, ginval, gstore, gstore2, nx0, maxino, ginval1, pstate0, syn0; err)⟫ (err = ESUCCESS → syn0 ∧ inv-journal(nx0, gstore, gstore2, ginval) ∧ inv-index(istore, istore2) ∧ inv-state(pstate0, nx0, gstore, istore, syn0)) |