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