| # nσ = ∞, nσ[n] = nσ[m0], m1 < n, nσ[m0] < nσ[m1], ∞.n + m + 1 < max∞(λ n0. nσ[n0] = nσ[m0] + 1).n, m0 < n, stutf(nσ), m0 ≤ m1, mon≤(nσ) ∧ m1 ≤ m0 ∧ ⌜m0⌝ < # nσ → nσ[m1] ≤ nσ[m0], ∀ m0. m1 < m0 → nσ[m0] = nσ[m1] + 1 ⊦ nσ[∞.n + m + 1] = nσ[m0] + 1 |
# nσ = ∞, nσ[n] = nσ[m0], m0 < n, ∞.n + m + 1 < max∞(λ n0. nσ[n0] = nσ[m0] + 1).n, nσ[m0] < nσ[m1], m1 < n, stutf(nσ), m0 ≤ m1, ∀ m0. m1 < m0 → nσ[m0] = nσ[m1] + 1 ⊦ nσ[∞.n + m + 1] = nσ[m0] + 1
Used simplifier rules: stutf-monle: ⊦ stutf(nσ) → (mon≤(nσ) ↔ true);% ⊦ m < n → m ≤ n; (s)% ⊦ m ≤ n → (n ≤ m ↔ m = n); (s)