| fid0 ∈ fs ↔ fid0 ∈ root0.fids ∨ fid0 ∈ ofh.fids, root0[path'] = fnode(fid), fnode(fid1) = root0[path], root0[parent(path')].dir?, (root0 -- path)[parent(path')].dir?, fids-cons(root0, fs, ofh), py(user, parent(path'), root0, fs), py(user, parent(path), root0, fs), parent(path') ∈ root0, path ∈ root0, path' ∈ root0 ⊦ fid0 ≠ fid ∧ fid0 ∈ fs ↔ fid0 ∈ ((root0.fids \ {fid1} ) \ (path' ⊑ path ⊃ fnode(fid) -- restn(# path', path);fnode(fid)).fids) ∪ {fid1} ∨ fid0 ∈ ofh.fids, fid = fid1, path' = ε, fid ∈ ofh.fids, fid ∈ (root0.fids \ {fid1} ) \ (path' ⊑ path ⊃ fnode(fid) -- restn(# path', path);fnode(fid)).fids, path ⊑ path' |
⊦ fid ∈ fidb ∪ fidb0 ↔ fid ∈ fidb ∨ fid ∈ fidb0
fid0 ∈ fs ↔ fid0 ∈ root0.fids ∨ fid0 ∈ ofh.fids, root0[path'] = fnode(fid), fnode(fid1) = root0[path], (root0 -- path)[parent(path')].dir?, root0[parent(path')].dir?, fids-cons(root0, fs, ofh), py(user, parent(path), root0, fs), py(user, parent(path'), root0, fs), path' ∈ root0, path ∈ root0, parent(path') ∈ root0 ⊦ fid0 ≠ fid ∧ fid0 ∈ fs ↔ (fid0 ∈ (root0.fids \ {fid1} ) \ (path' ⊑ path ⊃ fnode(fid) -- restn(# path', path);fnode(fid)).fids ∨ fid0 ∈ {fid1} ) ∨ fid0 ∈ ofh.fids, fid = fid1, path' = ε, fid ∈ (root0.fids \ {fid1} ) \ (path' ⊑ path ⊃ fnode(fid) -- restn(# path', path);fnode(fid)).fids, fid ∈ ofh.fids, path ⊑ path'
Used terms: {fid1} , (root0.fids \ {fid1} ) \ (path' ⊑ path ⊃ fnode(fid) -- restn(# path', path);fnode(fid)).fids, fid0