| key0.data?, key0 ∈ ri, ¬ key.inode? ∨ key0.ino ≠ key.ino ∨ ¬ n ≤ key0.part * VFS_PAGE_SIZE ⊦ ((ri ⊖ ro) \ datakeys(key, n, ri))[key0] = ((ri \ datakeys(key, n, ri)) ⊖ ro)[key0], key ∈ ro, key0 ∈ ro, inodekey(key0.ino) ∈ ro |
key0 = datakey(m, m0), key0.data?, key0 ∈ ri, ¬ key.inode? ∨ m ≠ key.ino ∨ ¬ n ≤ m0 * VFS_PAGE_SIZE ⊦ ((ri ⊖ ro) \ datakeys(key, n, ri))[key0] = ((ri \ datakeys(key, n, ri)) ⊖ ro)[key0], inodekey(m) ∈ ro, key0 ∈ ro, key ∈ ro
Used simplifier rules: ⊦ key.data? → (m = key.ino ∧ m0 = key.part ↔ key = datakey(m, m0)); (elim) Used terms: key0, m, m0