| tree[p] = dnode(md0, sdt), p ∈ tree ⊦ tree[p, dnode(md1, sdt)].fids = tree.fids |
⊦ dnode(md, sdt).fids = sdt.fids
tree[str + p0] = dnode(md0, sdt), str + p0 ∈ tree, ∀ tree, md0, sdt, md1. tree[p0] = dnode(md0, sdt) ∧ p0 ∈ tree → tree[p0, dnode(md1, sdt)].fids = tree.fids ⊦ tree[str + p0, dnode(md1, sdt)].fids = tree.fids
Used simplifier rules: fids-dnode: ⊦ dnode(md, sdt).fids = sdt.fids;%path freely generated by ε, +;;% ⊦ tree[ε] = tree; (s)% ⊦ tree[ε, tree0] = tree0; (s)% ⊦ ε ∈ tree; (s)