| fid ∈ sdt.fids, ∀ str. str ∈ sdt → (∀ fid. fid ∈ sdt[str].fids → (∃ p. p ∈ sdt[str] ∧ sdt[str][p] = fnode(fid))), ∀ sdt0, fid, md. # sdt0 < # sdt → fid ∈ sdt0.fids ∧ (∀ str. str ∈ sdt0 → (∀ fid. fid ∈ sdt0[str].fids → (∃ p. p ∈ sdt0[str] ∧ sdt0[str][p] = fnode(fid)))) → (∃ p. p ∈ dnode(md, sdt0) ∧ dnode(md, sdt0)[p] = fnode(fid)) ⊦ sdt = ∅, ∃ p. p ∈ dnode(md, sdt) ∧ dnode(md, sdt)[p] = fnode(fid) |
⊦ sdt = ∅ ↔ ¬(∃ str, tree, sdt0. sdt = sdt0[str, tree] ∧ ¬ str ∈ sdt0)
fid ∈ sdt.fids, ∀ str. str ∈ sdt → (∀ fid. fid ∈ sdt[str].fids → (∃ p. p ∈ sdt[str] ∧ sdt[str][p] = fnode(fid))), ∀ sdt0, fid, md. # sdt0 < # sdt → fid ∈ sdt0.fids ∧ (∀ str. str ∈ sdt0 → (∀ fid. fid ∈ sdt0[str].fids → (∃ p. p ∈ sdt0[str] ∧ sdt0[str][p] = fnode(fid)))) → (∃ p. p ∈ dnode(md, sdt0) ∧ dnode(md, sdt0)[p] = fnode(fid)) ⊦ ∀ str, tree, sdt0. ¬(sdt = sdt0[str, tree] ∧ ¬ str ∈ sdt0), ∃ p. p ∈ dnode(md, sdt) ∧ dnode(md, sdt)[p] = fnode(fid)
Used terms: sdt