| Π ints1 ≤ 4 ^ (j + 1), Π ints = Π ints1 * Π ints0, perm(ints, ints1 + ints0), primes(ints), 4 ^ (2 * j + 1) < Π ints, max(ints) ≤ 2 * j + 1, 0 ≤ j, 0 < j, primes(ints0), primes(ints1), ints1 = [] ∨ max(ints1) ≤ j + 1, ints0 = [] ∨ j + 1 < min(ints0), j + 2 ≤ min(ints0) ∧ max(ints0) ≤ j * 2 + 1 → Π ints0 ≤ 4 ^ j, ∀ i0, ints. i→n(i0) < i→n(j + j + 1) → primes(ints) ∧ max(ints) ≤ i0 ∧ ¬ dups(ints) → Π ints ≤ 4 ^ i0 ⊦ Π ints0 ≤ 4 ^ j, ints = [], dups(ints1), dups(ints0), dups(ints) |
Π ints = Π ints1 * Π ints0, min(ints0) < j + 2, max(ints0) ≤ j * 2 + 1, j + 1 < min(ints0), 4 ^ j < Π ints0, primes(ints1), primes(ints0), 0 < j, 0 ≤ j, max(ints) ≤ 2 * j + 1, 4 ^ (2 * j + 1) < Π ints, primes(ints), perm(ints, ints1 + ints0), Π ints1 ≤ 4 ^ (j + 1), ints1 = [] ∨ max(ints1) ≤ j + 1, ∀ i0, ints. i→n(i0) < i→n(j + j + 1) → primes(ints) ∧ max(ints) ≤ i0 ∧ ¬ dups(ints) → Π ints ≤ 4 ^ i0 ⊦ ints0 = [], ints = [], dups(ints), dups(ints0), dups(ints1)
Used simplifier rules: add-c: ⊦ i + j = j + i; from specification int-basic2%add-a: ⊦ i + j + i0 = (i + j) + i0; from specification int-basic2%ls-01: ⊦ i + j < i + i0 ↔ j < i0; from specification int-basic2%transitivity: ⊦ i < i0 ∧ i0 < i1 → i < i1; (forward) from specification oelem[intlista]%a: ⊦ (ints + ints0) + ints1 = ints + ints0 + ints1; from specification list[intlista]%max-perm-ls: ⊦ max(ints) < max(ints0) ∧ ints0 ≠ [] → ¬ perm(ints, ints1 + ints0); from specification intlist%forward-lels: ⊦ i ≤ j ∧ j < j0 → i < j0; (forward) from specification int-abs%lels-03: ⊦ i < j → (¬ ¬ j ≤ i ↔ false); from specification int-abs%ls-01: ⊦ i < j → ¬ j < i; from specification int-basic1%pot-zero-01: ⊦ 0 < i → (i ^ j = 0 ↔ j < 0 ∧ 1 < i); from specification int-pot%pot-lez: ⊦ 0 < i → (i ^ j ≤ 0 ↔ i ^ j = 0); from specification int-pot%lsone: ⊦ i < 1 ↔ i ≤ 0; from specification int-abs%commutativity: ⊦ i * j = j * i; from specification int-mult%associativity: ⊦ i * j * j0 = (i * j) * j0; from specification int-mult%one: ⊦ 1 * i = i; from specification int-mult%prod-empty: ⊦ Π [] = 1; from specification intlist%lels-01: ⊦ ¬ i ≤ j ↔ j < i; from specification int-abs