| 0 < abs(i1 - i2 + 1) + i2, i1 ≤ abs(i1 - i2 + 1) + i2, 0 < i1, i2 ≤ i1, 0 < i2, ∀ i3, i4, i, i0. i→n(i3 - i4) < i→n(i1 - i2) → 0 < i4 → countFun(i4, i3, λ j0. binom_coef(i3, j0 - 1) * i ^ j0 * i0 ^ (i3 + 1 - j0)) = countFun(i4, i3, λ j. i * binom_coef(i3, j - 1) * i ^ (j - 1) * i0 ^ (i3 + 1 - j)) ⊦ countFun(i2 + 1, i1, λ j0. binom_coef(i1, j0 - 1) * i ^ j0 * i0 ^ (i1 + 1 - j0)) = countFun(i2 + 1, i1, λ j. i0 ^ (i1 + 1 - j) * i ^ (j - 1) * binom_coef(i1, j - 1) * i) |
⊦ ¬ j < 0 → abs(j) = j
Used simplifier rules: sub-add-01: ⊦ i + (j - i0) = i + j - i0; from specification int-abs%sub-add-05: ⊦ i + j - i + 1 = j - 1; from specification int-abs%add-a: ⊦ i + j + i0 = (i + j) + i0; from specification int-basic2%add-c: ⊦ i + j = j + i; from specification int-basic2%sub-ls-01: ⊦ i < j - i0 ↔ i + i0 < j; from specification int-abs%sub-le-01: ⊦ i ≤ j - i0 ↔ i + i0 ≤ j; from specification int-abs%lep-01: ⊦ i + j ≤ i ↔ j ≤ 0; from specification int-abs%sub-ls: ⊦ i - j < i0 ↔ i < j + i0; from specification int-abs%succ-02: ⊦ i < j + 1 ↔ i ≤ j; from specification int-abs%anti: ⊦ i ≤ j → (j ≤ i ↔ i = j); from specification int-abs%countFun-base-01: ⊦ countFun(i + 1, i, intfun) = []; from specification intlist Used terms: i1 - i2 + 1