| fs[ri[key]] = dentrynode(key0, m), fs[ri[key]].dentry?, (∅)[ri[inodekey(key0.ino)]].directory, inodekey(m) ∈ ri[key, ri[inodekey(key0.ino)]], key ∈ ri, ri[key] ∈ fs, inodekey(key0.ino) ∈ ri, inodekey(m) ∈ ri, ∀ key. key ∈ ri → ri[key] ∈ fs ∧ key-cons(key, fs[ri[key]]) ⊦ inodekey(key0.ino) = key, fs[ri[key]].data?, fs[ri[key]].directory, ri[inodekey(key0.ino)] ∈ fs, inodekey(m) ∈ ro, inodekey(key0.ino) ∈ ro |
fs[ri[key]] = dentrynode(key0, m), (∅)[ri[inodekey(key0.ino)]].directory, inodekey(m) ∈ ri[key, ri[inodekey(key0.ino)]], key ∈ ri, ri[key] ∈ fs, inodekey(key0.ino) ∈ ri, inodekey(m) ∈ ri, ∀ key. key ∈ ri → ri[key] ∈ fs ∧ key-cons(key, fs[ri[key]]) ⊦ dentrynode(key0, m).directory, ri[inodekey(key0.ino)] ∈ fs, inodekey(m) ∈ ro, inodekey(key0.ino) ∈ ro
Used simplifier rules: ⊦ ¬ dentrynode(key, m).data?; (s)% ⊦ dentrynode(key, m).dentry?; (s)