| err = ESUCCESS, err0 = err1, fid = root[path].fid, root.dir?, fids-cons(root, fs, ofh), pre-link(path, path', err, user, root, fs, ofh) ⊦ ⟪psynced := ?⟫ (root[path', fnode(fid)].dir? ∧ fids-cons(root[path', fnode(fid)], fs, ofh)) |
root.dir?, root[parent(path')].dir?, fids-cons(root, fs, ofh), px(user, parent(path), root, fs), py(user, parent(path'), root, fs), path ∈ root, parent(path') ∈ root, ¬ root[path].dir?, ¬ path' ∈ root ⊦ ⟪psynced := ?⟫ fids-cons(root[path', fnode(root[path].fid)], fs, ofh)
Used simplifier rules: p ≠ ε ⊦ tree.dir? ∧ parent(p) ∈ tree → tree[p, tree0].dir?; (s)% ⊦ ε ∈ tree; (s)% ⊦ tree[ε, tree0] = tree0; (s)%⊦ pre-link(p, p', ESUCCESS, user, root, fs, ofh) ↔ p ∈ root ∧ ¬ root[p].dir? ∧ ¬ p' ∈ root ∧ parent(p') ∈ root ∧ root[parent(p')].dir? ∧ px(user, parent(p), root, fs) ∧ py(user, parent(p'), root, fs); (s)