| datakey(ino, pageno) ∈ pcache0, ∀ ino, pageno, ino0. datakey(ino, pageno) ∈ pcache0 → evict(ino0, pcache0)[datakey(ino, pageno)] = pcache0[datakey(ino, pageno)] ∨ ino = ino0 ⊦ evict(ino0, pcache0[key, pe])[datakey(ino, pageno)] = pcache0[datakey(ino, pageno)], datakey(ino, pageno) = key, ino = ino0 |
key = inodekey(ino1), datakey(ino, pageno) ∈ pcache0, ∀ ino, pageno, ino0. datakey(ino, pageno) ∈ pcache0 → evict(ino0, pcache0)[datakey(ino, pageno)] = pcache0[datakey(ino, pageno)] ∨ ino = ino0 ⊦ evict(ino0, pcache0[key, pe])[datakey(ino, pageno)] = pcache0[datakey(ino, pageno)], datakey(ino, pageno) = key, ino = ino0
key = datakey(ino1, ino2), datakey(ino, pageno) ∈ pcache0, ∀ ino, pageno, ino0. datakey(ino, pageno) ∈ pcache0 → evict(ino0, pcache0)[datakey(ino, pageno)] = pcache0[datakey(ino, pageno)] ∨ ino = ino0 ⊦ evict(ino0, pcache0[key, pe])[datakey(ino, pageno)] = pcache0[datakey(ino, pageno)], datakey(ino, pageno) = key, ino = ino0
key = dentrykey(ino1, name), datakey(ino, pageno) ∈ pcache0, ∀ ino, pageno, ino0. datakey(ino, pageno) ∈ pcache0 → evict(ino0, pcache0)[datakey(ino, pageno)] = pcache0[datakey(ino, pageno)] ∨ ino = ino0 ⊦ evict(ino0, pcache0[key, pe])[datakey(ino, pageno)] = pcache0[datakey(ino, pageno)], datakey(ino, pageno) = key, ino = ino0
Used simplifier rules: key freely generated by inodekey, datakey, dentrykey;;