| reachable-n(H, (m2 + 1) + m1 * m2 + m1, r, r1), reachable-n(H, m2 + 1, r, r2), m1 * m2 ≤ 1, reachable-n(H, m1 + 1, r2, r2), reachable-n(H, 2 + m2 + m1, r, r2), ∀ n. reachable-n(H, (m2 + 1) + n * m1 + n, r, r2) ⊦ reachable-n(H, m1 * m2 + m1, r2, r1), reachable-n(H, 2 * (m1 * m2 + m2 + m1) + 2, r, r1) |
⊦ m ≠ 0 → (m ≤ 1 ↔ m = 1)
¬ m1 * m2 ≠ 0, reachable-n(H, (m2 + 1) + m1 * m2 + m1, r, r1), reachable-n(H, m2 + 1, r, r2), m1 * m2 ≤ 1, reachable-n(H, m1 + 1, r2, r2), reachable-n(H, 2 + m2 + m1, r, r2), ∀ n. reachable-n(H, (m2 + 1) + n * m1 + n, r, r2) ⊦ reachable-n(H, m1 * m2 + m1, r2, r1), reachable-n(H, 2 * (m1 * m2 + m2 + m1) + 2, r, r1)
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ m0 * m = 1 ↔ m0 = 1 ∧ m = 1], [CSIMPSEQ : ⊦ m0 * m * n = (m0 * m) * n], [CSIMPSEQ : ⊦ m * n = n * m], [CSIMPSEQ : ⊦ m0 * m = 0 ↔ m0 = 0 ∨ m = 0], [CSIMPSEQ : ⊦ m0 * 1 = m0], [CSIMPSEQ : ⊦ m + m = 2 * m], [CSIMPSEQ : ⊦ (m + n0) + n1 = m + n0 + n1], [CSIMPSEQ : ⊦ m + n = n + m], [CSIMPFORWARD : ⊦ reachable-n(H, n, r, r0) ∧ reachable-n(H, n, r, r1) → r0 = r1])], [EXTRATERMS : (m1 * m2)]]