| ino ∈ files ⊦ (⌜ino0⌝ ∈ abs-files(files)[⌜ino⌝ , mkfile(md, (content.stream to m).buf)] ↔ ino0 ∈ files) ∧ ( ⌜ino0⌝ ∈ abs-files(files)[⌜ino⌝ , mkfile(md, (content.stream to m).buf)] → abs-files(files)[⌜ino⌝ , mkfile(md, (content.stream to m).buf)][⌜ino0⌝ ] = abs-files(files[ino, mkfile(m, md, m0, content)])[⌜ino0⌝ ]) |
⊦ ino ∈ files → abs-files(files)[⌜ino⌝ ] = mkfile(files[ino].meta, (files[ino].content.stream to files[ino].size).buf)
ino ∈ files ⊦ ino0 ∈ files[ino, mkfile(m, md, m0, content)], (⌜ino0⌝ ∈ abs-files(files)[⌜ino⌝ , mkfile(md, (content.stream to m).buf)] ↔ ino0 ∈ files) ∧ ( ⌜ino0⌝ ∈ abs-files(files)[⌜ino⌝ , mkfile(md, (content.stream to m).buf)] → abs-files(files)[⌜ino⌝ , mkfile(md, (content.stream to m).buf)][⌜ino0⌝ ] = abs-files(files[ino, mkfile(m, md, m0, content)])[⌜ino0⌝ ])
ino ∈ files, ino0 ∈ files[ino, mkfile(m, md, m0, content)] ⊦ (⌜ino0⌝ ∈ abs-files(files)[⌜ino⌝ , mkfile(md, (content.stream to m).buf)] ↔ ino0 ∈ files) ∧ ( ⌜ino0⌝ ∈ abs-files(files)[⌜ino⌝ , mkfile(md, (content.stream to m).buf)] → abs-files(files)[⌜ino⌝ , mkfile(md, (content.stream to m).buf)][⌜ino0⌝ ] = mkfile (files[ino, mkfile(m, md, m0, content)][ino0].meta, (files[ino, mkfile(m, md, m0, content)][ino0].content.stream to files[ino, mkfile(m, md, m0, content)][ino0].size).buf))
Used terms: ino0, files[ino, mkfile(m, md, m0, content)]