Metamath Proof Explorer


Theorem odz2prm2pw

Description: Any power of two is coprime to any prime not being two. (Contributed by AV, 25-Jul-2021)

Ref Expression
Assertion odz2prm2pw ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ 2 2 N mod P ≠ 1 ∧ 2 2 N + 1 mod P = 1 → odℤ ⁡ P ⁡ 2 = 2 N + 1

Proof

Step Hyp Ref Expression
1 eldifi ⊢ P ∈ ℙ ∖ 2 → P ∈ ℙ
2 2nn ⊢ 2 ∈ ℕ
3 2 a1i ⊢ N ∈ ℕ → 2 ∈ ℕ
4 2nn0 ⊢ 2 ∈ ℕ 0
5 4 a1i ⊢ N ∈ ℕ → 2 ∈ ℕ 0
6 peano2nn ⊢ N ∈ ℕ → N + 1 ∈ ℕ
7 6 nnnn0d ⊢ N ∈ ℕ → N + 1 ∈ ℕ 0
8 5 7 nn0expcld ⊢ N ∈ ℕ → 2 N + 1 ∈ ℕ 0
9 3 8 nnexpcld ⊢ N ∈ ℕ → 2 2 N + 1 ∈ ℕ
10 9 nnzd ⊢ N ∈ ℕ → 2 2 N + 1 ∈ ℤ
11 modprm1div ⊢ P ∈ ℙ ∧ 2 2 N + 1 ∈ ℤ → 2 2 N + 1 mod P = 1 ↔ P ∥ 2 2 N + 1 − 1
12 1 10 11 syl2anr ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 → 2 2 N + 1 mod P = 1 ↔ P ∥ 2 2 N + 1 − 1
13 prmnn ⊢ P ∈ ℙ → P ∈ ℕ
14 1 13 syl ⊢ P ∈ ℙ ∖ 2 → P ∈ ℕ
15 14 adantl ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 → P ∈ ℕ
16 2z ⊢ 2 ∈ ℤ
17 16 a1i ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 → 2 ∈ ℤ
18 eldifsn ⊢ P ∈ ℙ ∖ 2 ↔ P ∈ ℙ ∧ P ≠ 2
19 simpr ⊢ P ∈ ℙ ∧ P ≠ 2 → P ≠ 2
20 19 necomd ⊢ P ∈ ℙ ∧ P ≠ 2 → 2 ≠ P
21 18 20 sylbi ⊢ P ∈ ℙ ∖ 2 → 2 ≠ P
22 2prm ⊢ 2 ∈ ℙ
23 prmrp ⊢ 2 ∈ ℙ ∧ P ∈ ℙ → 2 gcd P = 1 ↔ 2 ≠ P
24 22 1 23 sylancr ⊢ P ∈ ℙ ∖ 2 → 2 gcd P = 1 ↔ 2 ≠ P
25 21 24 mpbird ⊢ P ∈ ℙ ∖ 2 → 2 gcd P = 1
26 25 adantl ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 → 2 gcd P = 1
27 15 17 26 3jca ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 → P ∈ ℕ ∧ 2 ∈ ℤ ∧ 2 gcd P = 1
28 8 adantr ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 → 2 N + 1 ∈ ℕ 0
29 odzdvds ⊢ P ∈ ℕ ∧ 2 ∈ ℤ ∧ 2 gcd P = 1 ∧ 2 N + 1 ∈ ℕ 0 → P ∥ 2 2 N + 1 − 1 ↔ odℤ ⁡ P ⁡ 2 ∥ 2 N + 1
30 27 28 29 syl2anc ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 → P ∥ 2 2 N + 1 − 1 ↔ odℤ ⁡ P ⁡ 2 ∥ 2 N + 1
31 12 30 bitrd ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 → 2 2 N + 1 mod P = 1 ↔ odℤ ⁡ P ⁡ 2 ∥ 2 N + 1
32 nnnn0 ⊢ N ∈ ℕ → N ∈ ℕ 0
33 5 32 nn0expcld ⊢ N ∈ ℕ → 2 N ∈ ℕ 0
34 3 33 nnexpcld ⊢ N ∈ ℕ → 2 2 N ∈ ℕ
35 34 nnzd ⊢ N ∈ ℕ → 2 2 N ∈ ℤ
36 modprm1div ⊢ P ∈ ℙ ∧ 2 2 N ∈ ℤ → 2 2 N mod P = 1 ↔ P ∥ 2 2 N − 1
37 1 35 36 syl2anr ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 → 2 2 N mod P = 1 ↔ P ∥ 2 2 N − 1
38 33 adantr ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 → 2 N ∈ ℕ 0
39 odzdvds ⊢ P ∈ ℕ ∧ 2 ∈ ℤ ∧ 2 gcd P = 1 ∧ 2 N ∈ ℕ 0 → P ∥ 2 2 N − 1 ↔ odℤ ⁡ P ⁡ 2 ∥ 2 N
40 27 38 39 syl2anc ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 → P ∥ 2 2 N − 1 ↔ odℤ ⁡ P ⁡ 2 ∥ 2 N
41 37 40 bitrd ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 → 2 2 N mod P = 1 ↔ odℤ ⁡ P ⁡ 2 ∥ 2 N
42 41 necon3abid ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 → 2 2 N mod P ≠ 1 ↔ ¬ odℤ ⁡ P ⁡ 2 ∥ 2 N
43 odzcl ⊢ P ∈ ℕ ∧ 2 ∈ ℤ ∧ 2 gcd P = 1 → odℤ ⁡ P ⁡ 2 ∈ ℕ
44 27 43 syl ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 → odℤ ⁡ P ⁡ 2 ∈ ℕ
45 7 adantr ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 → N + 1 ∈ ℕ 0
46 dvdsprmpweqle ⊢ 2 ∈ ℙ ∧ odℤ ⁡ P ⁡ 2 ∈ ℕ ∧ N + 1 ∈ ℕ 0 → odℤ ⁡ P ⁡ 2 ∥ 2 N + 1 → ∃ n ∈ ℕ 0 n ≤ N + 1 ∧ odℤ ⁡ P ⁡ 2 = 2 n
47 22 44 45 46 mp3an2i ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 → odℤ ⁡ P ⁡ 2 ∥ 2 N + 1 → ∃ n ∈ ℕ 0 n ≤ N + 1 ∧ odℤ ⁡ P ⁡ 2 = 2 n
48 breq1 ⊢ odℤ ⁡ P ⁡ 2 = 2 n → odℤ ⁡ P ⁡ 2 ∥ 2 N ↔ 2 n ∥ 2 N
49 48 adantl ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 ∧ n ≤ N + 1 ∧ odℤ ⁡ P ⁡ 2 = 2 n → odℤ ⁡ P ⁡ 2 ∥ 2 N ↔ 2 n ∥ 2 N
50 49 notbid ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 ∧ n ≤ N + 1 ∧ odℤ ⁡ P ⁡ 2 = 2 n → ¬ odℤ ⁡ P ⁡ 2 ∥ 2 N ↔ ¬ 2 n ∥ 2 N
51 simpr ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 ∧ n ≤ N + 1 ∧ odℤ ⁡ P ⁡ 2 = 2 n → odℤ ⁡ P ⁡ 2 = 2 n
52 51 adantr ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 ∧ n ≤ N + 1 ∧ odℤ ⁡ P ⁡ 2 = 2 n ∧ ¬ 2 n ∥ 2 N → odℤ ⁡ P ⁡ 2 = 2 n
53 nn0re ⊢ n ∈ ℕ 0 → n ∈ ℝ
54 6 nnred ⊢ N ∈ ℕ → N + 1 ∈ ℝ
55 54 adantr ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 → N + 1 ∈ ℝ
56 leloe ⊢ n ∈ ℝ ∧ N + 1 ∈ ℝ → n ≤ N + 1 ↔ n < N + 1 ∨ n = N + 1
57 53 55 56 syl2anr ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 → n ≤ N + 1 ↔ n < N + 1 ∨ n = N + 1
58 simpr ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 → n ∈ ℕ 0
59 nn0z ⊢ n ∈ ℕ 0 → n ∈ ℤ
60 59 adantl ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 → n ∈ ℤ
61 60 adantr ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 ∧ n < N + 1 → n ∈ ℤ
62 nnz ⊢ N ∈ ℕ → N ∈ ℤ
63 62 adantr ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 → N ∈ ℤ
64 63 adantr ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 → N ∈ ℤ
65 64 adantr ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 ∧ n < N + 1 → N ∈ ℤ
66 zleltp1 ⊢ n ∈ ℤ ∧ N ∈ ℤ → n ≤ N ↔ n < N + 1
67 59 63 66 syl2anr ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 → n ≤ N ↔ n < N + 1
68 67 biimpar ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 ∧ n < N + 1 → n ≤ N
69 eluz2 ⊢ N ∈ ℤ ≥ n ↔ n ∈ ℤ ∧ N ∈ ℤ ∧ n ≤ N
70 61 65 68 69 syl3anbrc ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 ∧ n < N + 1 → N ∈ ℤ ≥ n
71 dvdsexp ⊢ 2 ∈ ℤ ∧ n ∈ ℕ 0 ∧ N ∈ ℤ ≥ n → 2 n ∥ 2 N
72 16 58 70 71 mp3an2ani ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 ∧ n < N + 1 → 2 n ∥ 2 N
73 72 pm2.24d ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 ∧ n < N + 1 → ¬ 2 n ∥ 2 N → 2 n = 2 N + 1
74 73 expcom ⊢ n < N + 1 → N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 → ¬ 2 n ∥ 2 N → 2 n = 2 N + 1
75 oveq2 ⊢ n = N + 1 → 2 n = 2 N + 1
76 75 2a1d ⊢ n = N + 1 → N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 → ¬ 2 n ∥ 2 N → 2 n = 2 N + 1
77 74 76 jaoi ⊢ n < N + 1 ∨ n = N + 1 → N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 → ¬ 2 n ∥ 2 N → 2 n = 2 N + 1
78 77 com12 ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 → n < N + 1 ∨ n = N + 1 → ¬ 2 n ∥ 2 N → 2 n = 2 N + 1
79 57 78 sylbid ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 → n ≤ N + 1 → ¬ 2 n ∥ 2 N → 2 n = 2 N + 1
80 79 imp ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 ∧ n ≤ N + 1 → ¬ 2 n ∥ 2 N → 2 n = 2 N + 1
81 80 adantr ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 ∧ n ≤ N + 1 ∧ odℤ ⁡ P ⁡ 2 = 2 n → ¬ 2 n ∥ 2 N → 2 n = 2 N + 1
82 81 imp ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 ∧ n ≤ N + 1 ∧ odℤ ⁡ P ⁡ 2 = 2 n ∧ ¬ 2 n ∥ 2 N → 2 n = 2 N + 1
83 52 82 eqtrd ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 ∧ n ≤ N + 1 ∧ odℤ ⁡ P ⁡ 2 = 2 n ∧ ¬ 2 n ∥ 2 N → odℤ ⁡ P ⁡ 2 = 2 N + 1
84 83 ex ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 ∧ n ≤ N + 1 ∧ odℤ ⁡ P ⁡ 2 = 2 n → ¬ 2 n ∥ 2 N → odℤ ⁡ P ⁡ 2 = 2 N + 1
85 50 84 sylbid ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 ∧ n ≤ N + 1 ∧ odℤ ⁡ P ⁡ 2 = 2 n → ¬ odℤ ⁡ P ⁡ 2 ∥ 2 N → odℤ ⁡ P ⁡ 2 = 2 N + 1
86 85 expl ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ n ∈ ℕ 0 → n ≤ N + 1 ∧ odℤ ⁡ P ⁡ 2 = 2 n → ¬ odℤ ⁡ P ⁡ 2 ∥ 2 N → odℤ ⁡ P ⁡ 2 = 2 N + 1
87 86 rexlimdva ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 → ∃ n ∈ ℕ 0 n ≤ N + 1 ∧ odℤ ⁡ P ⁡ 2 = 2 n → ¬ odℤ ⁡ P ⁡ 2 ∥ 2 N → odℤ ⁡ P ⁡ 2 = 2 N + 1
88 47 87 syld ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 → odℤ ⁡ P ⁡ 2 ∥ 2 N + 1 → ¬ odℤ ⁡ P ⁡ 2 ∥ 2 N → odℤ ⁡ P ⁡ 2 = 2 N + 1
89 88 com23 ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 → ¬ odℤ ⁡ P ⁡ 2 ∥ 2 N → odℤ ⁡ P ⁡ 2 ∥ 2 N + 1 → odℤ ⁡ P ⁡ 2 = 2 N + 1
90 42 89 sylbid ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 → 2 2 N mod P ≠ 1 → odℤ ⁡ P ⁡ 2 ∥ 2 N + 1 → odℤ ⁡ P ⁡ 2 = 2 N + 1
91 90 com23 ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 → odℤ ⁡ P ⁡ 2 ∥ 2 N + 1 → 2 2 N mod P ≠ 1 → odℤ ⁡ P ⁡ 2 = 2 N + 1
92 31 91 sylbid ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 → 2 2 N + 1 mod P = 1 → 2 2 N mod P ≠ 1 → odℤ ⁡ P ⁡ 2 = 2 N + 1
93 92 com23 ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 → 2 2 N mod P ≠ 1 → 2 2 N + 1 mod P = 1 → odℤ ⁡ P ⁡ 2 = 2 N + 1
94 93 imp32 ⊢ N ∈ ℕ ∧ P ∈ ℙ ∖ 2 ∧ 2 2 N mod P ≠ 1 ∧ 2 2 N + 1 mod P = 1 → odℤ ⁡ P ⁡ 2 = 2 N + 1