| i0 = 1, prime(i), 0 < i0, 0 < i1, ∀ i2, i, i1, j, j0. i→n(i2) < i→n(i0) → true → prime(i) ∧ 0 < i2 ∧ 0 < i1 ∧ ¬ i | j ∧ ¬ i | j0 → (i ^ i2 * j = i ^ i1 * j0 ↔ i ^ i2 = i ^ i1 ∧ j = j0) ⊦ i ^ (i0 - 1) * j = j0 * i ^ (i1 - 1) ↔ i ^ (i0 - 1) = i ^ (i1 - 1) ∧ j = j0, i = 0, i ^ (i0 - 1) * j = i ^ (i1 - 1) * j0 ↔ i ^ (i0 - 1) = i ^ (i1 - 1) ∧ j = j0, i | j0, i | j, 1 < i0 ∧ 1 < i1 |
0 < i1, prime(i), ∀ i2, i, i1, j, j0. i→n(i2) < i→n(1) → true → prime(i) ∧ 0 < i2 ∧ 0 < i1 ∧ ¬ i | j ∧ ¬ i | j0 → (i ^ i2 * j = i ^ i1 * j0 ↔ i ^ i2 = i ^ i1 ∧ j = j0) ⊦ 1 = i ^ (i1 - 1), i = 0, i | j0, i | i ^ (i1 - 1)
Used simplifier rules: prime-divides: ⊦ prime(i) → (i | j * j0 ↔ i | j ∨ i | j0); from specification int-gcd%one-01: ⊦ i = 1 → i * j = j; from specification int-mult%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%Pot-zero: ⊦ j ^ 0 = 1; from specification int-pot