| tree[p] = dnode(md0, sdt0) ⊦ tree.dir? ∧ p ∈ tree ∧ q ∈ tree[p, dnode(md1, sdt1)] → tree[p, dnode(md1, sdt1)][q] = (q ⊑ p ⊃ tree[q][restn(# q, p), dnode(md1, sdt1)];tree[p, dnode(md0, sdt1)][q]) |
tree[p] = dnode(md0, sdt0), tree.dir?, p ∈ tree, q ∈ tree[p, dnode(md1, sdt1)] ⊦ tree[p, dnode(md1, sdt1)][q] = (q ⊑ p ⊃ tree[q][restn(# q, p), dnode(md1, sdt1)];tree[p, dnode(md0, sdt1)][q])