| # σσ = ⌜n0⌝ + ⌜1⌝ , mon(σσ) ⊦ ¬ n0 < n → (∃ σ1. σσ[n] + σ1 = σσ[n0]), σσ = [], ∃ σ. (∀ n. ¬ n0 < n → (∃ σ1. σσ[n] + σ1 = σ)) ∧ (∀ m. ¬ # σ < ⌜m⌝ → (∃ n. ¬ n0 < n ∧ (∃ σ1. (σ to m) + σ1 = σσ[n]))) |
# σσ = ⌜n0⌝ + ⌜1⌝ , mon(σσ), n ≤ n0 ⊦ σσ = [], ∃ σ1. σσ[n] + σ1 = σσ[n0], ∃ σ. (∀ n. ¬ n0 < n → (∃ σ1. σσ[n] + σ1 = σ)) ∧ (∀ m. ¬ # σ < ⌜m⌝ → (∃ n. ¬ n0 < n ∧ (∃ σ1. (σ to m) + σ1 = σσ[n])))
Used simplifier rules: lels: ⊦ ¬ m < n ↔ n ≤ m; from specification nat