| fid = ⌜ino⌝ ⊦ ino = 0, ino ∈ files, (fid ∈ abs-files(files)[⌜ino⌝ , mkfile(md, mkbuf(0))] ↔ fid ∈ abs-files((files ++ ino)[ino, mkfile(0, md, 1, ∅)])) ∧ ( fid ∈ abs-files(files)[⌜ino⌝ , mkfile(md, mkbuf(0))] → abs-files(files)[⌜ino⌝ , mkfile(md, mkbuf(0))][fid] = abs-files((files ++ ino)[ino, mkfile(0, md, 1, ∅)])[fid]) |
⊦ ⌜ino⌝ ∈ abs-files(files) ↔ ino ∈ files
⊦ ino = 0, mkfile(md, mkbuf(0)) = abs-files((files ++ ino)[ino, mkfile(0, md, 1, ∅)])[⌜ino⌝ ], ino ∈ files
Used simplifier rules: abs-files-in: ⊦ ⌜ino⌝ ∈ abs-files(files) ↔ ino ∈ files;% ⊦ fs[fid, f][fid] = f; (s)%ino ≠ 0, ¬ ino ∈ files ⊦ ino0 ∈ files ++ ino ↔ ino0 = ino ∨ ino0 ∈ files; (s)% ⊦ ino ∈ files[ino0, af] ↔ ino ∈ files; (s)% ⊦ fid ∈ fs[fid, f]; (s)