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