| str ∈ sdt, p0 ∈ sdt[str], ∀ tree, q. p0 ∈ tree → (q ∈ tree -- p0 ↔ ¬ p0 ⊑ q ∧ q ∈ tree) ∨ p0 = ε ⊦ q ∈ dnode(md, sdt) -- (str ' + p0) ↔ ¬ str ' + p0 ⊑ q ∧ q ∈ dnode(md, sdt) |
⊦ ε ∈ tree
q = str0 + q0, p0 ∈ sdt[str], str ∈ sdt, ∀ tree, q. p0 ∈ tree → (q ∈ tree -- p0 ↔ ¬ p0 ⊑ q ∧ q ∈ tree) ∨ p0 = ε ⊦ q ∈ dnode(md, sdt) -- (str ' + p0) ↔ ¬ str ' + p0 ⊑ q ∧ q ∈ dnode(md, sdt)
Used simplifier rules: nil-in: ⊦ ε ∈ tree;%path freely generated by ε, +;;% ⊦ p ⊑ ε ↔ p = ε; (s)% ⊦ str ' + p ≠ ε; (s)%a: ⊦ (p + p0) + p1 = p + p0 + p1; from specification list[path]