| fid ∈ tree.fids, ∀ sdt1, fid. # sdt1 < # sdt0[str, tree] → true → (fid ∈ sdt1.fids ↔ (∃ str, p. str ∈ sdt1 ∧ p ∈ sdt1[str] ∧ sdt1[str][p] = fnode(fid))) ⊦ str ∈ sdt0, ∃ str0, p. str0 ∈ sdt0[str, tree] ∧ p ∈ sdt0[str, tree][str0] ∧ sdt0[str, tree][str0][p] = fnode(fid) |
⊦ fid ∈ tree.fids ↔ (∃ p. p ∈ tree ∧ tree[p] = fnode(fid))
∃ p. p ∈ tree ∧ tree[p] = fnode(fid), ∀ sdt1, fid. # sdt1 < # sdt0[str, tree] → true → (fid ∈ sdt1.fids ↔ (∃ str, p. str ∈ sdt1 ∧ p ∈ sdt1[str] ∧ sdt1[str][p] = fnode(fid))) ⊦ str ∈ sdt0, ∃ str0, p. str0 ∈ sdt0[str, tree] ∧ p ∈ sdt0[str, tree][str0] ∧ sdt0[str, tree][str0][p] = fnode(fid)
Used terms: tree, fid