| ints = i0 + ints1, j ^ n→i(# rmdup(ints)) < i0 ^ n→i(#oc(i0, ints)) * Π(ints -l i0), 0 < min(ints), ∀ i. i ∈ ints → 0 < i ∧ i ^ n→i(#oc(i, ints)) ≤ j, ∀ ints0, j. # ints0 < # ints → j ^ n→i(# rmdup(ints0)) < Π ints0 ∧ (∀ i. i ∈ ints0 → 0 < i ∧ i ^ n→i(#oc(i, ints0)) ≤ j) → false ⊦ ints = [] |
j ^ n→i(# rmdup(i0 ' + ints1)) < i0 ^ (1 + n→i(#oc(i0, ints1))) * Π(ints1 -l i0), 0 < min(i0 ' + ints1), ∀ i. i = i0 ∨ i ∈ ints1 → 0 < i ∧ i ^ (n→i(#oc(i, i0 ')) + n→i(#oc(i, ints1))) ≤ j, ∀ ints0, j. # ints0 < #(i0 + ints1) → j ^ n→i(# rmdup(ints0)) < Π ints0 ∧ (∀ i. i ∈ ints0 → 0 < i ∧ i ^ n→i(#oc(i, ints0)) ≤ j) → false ⊦
Used simplifier rules: forward-le-05: ⊦ i < j ∧ 0 ≤ i → 0 < j; (forward) from specification int-abs%in-17: ⊦ i ∈ i0 ' ↔ i = i0; from specification list[intlista]%in-append: ⊦ i ∈ ints + ints0 ↔ ¬ ¬(i ∈ ints ∨ i ∈ ints0); from specification list[intlista]%del-y: ⊦ (i ' + ints) -l i = ints -l i; from specification list-del[intlista]%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%one: ⊦ #oc(i, i ') = 1; from specification list-perm[intlista]%ocappend: ⊦ #oc(i, ints + ints0) = #oc(i, ints) + #oc(i, ints0); from specification list-perm[intlista]%a: ⊦ (ints + ints0) + ints1 = ints + ints0 + ints1; from specification list[intlista]%e-01: ⊦ i ' + ints ≠ []; from specification list[intlista]%c: ⊦ i + ints = i ' + ints; from specification list[intlista]