| ((abs(sdt, entries[str, ino]) * D))(dirs), str ∈ sdt ⊦ str ∈ entries, ∃ tree, ino0, sdi0, sdt0. ¬ str ∈ sdt0 ∧ sdt = sdt0[str, tree] ∧ ¬ str ∈ sdi0 ∧ entries[str, ino] = sdi0[str, ino0] ∧ ((abs(tree, ino0) * abs(sdt0, sdi0) * D))(dirs) |
⊦ str ∈ sdt → abs(sdt, sdi) = (⌜str ∈ sdi⌝ ∧ abs(sdt -- str, sdi -- str) * abs(sdt[str], sdi[str]))
(((⌜str ∈ entries[str, ino]⌝ ∧ abs(sdt -- str, entries[str, ino] -- str) * abs(sdt[str], entries[str, ino][str])) * D))(dirs), str ∈ sdt ⊦ str ∈ entries, ∃ tree, ino0, sdi0, sdt0. ¬ str ∈ sdt0 ∧ sdt = sdt0[str, tree] ∧ ¬ str ∈ sdi0 ∧ entries[str, ino] = sdi0[str, ino0] ∧ ((abs(tree, ino0) * abs(sdt0, sdi0) * D))(dirs)
Used terms: str, entries[str, ino], sdt