| err = ESUCCESS, err0 = err1, fid = root[path].fid, root.dir?, fids-cons(root, fs, ofh), pre-open(path, mode, err, user, root, fs, ofh) ⊦ ∃ n. ¬ n ∈ ofh |
root.dir?, fids-cons(root, fs, ofh), path ∈ root, mode = MODE_R ∨ mode = MODE_RW → pr(user, path, root, fs), mode = MODE_W ∨ mode = MODE_RW → pw(user, path, root, fs) ⊦ root[path].dir?, ∃ n. ¬ n ∈ ofh
Used simplifier rules: ⊦ pre-open(p, mode, ESUCCESS, user, root, fs, ofh) ↔ p ∈ root ∧ ¬ root[p].dir? ∧ (mode = MODE_R ∨ mode = MODE_RW → pr(user, p, root, fs)) ∧ (mode = MODE_W ∨ mode = MODE_RW → pw(user, p, root, fs)); (s)