| # ax = # kx, new(ax, fs), ri-cons(ri, fs), kx.toSet ⊆ dom ri ⊦ inodekey(ino) ∈ ri ∧ fs[ri[inodekey(ino)]].directory ↔ inodekey(ino) ∈ ri[kx, ax] ∧ fs[ax, fs[ri[kx]]][ri[kx, ax][inodekey(ino)]].directory, dups(ax), dups(kx) |
# ax = # kx ⊦ new(ax, fs) ∧ ¬ dups(ax) ∧ ¬ dups(kx) ∧ ri-cons(ri, fs) ∧ kx.toSet ⊆ dom ri ∧ key ∈ ri → fs[ax, fs[ri[kx]]][ri[kx, ax][key]] = fs[ri[key]]
Used simplifier rules: ⊦ # kx = # ax → (key ∈ ri[kx, ax] ↔ key ∈ ri ∨ key ∈ kx); (ws)% ⊦ kx.toSet ⊆ dom ri ∧ ¬ key ∈ ri → ¬ key ∈ kx; (s) Used terms: inodekey(ino), kx, ri, ax, fs