| # σσ = ⌜n⌝ , mon(σσ) ⊦ σσ = [], ∃ σ. (∀ n. ⌜n⌝ < # σσ → (∃ σ1. σσ[n] + σ1 = σ)) ∧ (∀ m. ¬ # σ < ⌜m⌝ → (∃ n. ⌜n⌝ < # σσ ∧ (∃ σ1. (σ to m) + σ1 = σσ[n]))) |
# σσ = ⌜n⌝ , n = n0 +1, mon(σσ) ⊦ σσ = [], ∃ σ. (∀ n. ⌜n⌝ < # σσ → (∃ σ1. σσ[n] + σ1 = σ)) ∧ (∀ m. ¬ # σ < ⌜m⌝ → (∃ n. ⌜n⌝ < # σσ ∧ (∃ σ1. (σ to m) + σ1 = σσ[n])))
Used simplifier rules: nat freely generated by 0, +1;;% ⊦ # σσ = ⌜0⌝ ↔ σσ = []; (s)