| ⌜ino⌝ ∈ abs-files(files)[⌜ino⌝ , mkfile(md0, buf)] ↔ ⌜ino⌝ ∈ abs-files(files[ino, mkfile(m, md, m0, content)]), abs-files(files)[⌜ino⌝ , mkfile(md0, buf)][⌜ino⌝ ] = abs-files(files[ino, mkfile(m, md, m0, content)])[⌜ino⌝ ], ino ∈ files ⊦ md0 = md ∧ buf = (content.stream to m).buf |
⊦ ⌜ino⌝ ∈ abs-files(files) ↔ ino ∈ files
mkfile(md0, buf) = abs-files(files[ino, mkfile(m, md, m0, content)])[⌜ino⌝ ], ino ∈ files ⊦ md0 = md ∧ buf = (content.stream to m).buf
Used simplifier rules: abs-files-in: ⊦ ⌜ino⌝ ∈ abs-files(files) ↔ ino ∈ files;% ⊦ ino ∈ files[ino0, af] ↔ ino ∈ files; (s)% ⊦ fid ∈ fs[fid, f]; (s)% ⊦ fs[fid, f][fid] = f; (s)