| Step | Hyp | Ref
| Expression |
| 1 | | nn0z 9363 |
. . . . . . . . . 10
⊢ (𝐾 ∈ ℕ0
→ 𝐾 ∈
ℤ) |
| 2 | | zq 9717 |
. . . . . . . . . 10
⊢ (𝐾 ∈ ℤ → 𝐾 ∈
ℚ) |
| 3 | 1, 2 | syl 14 |
. . . . . . . . 9
⊢ (𝐾 ∈ ℕ0
→ 𝐾 ∈
ℚ) |
| 4 | 3 | adantl 277 |
. . . . . . . 8
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → 𝐾 ∈
ℚ) |
| 5 | | odzcl 12437 |
. . . . . . . . . 10
⊢ ((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) →
((odℤ‘𝑁)‘𝐴) ∈ ℕ) |
| 6 | 5 | adantr 276 |
. . . . . . . . 9
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) →
((odℤ‘𝑁)‘𝐴) ∈ ℕ) |
| 7 | | nnq 9724 |
. . . . . . . . 9
⊢
(((odℤ‘𝑁)‘𝐴) ∈ ℕ →
((odℤ‘𝑁)‘𝐴) ∈ ℚ) |
| 8 | 6, 7 | syl 14 |
. . . . . . . 8
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) →
((odℤ‘𝑁)‘𝐴) ∈ ℚ) |
| 9 | 6 | nngt0d 9051 |
. . . . . . . 8
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → 0 <
((odℤ‘𝑁)‘𝐴)) |
| 10 | | modqlt 10442 |
. . . . . . . 8
⊢ ((𝐾 ∈ ℚ ∧
((odℤ‘𝑁)‘𝐴) ∈ ℚ ∧ 0 <
((odℤ‘𝑁)‘𝐴)) → (𝐾 mod ((odℤ‘𝑁)‘𝐴)) < ((odℤ‘𝑁)‘𝐴)) |
| 11 | 4, 8, 9, 10 | syl3anc 1249 |
. . . . . . 7
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (𝐾 mod
((odℤ‘𝑁)‘𝐴)) < ((odℤ‘𝑁)‘𝐴)) |
| 12 | 1 | adantl 277 |
. . . . . . . . . 10
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → 𝐾 ∈
ℤ) |
| 13 | 12, 6 | zmodcld 10454 |
. . . . . . . . 9
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (𝐾 mod
((odℤ‘𝑁)‘𝐴)) ∈
ℕ0) |
| 14 | 13 | nn0zd 9463 |
. . . . . . . 8
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (𝐾 mod
((odℤ‘𝑁)‘𝐴)) ∈ ℤ) |
| 15 | 6 | nnzd 9464 |
. . . . . . . 8
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) →
((odℤ‘𝑁)‘𝐴) ∈ ℤ) |
| 16 | | zltnle 9389 |
. . . . . . . 8
⊢ (((𝐾 mod
((odℤ‘𝑁)‘𝐴)) ∈ ℤ ∧
((odℤ‘𝑁)‘𝐴) ∈ ℤ) → ((𝐾 mod ((odℤ‘𝑁)‘𝐴)) < ((odℤ‘𝑁)‘𝐴) ↔ ¬
((odℤ‘𝑁)‘𝐴) ≤ (𝐾 mod ((odℤ‘𝑁)‘𝐴)))) |
| 17 | 14, 15, 16 | syl2anc 411 |
. . . . . . 7
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → ((𝐾 mod
((odℤ‘𝑁)‘𝐴)) < ((odℤ‘𝑁)‘𝐴) ↔ ¬
((odℤ‘𝑁)‘𝐴) ≤ (𝐾 mod ((odℤ‘𝑁)‘𝐴)))) |
| 18 | 11, 17 | mpbid 147 |
. . . . . 6
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → ¬
((odℤ‘𝑁)‘𝐴) ≤ (𝐾 mod ((odℤ‘𝑁)‘𝐴))) |
| 19 | | 1zzd 9370 |
. . . . . . . . . 10
⊢ ((((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) ∧ ((𝐾 mod
((odℤ‘𝑁)‘𝐴)) ∈ ℕ ∧ 𝑁 ∥ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1))) → 1 ∈
ℤ) |
| 20 | | nnuz 9654 |
. . . . . . . . . . 11
⊢ ℕ =
(ℤ≥‘1) |
| 21 | 20 | rabeqi 2756 |
. . . . . . . . . 10
⊢ {𝑛 ∈ ℕ ∣ 𝑁 ∥ ((𝐴↑𝑛) − 1)} = {𝑛 ∈ (ℤ≥‘1)
∣ 𝑁 ∥ ((𝐴↑𝑛) − 1)} |
| 22 | | oveq2 5933 |
. . . . . . . . . . . . . . 15
⊢ (𝑛 = (𝐾 mod ((odℤ‘𝑁)‘𝐴)) → (𝐴↑𝑛) = (𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴)))) |
| 23 | 22 | oveq1d 5940 |
. . . . . . . . . . . . . 14
⊢ (𝑛 = (𝐾 mod ((odℤ‘𝑁)‘𝐴)) → ((𝐴↑𝑛) − 1) = ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1)) |
| 24 | 23 | breq2d 4046 |
. . . . . . . . . . . . 13
⊢ (𝑛 = (𝐾 mod ((odℤ‘𝑁)‘𝐴)) → (𝑁 ∥ ((𝐴↑𝑛) − 1) ↔ 𝑁 ∥ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1))) |
| 25 | 24 | elrab 2920 |
. . . . . . . . . . . 12
⊢ ((𝐾 mod
((odℤ‘𝑁)‘𝐴)) ∈ {𝑛 ∈ ℕ ∣ 𝑁 ∥ ((𝐴↑𝑛) − 1)} ↔ ((𝐾 mod ((odℤ‘𝑁)‘𝐴)) ∈ ℕ ∧ 𝑁 ∥ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1))) |
| 26 | 25 | biimpri 133 |
. . . . . . . . . . 11
⊢ (((𝐾 mod
((odℤ‘𝑁)‘𝐴)) ∈ ℕ ∧ 𝑁 ∥ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1)) → (𝐾 mod ((odℤ‘𝑁)‘𝐴)) ∈ {𝑛 ∈ ℕ ∣ 𝑁 ∥ ((𝐴↑𝑛) − 1)}) |
| 27 | 26 | adantl 277 |
. . . . . . . . . 10
⊢ ((((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) ∧ ((𝐾 mod
((odℤ‘𝑁)‘𝐴)) ∈ ℕ ∧ 𝑁 ∥ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1))) → (𝐾 mod ((odℤ‘𝑁)‘𝐴)) ∈ {𝑛 ∈ ℕ ∣ 𝑁 ∥ ((𝐴↑𝑛) − 1)}) |
| 28 | | simp1 999 |
. . . . . . . . . . . 12
⊢ ((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) → 𝑁 ∈ ℕ) |
| 29 | 28 | ad3antrrr 492 |
. . . . . . . . . . 11
⊢
(((((𝑁 ∈
ℕ ∧ 𝐴 ∈
ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) ∧ ((𝐾 mod
((odℤ‘𝑁)‘𝐴)) ∈ ℕ ∧ 𝑁 ∥ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1))) ∧ 𝑛 ∈ (1...(𝐾 mod ((odℤ‘𝑁)‘𝐴)))) → 𝑁 ∈ ℕ) |
| 30 | | simp2 1000 |
. . . . . . . . . . . . . 14
⊢ ((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) → 𝐴 ∈ ℤ) |
| 31 | 30 | ad3antrrr 492 |
. . . . . . . . . . . . 13
⊢
(((((𝑁 ∈
ℕ ∧ 𝐴 ∈
ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) ∧ ((𝐾 mod
((odℤ‘𝑁)‘𝐴)) ∈ ℕ ∧ 𝑁 ∥ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1))) ∧ 𝑛 ∈ (1...(𝐾 mod ((odℤ‘𝑁)‘𝐴)))) → 𝐴 ∈ ℤ) |
| 32 | | elfznn 10146 |
. . . . . . . . . . . . . . 15
⊢ (𝑛 ∈ (1...(𝐾 mod ((odℤ‘𝑁)‘𝐴))) → 𝑛 ∈ ℕ) |
| 33 | 32 | nnnn0d 9319 |
. . . . . . . . . . . . . 14
⊢ (𝑛 ∈ (1...(𝐾 mod ((odℤ‘𝑁)‘𝐴))) → 𝑛 ∈ ℕ0) |
| 34 | 33 | adantl 277 |
. . . . . . . . . . . . 13
⊢
(((((𝑁 ∈
ℕ ∧ 𝐴 ∈
ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) ∧ ((𝐾 mod
((odℤ‘𝑁)‘𝐴)) ∈ ℕ ∧ 𝑁 ∥ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1))) ∧ 𝑛 ∈ (1...(𝐾 mod ((odℤ‘𝑁)‘𝐴)))) → 𝑛 ∈ ℕ0) |
| 35 | | zexpcl 10663 |
. . . . . . . . . . . . 13
⊢ ((𝐴 ∈ ℤ ∧ 𝑛 ∈ ℕ0)
→ (𝐴↑𝑛) ∈
ℤ) |
| 36 | 31, 34, 35 | syl2anc 411 |
. . . . . . . . . . . 12
⊢
(((((𝑁 ∈
ℕ ∧ 𝐴 ∈
ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) ∧ ((𝐾 mod
((odℤ‘𝑁)‘𝐴)) ∈ ℕ ∧ 𝑁 ∥ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1))) ∧ 𝑛 ∈ (1...(𝐾 mod ((odℤ‘𝑁)‘𝐴)))) → (𝐴↑𝑛) ∈ ℤ) |
| 37 | | peano2zm 9381 |
. . . . . . . . . . . 12
⊢ ((𝐴↑𝑛) ∈ ℤ → ((𝐴↑𝑛) − 1) ∈ ℤ) |
| 38 | 36, 37 | syl 14 |
. . . . . . . . . . 11
⊢
(((((𝑁 ∈
ℕ ∧ 𝐴 ∈
ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) ∧ ((𝐾 mod
((odℤ‘𝑁)‘𝐴)) ∈ ℕ ∧ 𝑁 ∥ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1))) ∧ 𝑛 ∈ (1...(𝐾 mod ((odℤ‘𝑁)‘𝐴)))) → ((𝐴↑𝑛) − 1) ∈ ℤ) |
| 39 | | dvdsdc 11980 |
. . . . . . . . . . 11
⊢ ((𝑁 ∈ ℕ ∧ ((𝐴↑𝑛) − 1) ∈ ℤ) →
DECID 𝑁
∥ ((𝐴↑𝑛) − 1)) |
| 40 | 29, 38, 39 | syl2anc 411 |
. . . . . . . . . 10
⊢
(((((𝑁 ∈
ℕ ∧ 𝐴 ∈
ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) ∧ ((𝐾 mod
((odℤ‘𝑁)‘𝐴)) ∈ ℕ ∧ 𝑁 ∥ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1))) ∧ 𝑛 ∈ (1...(𝐾 mod ((odℤ‘𝑁)‘𝐴)))) → DECID 𝑁 ∥ ((𝐴↑𝑛) − 1)) |
| 41 | 19, 21, 27, 40 | infssuzledc 10341 |
. . . . . . . . 9
⊢ ((((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) ∧ ((𝐾 mod
((odℤ‘𝑁)‘𝐴)) ∈ ℕ ∧ 𝑁 ∥ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1))) → inf({𝑛 ∈ ℕ ∣ 𝑁 ∥ ((𝐴↑𝑛) − 1)}, ℝ, < ) ≤ (𝐾 mod
((odℤ‘𝑁)‘𝐴))) |
| 42 | 41 | ex 115 |
. . . . . . . 8
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (((𝐾 mod
((odℤ‘𝑁)‘𝐴)) ∈ ℕ ∧ 𝑁 ∥ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1)) → inf({𝑛 ∈ ℕ ∣ 𝑁 ∥ ((𝐴↑𝑛) − 1)}, ℝ, < ) ≤ (𝐾 mod
((odℤ‘𝑁)‘𝐴)))) |
| 43 | 42 | ancomsd 269 |
. . . . . . 7
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → ((𝑁 ∥ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1) ∧ (𝐾 mod ((odℤ‘𝑁)‘𝐴)) ∈ ℕ) → inf({𝑛 ∈ ℕ ∣ 𝑁 ∥ ((𝐴↑𝑛) − 1)}, ℝ, < ) ≤ (𝐾 mod
((odℤ‘𝑁)‘𝐴)))) |
| 44 | | odzval 12435 |
. . . . . . . . 9
⊢ ((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) →
((odℤ‘𝑁)‘𝐴) = inf({𝑛 ∈ ℕ ∣ 𝑁 ∥ ((𝐴↑𝑛) − 1)}, ℝ, <
)) |
| 45 | 44 | adantr 276 |
. . . . . . . 8
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) →
((odℤ‘𝑁)‘𝐴) = inf({𝑛 ∈ ℕ ∣ 𝑁 ∥ ((𝐴↑𝑛) − 1)}, ℝ, <
)) |
| 46 | 45 | breq1d 4044 |
. . . . . . 7
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) →
(((odℤ‘𝑁)‘𝐴) ≤ (𝐾 mod ((odℤ‘𝑁)‘𝐴)) ↔ inf({𝑛 ∈ ℕ ∣ 𝑁 ∥ ((𝐴↑𝑛) − 1)}, ℝ, < ) ≤ (𝐾 mod
((odℤ‘𝑁)‘𝐴)))) |
| 47 | 43, 46 | sylibrd 169 |
. . . . . 6
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → ((𝑁 ∥ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1) ∧ (𝐾 mod ((odℤ‘𝑁)‘𝐴)) ∈ ℕ) →
((odℤ‘𝑁)‘𝐴) ≤ (𝐾 mod ((odℤ‘𝑁)‘𝐴)))) |
| 48 | 18, 47 | mtod 664 |
. . . . 5
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → ¬
(𝑁 ∥ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1) ∧ (𝐾 mod ((odℤ‘𝑁)‘𝐴)) ∈ ℕ)) |
| 49 | | imnan 691 |
. . . . 5
⊢ ((𝑁 ∥ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1) → ¬ (𝐾 mod
((odℤ‘𝑁)‘𝐴)) ∈ ℕ) ↔ ¬ (𝑁 ∥ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1) ∧ (𝐾 mod ((odℤ‘𝑁)‘𝐴)) ∈ ℕ)) |
| 50 | 48, 49 | sylibr 134 |
. . . 4
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (𝑁 ∥ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1) → ¬ (𝐾 mod
((odℤ‘𝑁)‘𝐴)) ∈ ℕ)) |
| 51 | | elnn0 9268 |
. . . . . 6
⊢ ((𝐾 mod
((odℤ‘𝑁)‘𝐴)) ∈ ℕ0 ↔ ((𝐾 mod
((odℤ‘𝑁)‘𝐴)) ∈ ℕ ∨ (𝐾 mod ((odℤ‘𝑁)‘𝐴)) = 0)) |
| 52 | 13, 51 | sylib 122 |
. . . . 5
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → ((𝐾 mod
((odℤ‘𝑁)‘𝐴)) ∈ ℕ ∨ (𝐾 mod ((odℤ‘𝑁)‘𝐴)) = 0)) |
| 53 | 52 | ord 725 |
. . . 4
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (¬
(𝐾 mod
((odℤ‘𝑁)‘𝐴)) ∈ ℕ → (𝐾 mod ((odℤ‘𝑁)‘𝐴)) = 0)) |
| 54 | 50, 53 | syld 45 |
. . 3
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (𝑁 ∥ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1) → (𝐾 mod ((odℤ‘𝑁)‘𝐴)) = 0)) |
| 55 | | simpl1 1002 |
. . . . . . 7
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → 𝑁 ∈
ℕ) |
| 56 | 55 | nnzd 9464 |
. . . . . 6
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → 𝑁 ∈
ℤ) |
| 57 | | dvds0 11988 |
. . . . . 6
⊢ (𝑁 ∈ ℤ → 𝑁 ∥ 0) |
| 58 | 56, 57 | syl 14 |
. . . . 5
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → 𝑁 ∥ 0) |
| 59 | | simpl2 1003 |
. . . . . . . . 9
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → 𝐴 ∈
ℤ) |
| 60 | 59 | zcnd 9466 |
. . . . . . . 8
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → 𝐴 ∈
ℂ) |
| 61 | 60 | exp0d 10776 |
. . . . . . 7
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (𝐴↑0) = 1) |
| 62 | 61 | oveq1d 5940 |
. . . . . 6
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → ((𝐴↑0) − 1) = (1 −
1)) |
| 63 | | 1m1e0 9076 |
. . . . . 6
⊢ (1
− 1) = 0 |
| 64 | 62, 63 | eqtrdi 2245 |
. . . . 5
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → ((𝐴↑0) − 1) =
0) |
| 65 | 58, 64 | breqtrrd 4062 |
. . . 4
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → 𝑁 ∥ ((𝐴↑0) − 1)) |
| 66 | | oveq2 5933 |
. . . . . 6
⊢ ((𝐾 mod
((odℤ‘𝑁)‘𝐴)) = 0 → (𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) = (𝐴↑0)) |
| 67 | 66 | oveq1d 5940 |
. . . . 5
⊢ ((𝐾 mod
((odℤ‘𝑁)‘𝐴)) = 0 → ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1) = ((𝐴↑0) − 1)) |
| 68 | 67 | breq2d 4046 |
. . . 4
⊢ ((𝐾 mod
((odℤ‘𝑁)‘𝐴)) = 0 → (𝑁 ∥ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1) ↔ 𝑁 ∥ ((𝐴↑0) − 1))) |
| 69 | 65, 68 | syl5ibrcom 157 |
. . 3
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → ((𝐾 mod
((odℤ‘𝑁)‘𝐴)) = 0 → 𝑁 ∥ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1))) |
| 70 | 54, 69 | impbid 129 |
. 2
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (𝑁 ∥ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1) ↔ (𝐾 mod ((odℤ‘𝑁)‘𝐴)) = 0)) |
| 71 | 6 | nnnn0d 9319 |
. . . . . . . . 9
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) →
((odℤ‘𝑁)‘𝐴) ∈
ℕ0) |
| 72 | | znq 9715 |
. . . . . . . . . . 11
⊢ ((𝐾 ∈ ℤ ∧
((odℤ‘𝑁)‘𝐴) ∈ ℕ) → (𝐾 / ((odℤ‘𝑁)‘𝐴)) ∈ ℚ) |
| 73 | 12, 6, 72 | syl2anc 411 |
. . . . . . . . . 10
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (𝐾 /
((odℤ‘𝑁)‘𝐴)) ∈ ℚ) |
| 74 | | nn0ge0 9291 |
. . . . . . . . . . . 12
⊢ (𝐾 ∈ ℕ0
→ 0 ≤ 𝐾) |
| 75 | 74 | adantl 277 |
. . . . . . . . . . 11
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → 0 ≤
𝐾) |
| 76 | | nn0re 9275 |
. . . . . . . . . . . . 13
⊢ (𝐾 ∈ ℕ0
→ 𝐾 ∈
ℝ) |
| 77 | 76 | adantl 277 |
. . . . . . . . . . . 12
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → 𝐾 ∈
ℝ) |
| 78 | 6 | nnred 9020 |
. . . . . . . . . . . 12
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) →
((odℤ‘𝑁)‘𝐴) ∈ ℝ) |
| 79 | | ge0div 8915 |
. . . . . . . . . . . 12
⊢ ((𝐾 ∈ ℝ ∧
((odℤ‘𝑁)‘𝐴) ∈ ℝ ∧ 0 <
((odℤ‘𝑁)‘𝐴)) → (0 ≤ 𝐾 ↔ 0 ≤ (𝐾 / ((odℤ‘𝑁)‘𝐴)))) |
| 80 | 77, 78, 9, 79 | syl3anc 1249 |
. . . . . . . . . . 11
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (0 ≤
𝐾 ↔ 0 ≤ (𝐾 /
((odℤ‘𝑁)‘𝐴)))) |
| 81 | 75, 80 | mpbid 147 |
. . . . . . . . . 10
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → 0 ≤
(𝐾 /
((odℤ‘𝑁)‘𝐴))) |
| 82 | | flqge0nn0 10400 |
. . . . . . . . . 10
⊢ (((𝐾 /
((odℤ‘𝑁)‘𝐴)) ∈ ℚ ∧ 0 ≤ (𝐾 /
((odℤ‘𝑁)‘𝐴))) → (⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴))) ∈
ℕ0) |
| 83 | 73, 81, 82 | syl2anc 411 |
. . . . . . . . 9
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) →
(⌊‘(𝐾 /
((odℤ‘𝑁)‘𝐴))) ∈
ℕ0) |
| 84 | 71, 83 | nn0mulcld 9324 |
. . . . . . . 8
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) →
(((odℤ‘𝑁)‘𝐴) · (⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴)))) ∈
ℕ0) |
| 85 | | zexpcl 10663 |
. . . . . . . 8
⊢ ((𝐴 ∈ ℤ ∧
(((odℤ‘𝑁)‘𝐴) · (⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴)))) ∈ ℕ0) →
(𝐴↑(((odℤ‘𝑁)‘𝐴) · (⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴))))) ∈ ℤ) |
| 86 | 59, 84, 85 | syl2anc 411 |
. . . . . . 7
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (𝐴↑(((odℤ‘𝑁)‘𝐴) · (⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴))))) ∈ ℤ) |
| 87 | | zq 9717 |
. . . . . . 7
⊢ ((𝐴↑(((odℤ‘𝑁)‘𝐴) · (⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴))))) ∈ ℤ → (𝐴↑(((odℤ‘𝑁)‘𝐴) · (⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴))))) ∈ ℚ) |
| 88 | 86, 87 | syl 14 |
. . . . . 6
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (𝐴↑(((odℤ‘𝑁)‘𝐴) · (⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴))))) ∈ ℚ) |
| 89 | | 1z 9369 |
. . . . . . 7
⊢ 1 ∈
ℤ |
| 90 | | zq 9717 |
. . . . . . 7
⊢ (1 ∈
ℤ → 1 ∈ ℚ) |
| 91 | 89, 90 | mp1i 10 |
. . . . . 6
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → 1 ∈
ℚ) |
| 92 | | zexpcl 10663 |
. . . . . . 7
⊢ ((𝐴 ∈ ℤ ∧ (𝐾 mod
((odℤ‘𝑁)‘𝐴)) ∈ ℕ0) → (𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) ∈ ℤ) |
| 93 | 59, 13, 92 | syl2anc 411 |
. . . . . 6
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) ∈ ℤ) |
| 94 | | nnq 9724 |
. . . . . . 7
⊢ (𝑁 ∈ ℕ → 𝑁 ∈
ℚ) |
| 95 | 55, 94 | syl 14 |
. . . . . 6
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → 𝑁 ∈
ℚ) |
| 96 | 55 | nngt0d 9051 |
. . . . . 6
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → 0 <
𝑁) |
| 97 | 60, 83, 71 | expmuld 10785 |
. . . . . . . 8
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (𝐴↑(((odℤ‘𝑁)‘𝐴) · (⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴))))) = ((𝐴↑((odℤ‘𝑁)‘𝐴))↑(⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴))))) |
| 98 | 97 | oveq1d 5940 |
. . . . . . 7
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → ((𝐴↑(((odℤ‘𝑁)‘𝐴) · (⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴))))) mod 𝑁) = (((𝐴↑((odℤ‘𝑁)‘𝐴))↑(⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴)))) mod 𝑁)) |
| 99 | | zexpcl 10663 |
. . . . . . . . 9
⊢ ((𝐴 ∈ ℤ ∧
((odℤ‘𝑁)‘𝐴) ∈ ℕ0) → (𝐴↑((odℤ‘𝑁)‘𝐴)) ∈ ℤ) |
| 100 | 59, 71, 99 | syl2anc 411 |
. . . . . . . 8
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (𝐴↑((odℤ‘𝑁)‘𝐴)) ∈ ℤ) |
| 101 | | 1zzd 9370 |
. . . . . . . 8
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → 1 ∈
ℤ) |
| 102 | | odzid 12438 |
. . . . . . . . . 10
⊢ ((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) → 𝑁 ∥ ((𝐴↑((odℤ‘𝑁)‘𝐴)) − 1)) |
| 103 | 102 | adantr 276 |
. . . . . . . . 9
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → 𝑁 ∥ ((𝐴↑((odℤ‘𝑁)‘𝐴)) − 1)) |
| 104 | | moddvds 11981 |
. . . . . . . . . 10
⊢ ((𝑁 ∈ ℕ ∧ (𝐴↑((odℤ‘𝑁)‘𝐴)) ∈ ℤ ∧ 1 ∈ ℤ)
→ (((𝐴↑((odℤ‘𝑁)‘𝐴)) mod 𝑁) = (1 mod 𝑁) ↔ 𝑁 ∥ ((𝐴↑((odℤ‘𝑁)‘𝐴)) − 1))) |
| 105 | 55, 100, 101, 104 | syl3anc 1249 |
. . . . . . . . 9
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (((𝐴↑((odℤ‘𝑁)‘𝐴)) mod 𝑁) = (1 mod 𝑁) ↔ 𝑁 ∥ ((𝐴↑((odℤ‘𝑁)‘𝐴)) − 1))) |
| 106 | 103, 105 | mpbird 167 |
. . . . . . . 8
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → ((𝐴↑((odℤ‘𝑁)‘𝐴)) mod 𝑁) = (1 mod 𝑁)) |
| 107 | 100, 101,
83, 95, 96, 106 | modqexp 10775 |
. . . . . . 7
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (((𝐴↑((odℤ‘𝑁)‘𝐴))↑(⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴)))) mod 𝑁) = ((1↑(⌊‘(𝐾 /
((odℤ‘𝑁)‘𝐴)))) mod 𝑁)) |
| 108 | 73 | flqcld 10384 |
. . . . . . . . 9
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) →
(⌊‘(𝐾 /
((odℤ‘𝑁)‘𝐴))) ∈ ℤ) |
| 109 | | 1exp 10677 |
. . . . . . . . 9
⊢
((⌊‘(𝐾 /
((odℤ‘𝑁)‘𝐴))) ∈ ℤ →
(1↑(⌊‘(𝐾 /
((odℤ‘𝑁)‘𝐴)))) = 1) |
| 110 | 108, 109 | syl 14 |
. . . . . . . 8
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) →
(1↑(⌊‘(𝐾 /
((odℤ‘𝑁)‘𝐴)))) = 1) |
| 111 | 110 | oveq1d 5940 |
. . . . . . 7
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) →
((1↑(⌊‘(𝐾
/ ((odℤ‘𝑁)‘𝐴)))) mod 𝑁) = (1 mod 𝑁)) |
| 112 | 98, 107, 111 | 3eqtrd 2233 |
. . . . . 6
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → ((𝐴↑(((odℤ‘𝑁)‘𝐴) · (⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴))))) mod 𝑁) = (1 mod 𝑁)) |
| 113 | 88, 91, 93, 95, 96, 112 | modqmul1 10486 |
. . . . 5
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (((𝐴↑(((odℤ‘𝑁)‘𝐴) · (⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴))))) · (𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴)))) mod 𝑁) = ((1 · (𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴)))) mod 𝑁)) |
| 114 | 60, 13, 84 | expaddd 10784 |
. . . . . . 7
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (𝐴↑((((odℤ‘𝑁)‘𝐴) · (⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴)))) + (𝐾 mod ((odℤ‘𝑁)‘𝐴)))) = ((𝐴↑(((odℤ‘𝑁)‘𝐴) · (⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴))))) · (𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))))) |
| 115 | | modqval 10433 |
. . . . . . . . . . 11
⊢ ((𝐾 ∈ ℚ ∧
((odℤ‘𝑁)‘𝐴) ∈ ℚ ∧ 0 <
((odℤ‘𝑁)‘𝐴)) → (𝐾 mod ((odℤ‘𝑁)‘𝐴)) = (𝐾 − (((odℤ‘𝑁)‘𝐴) · (⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴)))))) |
| 116 | 4, 8, 9, 115 | syl3anc 1249 |
. . . . . . . . . 10
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (𝐾 mod
((odℤ‘𝑁)‘𝐴)) = (𝐾 − (((odℤ‘𝑁)‘𝐴) · (⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴)))))) |
| 117 | 116 | oveq2d 5941 |
. . . . . . . . 9
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) →
((((odℤ‘𝑁)‘𝐴) · (⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴)))) + (𝐾 mod ((odℤ‘𝑁)‘𝐴))) = ((((odℤ‘𝑁)‘𝐴) · (⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴)))) + (𝐾 − (((odℤ‘𝑁)‘𝐴) · (⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴))))))) |
| 118 | 84 | nn0cnd 9321 |
. . . . . . . . . 10
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) →
(((odℤ‘𝑁)‘𝐴) · (⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴)))) ∈ ℂ) |
| 119 | 77 | recnd 8072 |
. . . . . . . . . 10
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → 𝐾 ∈
ℂ) |
| 120 | 118, 119 | pncan3d 8357 |
. . . . . . . . 9
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) →
((((odℤ‘𝑁)‘𝐴) · (⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴)))) + (𝐾 − (((odℤ‘𝑁)‘𝐴) · (⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴)))))) = 𝐾) |
| 121 | 117, 120 | eqtrd 2229 |
. . . . . . . 8
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) →
((((odℤ‘𝑁)‘𝐴) · (⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴)))) + (𝐾 mod ((odℤ‘𝑁)‘𝐴))) = 𝐾) |
| 122 | 121 | oveq2d 5941 |
. . . . . . 7
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (𝐴↑((((odℤ‘𝑁)‘𝐴) · (⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴)))) + (𝐾 mod ((odℤ‘𝑁)‘𝐴)))) = (𝐴↑𝐾)) |
| 123 | 114, 122 | eqtr3d 2231 |
. . . . . 6
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → ((𝐴↑(((odℤ‘𝑁)‘𝐴) · (⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴))))) · (𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴)))) = (𝐴↑𝐾)) |
| 124 | 123 | oveq1d 5940 |
. . . . 5
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (((𝐴↑(((odℤ‘𝑁)‘𝐴) · (⌊‘(𝐾 / ((odℤ‘𝑁)‘𝐴))))) · (𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴)))) mod 𝑁) = ((𝐴↑𝐾) mod 𝑁)) |
| 125 | 93 | zcnd 9466 |
. . . . . . 7
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) ∈ ℂ) |
| 126 | 125 | mulid2d 8062 |
. . . . . 6
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (1
· (𝐴↑(𝐾 mod
((odℤ‘𝑁)‘𝐴)))) = (𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴)))) |
| 127 | 126 | oveq1d 5940 |
. . . . 5
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → ((1
· (𝐴↑(𝐾 mod
((odℤ‘𝑁)‘𝐴)))) mod 𝑁) = ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) mod 𝑁)) |
| 128 | 113, 124,
127 | 3eqtr3d 2237 |
. . . 4
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → ((𝐴↑𝐾) mod 𝑁) = ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) mod 𝑁)) |
| 129 | 128 | eqeq1d 2205 |
. . 3
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (((𝐴↑𝐾) mod 𝑁) = (1 mod 𝑁) ↔ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) mod 𝑁) = (1 mod 𝑁))) |
| 130 | | zexpcl 10663 |
. . . . 5
⊢ ((𝐴 ∈ ℤ ∧ 𝐾 ∈ ℕ0)
→ (𝐴↑𝐾) ∈
ℤ) |
| 131 | 59, 130 | sylancom 420 |
. . . 4
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (𝐴↑𝐾) ∈ ℤ) |
| 132 | | moddvds 11981 |
. . . 4
⊢ ((𝑁 ∈ ℕ ∧ (𝐴↑𝐾) ∈ ℤ ∧ 1 ∈ ℤ)
→ (((𝐴↑𝐾) mod 𝑁) = (1 mod 𝑁) ↔ 𝑁 ∥ ((𝐴↑𝐾) − 1))) |
| 133 | 55, 131, 101, 132 | syl3anc 1249 |
. . 3
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (((𝐴↑𝐾) mod 𝑁) = (1 mod 𝑁) ↔ 𝑁 ∥ ((𝐴↑𝐾) − 1))) |
| 134 | | moddvds 11981 |
. . . 4
⊢ ((𝑁 ∈ ℕ ∧ (𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) ∈ ℤ ∧ 1 ∈ ℤ)
→ (((𝐴↑(𝐾 mod
((odℤ‘𝑁)‘𝐴))) mod 𝑁) = (1 mod 𝑁) ↔ 𝑁 ∥ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1))) |
| 135 | 55, 93, 101, 134 | syl3anc 1249 |
. . 3
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) mod 𝑁) = (1 mod 𝑁) ↔ 𝑁 ∥ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1))) |
| 136 | 129, 133,
135 | 3bitr3d 218 |
. 2
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (𝑁 ∥ ((𝐴↑𝐾) − 1) ↔ 𝑁 ∥ ((𝐴↑(𝐾 mod ((odℤ‘𝑁)‘𝐴))) − 1))) |
| 137 | | dvdsval3 11973 |
. . 3
⊢
((((odℤ‘𝑁)‘𝐴) ∈ ℕ ∧ 𝐾 ∈ ℤ) →
(((odℤ‘𝑁)‘𝐴) ∥ 𝐾 ↔ (𝐾 mod ((odℤ‘𝑁)‘𝐴)) = 0)) |
| 138 | 6, 12, 137 | syl2anc 411 |
. 2
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) →
(((odℤ‘𝑁)‘𝐴) ∥ 𝐾 ↔ (𝐾 mod ((odℤ‘𝑁)‘𝐴)) = 0)) |
| 139 | 70, 136, 138 | 3bitr4d 220 |
1
⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝐾 ∈ ℕ0) → (𝑁 ∥ ((𝐴↑𝐾) − 1) ↔
((odℤ‘𝑁)‘𝐴) ∥ 𝐾)) |