| root0.dir?, root0[parent(path')].dir?, py(user, parent(path), root0, fs), py(user, parent(path'), root0, fs), path ∈ root0, parent(path') ∈ root0, path' ∈ root0 → (root0[path].dir? ↔ root0[path'].dir?), path' ∈ root0 ∧ root0[path'].dir? → root0[path'].entries = ∅, root0[path].dir? → pw(user, path, root0, fs) ⊦ path' = ε, (root0 -- path)[path', root0[path]].dir?, path ⊑ path', path' ∈ root0 ∧ ¬ root0[path'].dir? ∧ ¬ root0[path'].fid ∈ ofh.fids ∧ ¬ root0[path'].fid ∈ (root0 -- path)[path', root0[path]].fids, path' ≠ ε ∧ (root0 -- path).dir? ∧ parent(path') ∈ root0 -- path |
root0[parent(path')].dir?, root0.dir?, py(user, parent(path'), root0, fs), py(user, parent(path), root0, fs), parent(path') ∈ root0, path ∈ root0, path ⊑ parent(path'), root0[path].dir? → pw(user, path, root0, fs), path' ∈ root0 ∧ root0[path'].dir? → root0[path'].entries = ∅, path' ∈ root0 → (root0[path].dir? ↔ root0[path'].dir?) ⊦ path' = ε, (root0 -- path)[path', root0[path]].dir?, path ⊑ path', path' ∈ root0 ∧ ¬ root0[path'].dir? ∧ ¬ root0[path'].fid ∈ ofh.fids ∧ ¬ root0[path'].fid ∈ (root0 -- path)[path', root0[path]].fids
Used simplifier rules: p ≠ ε ⊦ p ∈ tree → (q ∈ tree -- p ↔ ¬ p ⊑ q ∧ q ∈ tree); (s)%p ≠ ε ⊦ p ∈ tree → ((tree -- p).dir? ↔ tree.dir?); (s)% ⊦ ε ⊑ p; (s)% ⊦ tree[ε] = tree; (s)% ⊦ ε ∈ tree; (s)