| tree[p] = fnode(⌜m⌝ ), abs-files(files)[⌜m⌝ ] = mkfile(md, buf), ((abs|(tree, ino, p, m) * D))(dirs), ispath(p, ino, m, dirs, files), p ∈ tree, ∀ ino. ¬ ino ∈ files ∨ ¬ ino ∈ dirs, ∀ ino. ⌜ino⌝ ∈ tree.fids → ino ∈ files ⊦ md = meta(ε, m, dirs, files), m ∈ dirs |
⊦ ino ∈ files → abs-files(files)[⌜ino⌝ ] = mkfile(files[ino].meta, (files[ino].content.stream to files[ino].size).buf)
Used simplifier rules: abs-files-at: ⊦ ino ∈ files → abs-files(files)[⌜ino⌝ ] = mkfile (files[ino].meta, (files[ino].content.stream to files[ino].size).buf);% ⊦ tree[p] = fnode(fid) ∧ p ∈ tree → fid ∈ tree.fids; (ss)% ⊦ mkfile(md, buf) = mkfile(md0, buf0) ↔ md = md0 ∧ buf = buf0; (ws)%¬ ino ∈ dirs ⊦ ino ∈ files → meta(ε, ino, dirs, files) = files[ino].meta; (s) Used terms: m