| (H[r].nxt ' + x0).last ∈ H, path(H[r].nxt ' + x0, H), r ∈ H, ∀ r1, H0, ce0. path(r1 ' + x0, H0) → (∃ x1. path(r1 ' + x1, H0[(r1 ' + x1).last, ce0]) ∧ (r1 ' + x1).last = (r1 ' + x0).last) ⊦ r = null, ∃ x. path(r ' + x, H[(r ' + x).last, ce]) ∧ (r ' + x).last = (H[r].nxt ' + x0).last |
(H[r].nxt ' + x0).last ∈ H, path(H[r].nxt ' + x0, H), r ∈ H, path(H[r].nxt ' + x0, H) → (∃ x1. path(H[r].nxt ' + x1, H[(H[r].nxt ' + x1).last, ce]) ∧ (H[r].nxt ' + x1).last = (H[r].nxt ' + x0).last) ⊦ r = null, ∃ x. path(r ' + x, H[(r ' + x).last, ce]) ∧ (r ' + x).last = (H[r].nxt ' + x0).last
Used terms: H[r].nxt, H, ce