| inodekey(ino) ∈ ri ⊦ fs[ri[inodekey(ino)]].directory, fs[ri[inodekey(ino)]].nlink = 0 ∧ ino ≠ ROOT_INO, (fs[ri[inodekey(ino)]].nlink ≠ 0 ∨ ino = ROOT_INO) ∧ ( inodekey(ino) ∈ ri \ orphans(fs, ri) → mkfile(fs[ri[inodekey(ino)]].size, fs[ri[inodekey(ino)]].meta, fs[ri[inodekey(ino)]].nlink, abs-content(ino, fs, ri \ orphans(fs, ri))) = mkfile(fs[ri[inodekey(ino)]].size, fs[ri[inodekey(ino)]].meta, fs[ri[inodekey(ino)]].nlink, abs-content(ino, fs, ri))), (datakey(ino, n) ∈ ri \ orphans(fs, ri) → datakey(ino, n) ∈ ri) ∧ (datakey(ino, n) ∈ ri → fs[ri[datakey(ino, n)]].data = fs[(ri \ orphans(fs, ri))[datakey(ino, n)]].data) |
inodekey(ino) ∈ ri, datakey(ino, n) ∈ ri ⊦ fs[ri[inodekey(ino)]].directory, (datakey(ino, n) ∈ ri \ orphans(fs, ri) → datakey(ino, n) ∈ ri) ∧ (datakey(ino, n) ∈ ri → fs[ri[datakey(ino, n)]].data = fs[(ri \ orphans(fs, ri))[datakey(ino, n)]].data), (fs[ri[inodekey(ino)]].nlink ≠ 0 ∨ ino = ROOT_INO) ∧ ( inodekey(ino) ∈ ri \ orphans(fs, ri) → mkfile(fs[ri[inodekey(ino)]].size, fs[ri[inodekey(ino)]].meta, fs[ri[inodekey(ino)]].nlink, abs-content(ino, fs, ri \ orphans(fs, ri))) = mkfile(fs[ri[inodekey(ino)]].size, fs[ri[inodekey(ino)]].meta, fs[ri[inodekey(ino)]].nlink, abs-content(ino, fs, ri))), fs[ri[inodekey(ino)]].nlink = 0 ∧ ino ≠ ROOT_INO
Used simplifier rules: ⊦ key ∈ ri \ ks ↔ key ∈ ri ∧ ¬ key ∈ ks; (ws) Used formulas: datakey(ino, n) ∈ ri