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