| m1 + 1 = # S0, m0 + 1 = n - n0, n0 < n, reach(source, dest, n), reach(source, dest, n0), dest ∈ S0, reachS(source, S, n0 + 1), a ∈ S0 ∧ reach(a, dest, n - n0) ∧ ¬ reach<(a, dest, n - n0) ∨ n0 < n ∧ b ∈ S ∧ reach(b, dest, n - n0 - 1) ∧ ¬ reach<(b, dest, n - n0 - 1), ∀ b. reach(source, b, n0 + 1) ∧ ¬ reach<(source, b, n0 + 1) → b ∈ S ∨ (∃ a. a ∈ S0 ∧ b ∈ succ(a) ∧ ¬ b ∈ S1), ∀ b. b ∈ S1 ↔ reach<(source, b, n0 + 1) ∨ (∃ a. b ∈ succ(a) ∧ reach(source, a, n0) ∧ ¬ reach<(source, a, n0) ∧ ¬ a ∈ S0) ⊦ S0 = ∅, n0 = n, reach<(source, dest, n), reach<(source, dest, n0) |
n = n1 + n0 ∧ n0 ≤ n, m1 + 1 = # S0, m0 + 1 = n1, n0 < n, reach(source, dest, n), reach(source, dest, n0), dest ∈ S0, reachS(source, S, n0 + 1), a ∈ S0 ∧ reach(a, dest, n1) ∧ ¬ reach<(a, dest, n1) ∨ n0 < n ∧ b ∈ S ∧ reach(b, dest, n1 - 1) ∧ ¬ reach<(b, dest, n1 - 1), ∀ b. reach(source, b, n0 + 1) ∧ ¬ reach<(source, b, n0 + 1) → b ∈ S ∨ (∃ a. a ∈ S0 ∧ b ∈ succ(a) ∧ ¬ b ∈ S1), ∀ b. b ∈ S1 ↔ reach<(source, b, n0 + 1) ∨ (∃ a. b ∈ succ(a) ∧ reach(source, a, n0) ∧ ¬ reach<(source, a, n0) ∧ ¬ a ∈ S0) ⊦ S0 = ∅, n0 = n, reach<(source, dest, n), reach<(source, dest, n0)
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ ¬ m ≤ n ↔ n < m], [CSIMPSEQ : ⊦ m < n → ¬ n < m], [CSIMPELIM : n ≤ m ⊦ n0 = m - n ↔ m = n0 + n])], [EXTRATERMS : (n, n0, n1)]]