| psynced0 ↔ path' ∈ root, err = ESUCCESS, err0 = err1, tree = root[path'], tree0 = root[path], root.dir?, fids-cons(root, fs, ofh), pre-renam(path, path', err, user, root, fs, ofh) ⊦ ⟪if psynced0 ∧ ¬ tree.dir? ∧ ¬ tree.fid ∈ ofh.fids ∧ ¬ tree.fid ∈ (root -- path)[path', tree0].fids then fs := fs -- tree.fid; psynced := ?⟫ true |
psynced0 ↔ path' ∈ root, err = ESUCCESS, err0 = err1, psynced0, tree = root[path'], tree0 = root[path], root.dir?, fids-cons(root, fs, ofh), pre-renam(path, path', err, user, root, fs, ofh) ⊦ ⟪fs := fs -- tree.fid; psynced := ?⟫ true, tree.dir?, tree.fid ∈ (root -- path)[path', tree0].fids, tree.fid ∈ ofh.fids
psynced0 ↔ path' ∈ root, err = ESUCCESS, err0 = err1, tree = root[path'], tree0 = root[path], root.dir?, fids-cons(root, fs, ofh), pre-renam(path, path', err, user, root, fs, ofh) ⊦ ⟪skip; psynced := ?⟫ true, psynced0 ∧ ¬ tree.dir? ∧ ¬ tree.fid ∈ ofh.fids ∧ ¬ tree.fid ∈ (root -- path)[path', tree0].fids