| icache[ino, mkientry(false, inode)][ino0] = mkientry(boolvar0, inode1), icache[ino] = mkientry(false, inode0), pcache[datakey(ino0, n)] = mkpentry(boolvar, buf), ino0 = ino, ino ∈ icache, ino0 ∈ files, ∀ ino0. ino0 ∈ files → (ino0 ∈ icache → ¬ icache[ino0].dirty) ∧ (∀ n. datakey(ino0, n) ∈ pcache → ¬ pcache[datakey(ino0, n)].dirty) ⊦ (ino0 ∈ icache[ino, mkientry(false, inode)] → ¬ boolvar0) ∧ (datakey(ino0, n) ∈ pcache → ¬ boolvar) |
icache[ino] = mkientry(false, inode0), pcache[datakey(ino, n)] = mkpentry(true, buf), datakey(ino, n) ∈ pcache, ino ∈ icache, ino ∈ files, ∀ ino0. ino0 ∈ files → (ino0 ∈ icache → ¬ icache[ino0].dirty) ∧ (∀ n. datakey(ino0, n) ∈ pcache → ¬ pcache[datakey(ino0, n)].dirty) ⊦
Used simplifier rules: ⊦ ino ∈ icache[ino, ie]; (s)%⊦ mkientry(boolvar, inode) = mkientry(boolvar0, inode0) ↔ (boolvar ↔ boolvar0) ∧ inode = inode0; (ws)% ⊦ icache[ino, ie][ino] = ie; (s)