| ∀ i0. (∀ i. i ∈ ints0 → i ≤ i0) → Σ ints0 ≤ i0 * n→i(# ints0), ∀ i1. i1 ∈ i + ints0 → i1 ≤ i0 ⊦ Σ(i + ints0) ≤ i0 * n→i(#(i + ints0)) |
i0 * (1 + n→i(# ints0)) < i + Σ ints0, ∀ i0. (∀ i. i ∈ ints0 → i ≤ i0) → Σ ints0 ≤ i0 * n→i(# ints0), ∀ i1. i1 = i ∨ i1 ∈ ints0 → i1 ≤ i0 ⊦
Used simplifier rules: sum-rec: ⊦ Σ(i ' + ints) = i + Σ ints;%in-17: ⊦ i ∈ i0 ' ↔ i = i0; from specification list[intlista]%in-append: ⊦ i ∈ ints + ints0 ↔ ¬ ¬(i ∈ ints ∨ i ∈ ints0); from specification list[intlista]%lels-01: ⊦ ¬ i ≤ j ↔ j < i; from specification int-abs%c: ⊦ m + n = n + m; from specification nat-basic2%a: ⊦ (m + n0) + n1 = m + n0 + n1; from specification nat-basic2%n2i-add: ⊦ n→i(m + n) = n→i(m) + n→i(n); from specification intnat%len-02: ⊦ # i ' = 0 +1; from specification list[intlista]%len: ⊦ #(ints + ints0) = # ints + # ints0; from specification list[intlista]%a: ⊦ (ints + ints0) + ints1 = ints + ints0 + ints1; from specification list[intlista]%c: ⊦ i + ints = i ' + ints; from specification list[intlista]