| # y = 1 + n0, path(a0 ' + y), ∀ a, b. reach(a, b, n0) ↔ (∃ x. path(x) ∧ # x = n0 + 1 ∧ x .first = a ∧ x .last = b) ⊦ y = [], ∃ c. reach(a0, c, n0) ∧ (a0 ' + y) .last ∈ succ(c) |
# y = 1 + n0, path(a0 ' + y), ∀ a, b. reach(a, b, n0) ↔ (∃ x. path(x) ∧ # x = n0 + 1 ∧ x .first = a ∧ x .last = b) ⊦ y = [], ∃ c. reach(a0, c, n0) ∧ y .last ∈ succ(c)
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ (x + y) + z = x + y + z], [CSIMPSEQ : ⊦ x ≠ [] → (a ' + x) .last = x .last])]]