| dirs = dirs0 \ orphans(dirs0, files1), files = files1 \ orphans(dirs0, files1), dom of < ino, afs-cons(dirs0, files1), of-cons(of, dirs0, files1) ⊦ [afs_recovery#(isdir; dirs, files; asynced, err)] (asynced ∧ afs-cons(dirs, files) → err = ESUCCESS → of-cons(∅, dirs, files)) |
dirs = dirs0 \ orphans(dirs0, files1), files = files1 \ orphans(dirs0, files1), dom of < ino, afs-cons(dirs0, files1), of-cons(of, dirs0, files1) ⊦ [asynced := true, err := ESUCCESS or {dirs := ?, files := ?, asynced := ?; fail#(; ; err)}] (asynced ∧ afs-cons(dirs, files) → err = ESUCCESS → of-cons(∅, dirs, files))
Used simplifier rules: afs_recovery#(DOSYNC; DIRS, FILES; ASYNCED, ERR) { ASYNCED := true, ERR := ESUCCESS or {DIRS := ?, FILES := ?, ASYNCED := ?; fail#(; ; ERR)} };