| fi = fi0, fo = fo0, fs = fs0, log = log0, dirs0 = abs-dirs(fs0, ri), files0 = abs-files(fs0, ri), orphans(dirs0, files0) = abs-keys(ro), boolvar0 → boolvar1, boolvar1, afs-cons(dirs0, files0), ubifs-cons(fs0, ri, ro, fi0, fo0, log0), replay-cons-strong(fs0, ri, ro, fi0, fo0, log0), file-node-cons(fs0, ri), orphans-cons(fs0, ri, ro), ri-inj(ri), ri-inj(fi0), log-cons(log0, fs0), ro.inodes?, fo0.inodes? ⊦ ⟪aubifs_replay#(boolvar2; ri0, fi, ro0, fo, fs, log, boolvar3; err)⟫ ( ( err = ESUCCESS → (∃ dirs, files, asynced. (dirs = dirs0 \ orphans(dirs0, files0) ∧ files = files0 \ orphans(dirs0, files0)) ∧ ⟨afs_recovery#(boolvar2; dirs, files; asynced, err0)⟩ ((dirs = abs-dirs(fs, ri0) ∧ files = abs-files(fs, ri0) ∧ orphans(dirs, files) = abs-keys(ro0) ∧ (asynced → boolvar3)) ∧ err = err0))) ∧ ( err ≠ ESUCCESS → (∀ dirs, files, boolvar. ⟨afs_recovery#(boolvar2; dirs1, files1; asynced0, err0)⟩ (dirs = dirs1 ∧ files = files1 ∧ (boolvar ↔ asynced0) ∧ err = err0)))) |