| ofh0[fd] = mkfh(fid, mode, m), root.dir?, fids-cons(root, fs, ofh0), fd ∈ ofh0, n ∈ ofh0 ⊦ # (ofh0 -- fd).fids = 0, (ofh0 -- fd).fids = ∅, n = fd, ofh0[n].fid ∈ root.fids, ofh0[n].fid ∈ ofh0.fids, ofh0[n].fid ∈ fs, ¬ fid ∈ (ofh0 -- fd).fids ∧ ¬ fid ∈ root.fids |
⊦ fids-cons(root, fs, ofh) ∧ fd ∈ ofh ∧ ofh[fd] = mkfh(fid, mode, m) → fid ∈ fs
Used simplifier rules: fid-in-fs: ⊦ fids-cons(root, fs, ofh) ∧ fd ∈ ofh ∧ ofh[fd] = mkfh(fid, mode, m) → fid ∈ fs;%⊦ (fid = fh.fid ∧ mode = fh.mode) ∧ m = fh.pos ↔ fh = mkfh(fid, mode, m); (elim) Used terms: ofh0[n], fid0, mode0, m0