| # ax = # kx, new(ax, fs), ri-cons(ri, fs), kx.toSet ⊆ dom ri ⊦ dups(kx), dups(ax), (inodekey(ino) ∈ ri ∧ fs[ri[inodekey(ino)]].directory ↔ inodekey(ino) ∈ ri[kx, ax] ∧ fs[ax, fs[ri[kx]]][ri[kx, ax][inodekey(ino)]].directory) ∧ ( inodekey(ino) ∈ ri ∧ fs[ri[inodekey(ino)]].directory → mkdir (fs[ri[inodekey(ino)]].size, fs[ri[inodekey(ino)]].meta, fs[ri[inodekey(ino)]].nlink, fs[ri[inodekey(ino)]].nsubdirs, abs-children(ino, fs, ri)) = mkdir (fs[ri[inodekey(ino)]].size, fs[ri[inodekey(ino)]].meta, fs[ri[inodekey(ino)]].nlink, fs[ri[inodekey(ino)]].nsubdirs, abs-children(ino, fs[ax, fs[ri[kx]]], ri[kx, ax]))) |
# ax = # kx, new(ax, fs), ri-cons(ri, fs), kx.toSet ⊆ dom ri ⊦ inodekey(ino) ∈ ri ∧ fs[ri[inodekey(ino)]].directory ↔ inodekey(ino) ∈ ri[kx, ax] ∧ fs[ax, fs[ri[kx]]][ri[kx, ax][inodekey(ino)]].directory, dups(ax), dups(kx)
# ax = # kx, fs[ri[inodekey(ino)]].directory, new(ax, fs), ri-cons(ri, fs), inodekey(ino) ∈ ri, kx.toSet ⊆ dom ri ⊦ mkdir (fs[ri[inodekey(ino)]].size, fs[ri[inodekey(ino)]].meta, fs[ri[inodekey(ino)]].nlink, fs[ri[inodekey(ino)]].nsubdirs, abs-children(ino, fs, ri)) = mkdir (fs[ri[inodekey(ino)]].size, fs[ri[inodekey(ino)]].meta, fs[ri[inodekey(ino)]].nlink, fs[ri[inodekey(ino)]].nsubdirs, abs-children(ino, fs[ax, fs[ri[kx]]], ri[kx, ax])), dups(ax), dups(kx)