| icache[ino].inode = mkinode(m0, md0, boolvar, m1, m2, m3), ¬ boolvar, ino ∈ files, ino ∈ icache ⊦ ((files ⊕ pcache) ⊕ icache)[ino, mkfile(m, md, m1, files[ino].content ⊕ mkcontent(ino, pcache))] = (files[ino, (files[ino].meta:= md).size:= m] ⊕ pcache) ⊕ icache[ino, mkientry(false, (icache[ino].inode.meta:= md).size:= m)] |
icache[ino].inode = mkinode(m0, md0, false, m1, m2, m3), ino ∈ files, ino ∈ icache ⊦ ((files ⊕ pcache) ⊕ icache)[ino, mkfile(m, md, m1, files[ino].content ⊕ mkcontent(ino, pcache))] = (files[ino, (files[ino].meta:= md).size:= m] ⊕ pcache) ⊕ icache[ino, mkientry(false, mkinode(m0, md, false, m1, m2, m))]
Used simplifier rules: ⊦ mkinode(m, md, boolvar, m0, m1, m2).size:= m6 = mkinode(m, md, boolvar, m0, m1, m6); (s)%⊦ mkinode(m, md, boolvar, m0, m1, m2).meta:= md0 = mkinode(m, md0, boolvar, m0, m1, m2); (s)