| tree[parent(p)].dir?, parent(p) ∈ tree, str + q0 ⊑ p, ∀ tree, p, tree0, ino0, ino1, D, dirs. tree[parent(p)].dir? ∧ parent(p) ∈ tree ∧ q0 ⊑ p → (((abs|(tree[p, tree0], ino0, q0, ino1) * D))(dirs) ↔ ((abs|(tree, ino0, q0, ino1) * D))(dirs)) ∨ p = ε ⊦ ((abs|(tree[p, tree0], ino0, str + q0, ino1) * D))(dirs) ↔ ((abs|(tree, ino0, str + q0, ino1) * D))(dirs), p = ε |
tree[parent(p)].dir?, parent(p) ∈ tree, str ' + q0 ⊑ p, ∀ tree, p, tree0, ino0, ino1, D, dirs. tree[parent(p)].dir? ∧ parent(p) ∈ tree ∧ q0 ⊑ p → (((abs|(tree[p, tree0], ino0, q0, ino1) * D))(dirs) ↔ ((abs|(tree, ino0, q0, ino1) * D))(dirs)) ∨ p = ε ⊦ ((abs|(tree[p, tree0], ino0, str ' + q0, ino1) * D))(dirs) ↔ ((abs|(tree, ino0, str ' + q0, ino1) * D))(dirs), p = ε
Used simplifier rules: ⊦ str + p = str ' + p; (s)