| r ∈ H, reachable-n(H, n, r, r0) ⊦ n = 0, r = null, ∃ x. path(r ' + x, H) ∧ (r ' + x).last = r0 |
∀ r, H, r0. r ∈ H ∧ reachable-n(H, n0, r, r0) → n0 = 0 ∨ r = null ∨ (∃ x. path(r ' + x, H) ∧ (r ' + x).last = r0), r ∈ H, reachable-n(H, n0 +1, r, r0) ⊦ n0 +1 = 0, r = null, ∃ x. path(r ' + x, H) ∧ (r ' + x).last = r0
Used simplifier rules: nat freely generated by 0, +1;;