| 2 < i1, 0 < i1, 1 < i0, 2 < i0 * i1, 0 < i0, 2 ≤ i0 * i1, 0 ≤ i1, i0 < i1, i0 ≤ i1, ∀ j. prime(j) ∧ j * j ≤ i0 * i1 → ¬ j | i0 * i1, ∀ i2. i→n(i2) < i→n(i0 * i1) → 0 < i2 ∧ 1 < i2 ∧ (∀ j. prime(j) ∧ j * j ≤ i2 → ¬ j | i2) → prime(i2) ⊦ prime(i0) |
2 < i1, 0 < i1, 1 < i0, 2 < i0 * i1, 0 < i0, 2 ≤ i0 * i1, 0 ≤ i1, i0 < i1, i0 ≤ i1, ∀ j. prime(j) ∧ j * j ≤ i0 * i1 → ¬ j | i0 * i1, ∀ i2. i→n(i2) < i→n(i0 * i1) → 0 < i2 ∧ 1 < i2 ∧ (∀ j. prime(j) ∧ j * j ≤ i2 → ¬ j | i2) → prime(i2) ⊦ 0 < i0 ∧ 1 < i0 ∧ (∀ j. prime(j) ∧ j * j ≤ i0 → ¬ j | i0), prime(i0)
Used simplifier rules: labs: ⊦ i→n(i) < i→n(j) ↔ abs(i) < abs(j); from specification intnat%abs-eqall: ⊦ abs(i * j) = abs(i) * abs(j); from specification int-mult%abs-16: ⊦ 0 < j → abs(j) = j; from specification int-abs%associativity: ⊦ i * j * j0 = (i * j) * j0; from specification int-mult%commutativity: ⊦ i * j = j * i; from specification int-mult%lels: ⊦ ¬ i < j ↔ j ≤ i; from specification int-abs%le-same: ⊦ 0 < i → (i * j ≤ i ↔ j ≤ 1); from specification int-mult%bet: ⊦ 0 < i → (i ≤ 1 ↔ i = 1); from specification int-abs%one-01: ⊦ i = 1 → i * j = j; from specification int-mult%numlslsdel-01: i0 ≠ 0, i0 < i ⊦ (* i) < j → (* i0) < j; from specification int-basic1%forward-le-01: ⊦ i ≤ j ∧ 0 ≤ i → 0 ≤ j; (forward) from specification int-abs%forward-lele: ⊦ j ≤ j0 ∧ j0 ≤ j1 → j ≤ j1; (forward) from specification int-abs%lf-01: ⊦ i < j ∧ j < i0 → i +1 < i0; (forward) from specification int-basic1%lf-02: ⊦ i < j ∧ j = i0 → i < i0; (forward) from specification int-basic1 Used terms: i0