| i0 * i1 = i, 1 < i0, i0 < i0 * i1, i0 < i1, 1 < i, 0 < i, ∀ j. prime(j) ∧ j * j ≤ i → ¬ j | i, ∀ i0. i→n(i0) < i→n(i) → 0 < i0 ∧ 1 < i0 ∧ (∀ j. prime(j) ∧ j * j ≤ i0 → ¬ j | i0) → prime(i0) ⊦ |
0 < i0, 1 < i0, i0 < i1, 1 < i0 * i1, 1 < i1, 0 < 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) ⊦
Used simplifier rules: ⊦ 0 < i → (i < i * j ↔ 1 < j); (s)%commutativity: ⊦ i * j = j * i; from specification int-mult%associativity: ⊦ i * j * j0 = (i * j) * j0; from specification int-mult% ⊦ 0 < i → (0 < i * j ↔ 0 < j); (s)%forward-le-05: ⊦ i < j ∧ 0 ≤ i → 0 < j; (forward) from specification int-abs%forward-pos: ⊦ i < j ∧ 0 < i → 0 < j ∧ 1 < j; (forward) from specification int-basic1