| 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[datakey(ino1, ino2), pe])[datakey(ino, pageno)] = pcache0[datakey(ino, pageno)], datakey(ino, pageno) = datakey(ino1, ino2), ino = ino0, ino0 = 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)[datakey(ino, pageno)] = pcache0[datakey(ino, pageno)], datakey(ino, pageno) = datakey(ino1, ino2), ino = ino0, ino0 = ino1
Used simplifier rules: evict-rec-other: n ≠ ino ⊦ evict(n, pcache[datakey(ino, pageno), pe]) = evict(n, pcache)[datakey(ino, pageno), pe];% ⊦ key ≠ key0 → pcache[key0, pe][key] = pcache[key]; (s)