| ⊦ ino = 0, mkfile(md, mkbuf(0)) = abs-files((files ++ ino)[ino, mkfile(0, md, 1, ∅)])[⌜ino⌝ ], ino ∈ files |
⊦ ino ∈ files → abs-files(files)[⌜ino⌝ ] = mkfile(files[ino].meta, (files[ino].content.stream to files[ino].size).buf)
Used simplifier rules: ⊦ files[ino, af][ino0] = (ino0 = ino ∧ ino ∈ files ⊃ af;files[ino0]); (s)%ino ≠ 0, ¬ ino ∈ files ⊦ ino0 ∈ files ++ ino ↔ ino0 = ino ∨ ino0 ∈ files; (s)% ⊦ mkfile(m, md, m0, content).meta = md; (s)% ⊦ mkfile(m, md, m0, content).content = content; (s)% ⊦ ∅.stream = σ⊥; (s)% ⊦ mkfile(m, md, m0, content).size = m; (s)% ⊦ σ0 to 0 = []; (s)% ⊦ [].buf = mkbuf(0); (s)% ⊦ ino ∈ files[ino0, af] ↔ ino ∈ files; (s) Used terms: ino, (files ++ ino)[ino, mkfile(0, md, 1, ∅)]