| ofh0[fd] = mkfh(fid, mode, m), root.dir?, fids-cons(root, fs, ofh0), fd ∈ ofh0, fid0 ∈ fs, fid0 ∈ root.fids ∨ fid0 ∈ ofh0.fids ⊦ fid0 ≠ fid ∧ fid0 ∈ fs ↔ fid0 ∈ root.fids ∨ fid0 ∈ (ofh0 -- fd).fids, fid ∈ (ofh0 -- fd).fids, fid ∈ root.fids |
ofh0[fd] = mkfh(fid, mode, m), root.dir?, fids-cons(root, fs, ofh0), fid0 ∈ ofh0.fids, fd ∈ ofh0, fid0 ∈ fs ⊦ # ofh0.fids = 0, ofh0.fids = ∅, fid0 = fid, fid0 ∈ (ofh0 -- fd).fids, fid0 ∈ root.fids, fid ∈ (ofh0 -- fd).fids, fid ∈ root.fids
Used simplifier rules: size-zero-01: ⊦ fids ≠ ∅ → # fids ≠ 0; (forward) from specification set-basic[fidset]%ne-01: ⊦ fid ∈ fids → fids ≠ ∅; (forward) from specification set-basic[fidset]