| ad = mkdir(m, md, m0, m1, entries), m = # entries, ((abs(tree1, ino) * D1))(dirs), (((ino => ad * abs(sdt, entries)) * D0))(dirs), ∀ ino. ⌜ino⌝ ∈ tree1.fids → ino ∈ files, ∀ ino. ¬ ino ∈ files ∨ ¬ ino ∈ dirs, ∀ ino0. ⌜ino0⌝ ∈ sdt.fids → ino0 ∈ files ⊦ tree1.dir? ∧ md = tree1.meta |
(((ino => mkdir(# entries, md, m0, m1, entries) * abs(sdt, entries)) * D0))(dirs), ((abs(tree1, ino) * D1))(dirs), ∀ ino0. ⌜ino0⌝ ∈ sdt.fids → ino0 ∈ files, ∀ ino. ¬ ino ∈ files ∨ ¬ ino ∈ dirs, ∀ ino. ⌜ino⌝ ∈ tree1.fids → ino ∈ files ⊦ tree1.dir? ∧ md = tree1.meta