| ∀ n0. n0 < m → nP0(n + n0) ⊆ nP1(n + n0) ⊦ nP0 ⊗_(n, m) ⊆ nP1 ⊗_(n, m) |
¬ nP0 ⊗_(n, m) ⊆ nP1 ⊗_(n, m), ∀ n0. n0 < m → nP0(n + n0) ⊆ nP1(n + n0) ⊦
| ¬ nP0 ⊗_(n, m) ⊆ nP1 ⊗_(n, m), ∀ n0. n0 < m → nP0(n + n0) ⊆ nP1(n + n0) ⊦ |
¬ nP0 ⊗_(n, m0 +1) ⊆ nP1 ⊗_(n, m0 +1), ∀ n0. n0 < m0 +1 → nP0(n + n0) ⊆ nP1(n + n0), ∀ nP0, n, nP1. ¬(¬ nP0 ⊗_(n, m0) ⊆ nP1 ⊗_(n, m0) ∧ (∀ n0. n0 < m0 → nP0(n + n0) ⊆ nP1(n + n0))) ⊦
Used simplifier rules: Sep-base: ⊦ nP ⊗_(n, 0) = emp; nat freely generated by 0, +1;; ⊦ hP ⊆ hP; (s)
| ¬ nP0 ⊗_(n, m0 +1) ⊆ nP1 ⊗_(n, m0 +1), ∀ n0. n0 < m0 +1 → nP0(n + n0) ⊆ nP1(n + n0), ∀ nP0, n, nP1. ¬(¬ nP0 ⊗_(n, m0) ⊆ nP1 ⊗_(n, m0) ∧ (∀ n0. n0 < m0 → nP0(n + n0) ⊆ nP1(n + n0))) ⊦ |
¬ nP0 ⊗_(n, m0 + 1) ⊆ nP1 ⊗_(n, m0 + 1), ∀ nP, n0, nP2. nP ⊗_(n0, m0) ⊆ nP2 ⊗_(n0, m0) ∨ ¬(∀ n1. n1 < m0 → nP(n0 + n1) ⊆ nP2(n0 + n1)), ∀ n0. ¬ m0 < n0 → nP0(n + n0) ⊆ nP1(n + n0) ⊦
Used simplifier rules: c: ⊦ m + n = n + m; from specification nat-basic a: ⊦ (m + n0) + n1 = m + n0 + n1; from specification nat-basic ⊦ m < n + 1 ↔ ¬ n < m; (s) ⊦ m +1 = m + 1; (s)
| ¬ nP0 ⊗_(n, m0 + 1) ⊆ nP1 ⊗_(n, m0 + 1), ∀ nP, n0, nP2. nP ⊗_(n0, m0) ⊆ nP2 ⊗_(n0, m0) ∨ ¬(∀ n1. n1 < m0 → nP(n0 + n1) ⊆ nP2(n0 + n1)), ∀ n0. ¬ m0 < n0 → nP0(n + n0) ⊆ nP1(n + n0) ⊦ |
⊦ nP ⊗_(n, m + 1) = nP(n) * nP ⊗_(n + 1, m)
¬ nP0(n) * nP0 ⊗_(n + 1, m0) ⊆ nP1 ⊗_(n, m0 + 1), ∀ n0. ¬ m0 < n0 → nP0(n + n0) ⊆ nP1(n + n0), ∀ nP, n0, nP2. nP ⊗_(n0, m0) ⊆ nP2 ⊗_(n0, m0) ∨ ¬(∀ n1. n1 < m0 → nP(n0 + n1) ⊆ nP2(n0 + n1)) ⊦
Used terms: m0, n, nP0
| ⊦ nP ⊗_(n, m + 1) = nP(n) * nP ⊗_(n + 1, m) |
| ¬ nP0(n) * nP0 ⊗_(n + 1, m0) ⊆ nP1 ⊗_(n, m0 + 1), ∀ n0. ¬ m0 < n0 → nP0(n + n0) ⊆ nP1(n + n0), ∀ nP, n0, nP2. nP ⊗_(n0, m0) ⊆ nP2 ⊗_(n0, m0) ∨ ¬(∀ n1. n1 < m0 → nP(n0 + n1) ⊆ nP2(n0 + n1)) ⊦ |
⊦ nP ⊗_(n, m + 1) = nP(n) * nP ⊗_(n + 1, m)
¬ nP0(n) * nP0 ⊗_(n + 1, m0) ⊆ nP1(n) * nP1 ⊗_(n + 1, m0), ∀ nP, n0, nP2. nP ⊗_(n0, m0) ⊆ nP2 ⊗_(n0, m0) ∨ ¬(∀ n1. n1 < m0 → nP(n0 + n1) ⊆ nP2(n0 + n1)), ∀ n0. ¬ m0 < n0 → nP0(n + n0) ⊆ nP1(n + n0) ⊦
Used terms: m0, n, nP1
| ⊦ nP ⊗_(n, m + 1) = nP(n) * nP ⊗_(n + 1, m) |
| ¬ nP0(n) * nP0 ⊗_(n + 1, m0) ⊆ nP1(n) * nP1 ⊗_(n + 1, m0), ∀ nP, n0, nP2. nP ⊗_(n0, m0) ⊆ nP2 ⊗_(n0, m0) ∨ ¬(∀ n1. n1 < m0 → nP(n0 + n1) ⊆ nP2(n0 + n1)), ∀ n0. ¬ m0 < n0 → nP0(n + n0) ⊆ nP1(n + n0) ⊦ |
⊦ hP0 ⊆ hP1 ∧ hP2 ⊆ hP3 → hP0 * hP2 ⊆ hP1 * hP3
¬ nP0(n) * nP0 ⊗_(n + 1, m0) ⊆ nP1(n) * nP1 ⊗_(n + 1, m0), ∀ n0. ¬ m0 < n0 → nP0(n + n0) ⊆ nP1(n + n0), ∀ nP, n0, nP2. nP ⊗_(n0, m0) ⊆ nP2 ⊗_(n0, m0) ∨ ¬(∀ n1. n1 < m0 → nP(n0 + n1) ⊆ nP2(n0 + n1)) ⊦ nP0(n) ⊆ nP1(n) ∧ nP0 ⊗_(n + 1, m0) ⊆ nP1 ⊗_(n + 1, m0)
Used terms: nP1 ⊗_(n + 1, m0), nP1(n), nP0 ⊗_(n + 1, m0), nP0(n)
| ⊦ hP0 ⊆ hP1 ∧ hP2 ⊆ hP3 → hP0 * hP2 ⊆ hP1 * hP3 |
| ¬ nP0(n) * nP0 ⊗_(n + 1, m0) ⊆ nP1(n) * nP1 ⊗_(n + 1, m0), ∀ n0. ¬ m0 < n0 → nP0(n + n0) ⊆ nP1(n + n0), ∀ nP, n0, nP2. nP ⊗_(n0, m0) ⊆ nP2 ⊗_(n0, m0) ∨ ¬(∀ n1. n1 < m0 → nP(n0 + n1) ⊆ nP2(n0 + n1)) ⊦ nP0(n) ⊆ nP1(n) ∧ nP0 ⊗_(n + 1, m0) ⊆ nP1 ⊗_(n + 1, m0) |
nP0(n) ⊆ nP1(n), ¬ nP0(n) * nP0 ⊗_(n + 1, m0) ⊆ nP1(n) * nP1 ⊗_(n + 1, m0), ∀ nP, n0, nP2. nP ⊗_(n0, m0) ⊆ nP2 ⊗_(n0, m0) ∨ ¬(∀ n1. n1 < m0 → nP(n0 + n1) ⊆ nP2(n0 + n1)), ∀ n0. ¬ m0 < n0 → nP0(n + n0) ⊆ nP1(n + n0) ⊦ nP0(n) ⊆ nP1(n) ∧ nP0 ⊗_(n + 1, m0) ⊆ nP1 ⊗_(n + 1, m0)
¬ nP0(n) ⊆ nP1(n), ¬ nP0(n) * nP0 ⊗_(n + 1, m0) ⊆ nP1(n) * nP1 ⊗_(n + 1, m0), ∀ nP, n0, nP2. nP ⊗_(n0, m0) ⊆ nP2 ⊗_(n0, m0) ∨ ¬(∀ n1. n1 < m0 → nP(n0 + n1) ⊆ nP2(n0 + n1)), ∀ n0. ¬ m0 < n0 → nP0(n + n0) ⊆ nP1(n + n0) ⊦ nP0(n) ⊆ nP1(n) ∧ nP0 ⊗_(n + 1, m0) ⊆ nP1 ⊗_(n + 1, m0)
Used formulas: nP0(n) ⊆ nP1(n)
| nP0(n) ⊆ nP1(n), ¬ nP0(n) * nP0 ⊗_(n + 1, m0) ⊆ nP1(n) * nP1 ⊗_(n + 1, m0), ∀ nP, n0, nP2. nP ⊗_(n0, m0) ⊆ nP2 ⊗_(n0, m0) ∨ ¬(∀ n1. n1 < m0 → nP(n0 + n1) ⊆ nP2(n0 + n1)), ∀ n0. ¬ m0 < n0 → nP0(n + n0) ⊆ nP1(n + n0) ⊦ nP0(n) ⊆ nP1(n) ∧ nP0 ⊗_(n + 1, m0) ⊆ nP1 ⊗_(n + 1, m0) |
nP0(n) ⊆ nP1(n), ¬ nP0(n) * nP0 ⊗_(n + 1, m0) ⊆ nP1(n) * nP1 ⊗_(n + 1, m0), ¬ nP0 ⊗_(n + 1, m0) ⊆ nP1 ⊗_(n + 1, m0), ∀ n0. ¬ m0 < n0 → nP0(n + n0) ⊆ nP1(n + n0), ∀ nP, n0, nP2. nP ⊗_(n0, m0) ⊆ nP2 ⊗_(n0, m0) ∨ ¬(∀ n1. n1 < m0 → nP(n0 + n1) ⊆ nP2(n0 + n1)) ⊦
| nP0(n) ⊆ nP1(n), ¬ nP0(n) * nP0 ⊗_(n + 1, m0) ⊆ nP1(n) * nP1 ⊗_(n + 1, m0), ¬ nP0 ⊗_(n + 1, m0) ⊆ nP1 ⊗_(n + 1, m0), ∀ n0. ¬ m0 < n0 → nP0(n + n0) ⊆ nP1(n + n0), ∀ nP, n0, nP2. nP ⊗_(n0, m0) ⊆ nP2 ⊗_(n0, m0) ∨ ¬(∀ n1. n1 < m0 → nP(n0 + n1) ⊆ nP2(n0 + n1)) ⊦ |
nP0(n) ⊆ nP1(n), ¬ nP0(n) * nP0 ⊗_(n + 1, m0) ⊆ nP1(n) * nP1 ⊗_(n + 1, m0), ¬ nP0 ⊗_(n + 1, m0) ⊆ nP1 ⊗_(n + 1, m0), ∀ n0. ¬ m0 < n0 → nP0(n + n0) ⊆ nP1(n + n0), nP0 ⊗_(n + 1, m0) ⊆ nP1 ⊗_(n + 1, m0) ∨ ¬(∀ n1. n1 < m0 → nP0((n + 1) + n1) ⊆ nP1((n + 1) + n1)) ⊦
Used terms: nP0, n + 1, nP1
| nP0(n) ⊆ nP1(n), ¬ nP0(n) * nP0 ⊗_(n + 1, m0) ⊆ nP1(n) * nP1 ⊗_(n + 1, m0), ¬ nP0 ⊗_(n + 1, m0) ⊆ nP1 ⊗_(n + 1, m0), ∀ n0. ¬ m0 < n0 → nP0(n + n0) ⊆ nP1(n + n0), nP0 ⊗_(n + 1, m0) ⊆ nP1 ⊗_(n + 1, m0) ∨ ¬(∀ n1. n1 < m0 → nP0((n + 1) + n1) ⊆ nP1((n + 1) + n1)) ⊦ |
n1 < m0, nP0(n) ⊆ nP1(n), ¬ nP0((n + 1) + n1) ⊆ nP1((n + 1) + n1), ¬ nP0 ⊗_(n + 1, m0) ⊆ nP1 ⊗_(n + 1, m0), ¬ nP0(n) * nP0 ⊗_(n + 1, m0) ⊆ nP1(n) * nP1 ⊗_(n + 1, m0), ∀ n0. ¬ m0 < n0 → nP0(n + n0) ⊆ nP1(n + n0) ⊦
Used simplifier rules: ⊦ m < n → n ≠ 0; (s) f: ⊦ m < n → n ≠ 0; (forward) from specification nat-basic
| n1 < m0, nP0(n) ⊆ nP1(n), ¬ nP0((n + 1) + n1) ⊆ nP1((n + 1) + n1), ¬ nP0 ⊗_(n + 1, m0) ⊆ nP1 ⊗_(n + 1, m0), ¬ nP0(n) * nP0 ⊗_(n + 1, m0) ⊆ nP1(n) * nP1 ⊗_(n + 1, m0), ∀ n0. ¬ m0 < n0 → nP0(n + n0) ⊆ nP1(n + n0) ⊦ |
Used simplifier rules: ⊦ m < n + 1 ↔ ¬ n < m; (s) a: ⊦ (m + n0) + n1 = m + n0 + n1; from specification nat-basic c: ⊦ m + n = n + m; from specification nat-basic Used terms: n1 + 1
| ¬ nP0(n) ⊆ nP1(n), ¬ nP0(n) * nP0 ⊗_(n + 1, m0) ⊆ nP1(n) * nP1 ⊗_(n + 1, m0), ∀ nP, n0, nP2. nP ⊗_(n0, m0) ⊆ nP2 ⊗_(n0, m0) ∨ ¬(∀ n1. n1 < m0 → nP(n0 + n1) ⊆ nP2(n0 + n1)), ∀ n0. ¬ m0 < n0 → nP0(n + n0) ⊆ nP1(n + n0) ⊦ nP0(n) ⊆ nP1(n) ∧ nP0 ⊗_(n + 1, m0) ⊆ nP1 ⊗_(n + 1, m0) |
¬ nP0(n) ⊆ nP1(n), ¬ nP0(n) * nP0 ⊗_(n + 1, m0) ⊆ nP1(n) * nP1 ⊗_(n + 1, m0), ∀ n0. ¬ m0 < n0 → nP0(n + n0) ⊆ nP1(n + n0), ∀ nP, n0, nP2. nP ⊗_(n0, m0) ⊆ nP2 ⊗_(n0, m0) ∨ ¬(∀ n1. n1 < m0 → nP(n0 + n1) ⊆ nP2(n0 + n1)) ⊦
| ¬ nP0(n) ⊆ nP1(n), ¬ nP0(n) * nP0 ⊗_(n + 1, m0) ⊆ nP1(n) * nP1 ⊗_(n + 1, m0), ∀ n0. ¬ m0 < n0 → nP0(n + n0) ⊆ nP1(n + n0), ∀ nP, n0, nP2. nP ⊗_(n0, m0) ⊆ nP2 ⊗_(n0, m0) ∨ ¬(∀ n1. n1 < m0 → nP(n0 + n1) ⊆ nP2(n0 + n1)) ⊦ |
Used simplifier rules: ⊦ ¬ n < 0; (s) ⊦ n + 0 = n; (s) a: ⊦ (m + n0) + n1 = m + n0 + n1; from specification nat-basic c: ⊦ m + n = n + m; from specification nat-basic Used terms: 0
The following image shows the proof tree of sequent calculus. The proved goal is at the bottom. You can click on the nodes to view additional rules. See here for details on colors in a proof tree.