| stutf(nσ) ∧ ⌜m⌝ < # nσ ∧ 2 + n2 ≤ nσ[m] → (∃ m0. m0 ≤ m ∧ nσ[m0] = 2 + n2), nσ[n] = n2 + 1, # nσ = ∞, n2 + 1 < nσ[m], n < m, stutf(nσ), ∀ n. nσ[n] ≠ (n2 + 1) + 1, ∀ n0, nσ. n0 < n2 +1 → (∀ n1. nσ[n1] ≠ n0 + 1) ∧ # nσ = ∞ ∧ stutf(nσ) ∧ (∀ m. ∃ m0. m < m0 ∧ nσ[m] < nσ[m0]) → false ⊦ |
# nσ = ∞, nσ[n] = n2 + 1, nσ[m0] = 2 + n2, stutf(nσ), n < m, n2 + 1 < nσ[m], 2 + n2 ≤ nσ[m], m0 ≤ m, ∀ n0. nσ[n0] ≠ 2 + n2, ∀ n0, nσ. n0 < n2 +1 → (∀ n1. nσ[n1] ≠ n0 + 1) ∧ # nσ = ∞ ∧ stutf(nσ) ∧ (∀ m. ∃ m0. m < m0 ∧ nσ[m] < nσ[m0]) → false ⊦
Used simplifier rules: ref-1: ⊦ ¬ n < n; from specification nat-basic1%l: ⊦ m + n < m + n0 ↔ n < n0; from specification nat-basic2%succ: ⊦ m +1 = m + 1; from specification nat-basic2%add-num-03: n < n0 ⊦ (* n) ≠ m0 + (* n0); from specification nat%trans-1: ⊦ n < n0 ∧ n0 < n1 → n < n1; (forward) from specification nat-basic1%lf: ⊦ m < n ∧ n < n0 → m +1 < n0; (forward) from specification nat-basic1%f: ⊦ m < n → n ≠ 0; (forward) from specification nat-basic1%lels-01: ⊦ ¬ m ≤ n ↔ n < m; from specification nat%less-inf2: ⊦ ⌜m⌝ < ∞; from specification nat-inf%c: ⊦ m + n = n + m; from specification nat-basic2%a: ⊦ (m + n0) + n1 = m + n0 + n1; from specification nat-basic2