| x1 + r ' = (x0 + H[r].nxt ') + r1 ' + x, path(H[H[r].nxt].nxt ' + x0 + H[r].nxt ', H), path(H[H[r].nxt].nxt ' + x1 + r ', H), r ∈ H, H[r].nxt ∈ H ⊦ H[r].nxt = H[H[r].nxt].nxt, H[r].nxt = null, r = H[H[r].nxt].nxt, dups(x1), r ∈ x1, H[H[r].nxt].nxt ∈ x1, r ∈ x0 |
x1 + r ' = (x0 + H[r].nxt ') + r1 ' + x, path(H[H[r].nxt].nxt ' + x0 + H[r].nxt ', H), path(H[H[r].nxt].nxt ' + x1 + r ', H), r ∈ H, H[r].nxt ∈ H, r = H[r].nxt ∨ r = r1 ∨ r ∈ x ⊦ H[r].nxt = H[H[r].nxt].nxt, H[r].nxt = null, r = H[H[r].nxt].nxt, dups(x1), r ∈ x1, H[H[r].nxt].nxt ∈ x1, r ∈ x0
Used simplifier rules: ⊦ r ∈ r0 ' ↔ r = r0; (s)% ⊦ r ∈ x0 + x1 ↔ r ∈ x0 ∨ r ∈ x1; (s)%a: ⊦ (x0 + x1) + x2 = x0 + x1 + x2; from specification list[reflist]%in-15: ⊦ x0 + r ' = x1 → r ∈ x1; (forward) from specification list[reflist]