| tree[p].dir? ↔ m ∈ dirs, abs(tree, ino)(dirs), afs-cons(dirs, files), fids-cons(tree, abs-files(files), ofh), ispath(p, ino, m, dirs, files), px(user, p, ino, dirs, files) ⊦ pw(user, p, tree, abs-files(files)) ↔ pw(user, p, ino, dirs, files) |
⊦ ispath(p, ino, m, dirs, files) ∧ px-parent(user, p, ino, dirs, files) ∧ abs(tree, ino)(dirs) ∧ fids-cons(tree, abs-files(files), ofh) ∧ afs-cons(dirs, files) → (pw(user, p, tree, abs-files(files)) ↔ pw(user, meta(ε, m, dirs, files)))
tree[p].dir? ↔ m ∈ dirs, abs(tree, ino)(dirs), afs-cons(dirs, files), fids-cons(tree, abs-files(files), ofh), ispath(p, ino, m, dirs, files), px(user, p, ino, dirs, files), px-parent(user, p, ino, dirs, files) ⊦ pw(user, meta(ε, m, dirs, files)) ↔ pw(user, p, ino, dirs, files)
Used simplifier rules: ⊦ px(user, p, ino, dirs, files) → px-parent(user, p, ino, dirs, files); (s) Used terms: ino, m, dirs, ofh, files, tree, p, user