| p ∈ links(fid, dnode(md, sdt[str, tree])) ⊦ str ∈ sdt, p ∈ links(fid, dnode(md, sdt)), p ≠ ε ∧ p.head = str ∧ p.tail ∈ links(fid, tree) |
⊦ p ∈ links(fid, tree) ↔ p ∈ tree ∧ tree[p] = fnode(fid)
dnode(md, sdt[str, tree])[p] = fnode(fid), p ∈ dnode(md, sdt[str, tree]) ⊦ p = ε, str ∈ sdt, p ∈ links(fid, dnode(md, sdt)), p.tail ∈ links(fid, tree) ∧ p.head = str
Used simplifier rules: in-plinks: ⊦ p ∈ links(fid, tree) ↔ p ∈ tree ∧ tree[p] = fnode(fid);% ⊦ fnode(fid) ≠ dnode(md, sdt); (s)% ⊦ tree[ε] = tree; (s)