Metamath Proof Explorer


Theorem dvdsppwf1o

Description: A bijection between the divisors of a prime power and the integers less than or equal to the exponent. (Contributed by Mario Carneiro, 5-May-2016)

Ref Expression
Hypothesis dvdsppwf1o.f ⊢ F = n ∈ 0 … A ⟼ P n
Assertion dvdsppwf1o ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 → F : 0 … A ⟶ 1-1 onto x ∈ ℕ | x ∥ P A

Proof

Step Hyp Ref Expression
1 dvdsppwf1o.f ⊢ F = n ∈ 0 … A ⟼ P n
2 breq1 ⊢ x = P n → x ∥ P A ↔ P n ∥ P A
3 prmnn ⊢ P ∈ ℙ → P ∈ ℕ
4 3 adantr ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 → P ∈ ℕ
5 elfznn0 ⊢ n ∈ 0 … A → n ∈ ℕ 0
6 nnexpcl ⊢ P ∈ ℕ ∧ n ∈ ℕ 0 → P n ∈ ℕ
7 4 5 6 syl2an ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ n ∈ 0 … A → P n ∈ ℕ
8 prmz ⊢ P ∈ ℙ → P ∈ ℤ
9 8 ad2antrr ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ n ∈ 0 … A → P ∈ ℤ
10 5 adantl ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ n ∈ 0 … A → n ∈ ℕ 0
11 elfzuz3 ⊢ n ∈ 0 … A → A ∈ ℤ ≥ n
12 11 adantl ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ n ∈ 0 … A → A ∈ ℤ ≥ n
13 dvdsexp ⊢ P ∈ ℤ ∧ n ∈ ℕ 0 ∧ A ∈ ℤ ≥ n → P n ∥ P A
14 9 10 12 13 syl3anc ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ n ∈ 0 … A → P n ∥ P A
15 2 7 14 elrabd ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ n ∈ 0 … A → P n ∈ x ∈ ℕ | x ∥ P A
16 simpl ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 → P ∈ ℙ
17 elrabi ⊢ m ∈ x ∈ ℕ | x ∥ P A → m ∈ ℕ
18 pccl ⊢ P ∈ ℙ ∧ m ∈ ℕ → P pCnt m ∈ ℕ 0
19 16 17 18 syl2an ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ m ∈ x ∈ ℕ | x ∥ P A → P pCnt m ∈ ℕ 0
20 16 adantr ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ m ∈ x ∈ ℕ | x ∥ P A → P ∈ ℙ
21 17 adantl ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ m ∈ x ∈ ℕ | x ∥ P A → m ∈ ℕ
22 21 nnzd ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ m ∈ x ∈ ℕ | x ∥ P A → m ∈ ℤ
23 8 ad2antrr ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ m ∈ x ∈ ℕ | x ∥ P A → P ∈ ℤ
24 simplr ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ m ∈ x ∈ ℕ | x ∥ P A → A ∈ ℕ 0
25 zexpcl ⊢ P ∈ ℤ ∧ A ∈ ℕ 0 → P A ∈ ℤ
26 23 24 25 syl2anc ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ m ∈ x ∈ ℕ | x ∥ P A → P A ∈ ℤ
27 breq1 ⊢ x = m → x ∥ P A ↔ m ∥ P A
28 27 elrab ⊢ m ∈ x ∈ ℕ | x ∥ P A ↔ m ∈ ℕ ∧ m ∥ P A
29 28 simprbi ⊢ m ∈ x ∈ ℕ | x ∥ P A → m ∥ P A
30 29 adantl ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ m ∈ x ∈ ℕ | x ∥ P A → m ∥ P A
31 pcdvdstr ⊢ P ∈ ℙ ∧ m ∈ ℤ ∧ P A ∈ ℤ ∧ m ∥ P A → P pCnt m ≤ P pCnt P A
32 20 22 26 30 31 syl13anc ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ m ∈ x ∈ ℕ | x ∥ P A → P pCnt m ≤ P pCnt P A
33 pcidlem ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 → P pCnt P A = A
34 33 adantr ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ m ∈ x ∈ ℕ | x ∥ P A → P pCnt P A = A
35 32 34 breqtrd ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ m ∈ x ∈ ℕ | x ∥ P A → P pCnt m ≤ A
36 fznn0 ⊢ A ∈ ℕ 0 → P pCnt m ∈ 0 … A ↔ P pCnt m ∈ ℕ 0 ∧ P pCnt m ≤ A
37 24 36 syl ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ m ∈ x ∈ ℕ | x ∥ P A → P pCnt m ∈ 0 … A ↔ P pCnt m ∈ ℕ 0 ∧ P pCnt m ≤ A
38 19 35 37 mpbir2and ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ m ∈ x ∈ ℕ | x ∥ P A → P pCnt m ∈ 0 … A
39 oveq2 ⊢ n = A → P n = P A
40 39 breq2d ⊢ n = A → m ∥ P n ↔ m ∥ P A
41 40 rspcev ⊢ A ∈ ℕ 0 ∧ m ∥ P A → ∃ n ∈ ℕ 0 m ∥ P n
42 24 30 41 syl2anc ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ m ∈ x ∈ ℕ | x ∥ P A → ∃ n ∈ ℕ 0 m ∥ P n
43 pcprmpw2 ⊢ P ∈ ℙ ∧ m ∈ ℕ → ∃ n ∈ ℕ 0 m ∥ P n ↔ m = P P pCnt m
44 16 17 43 syl2an ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ m ∈ x ∈ ℕ | x ∥ P A → ∃ n ∈ ℕ 0 m ∥ P n ↔ m = P P pCnt m
45 42 44 mpbid ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ m ∈ x ∈ ℕ | x ∥ P A → m = P P pCnt m
46 45 adantrl ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ n ∈ 0 … A ∧ m ∈ x ∈ ℕ | x ∥ P A → m = P P pCnt m
47 oveq2 ⊢ n = P pCnt m → P n = P P pCnt m
48 47 eqeq2d ⊢ n = P pCnt m → m = P n ↔ m = P P pCnt m
49 46 48 syl5ibrcom ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ n ∈ 0 … A ∧ m ∈ x ∈ ℕ | x ∥ P A → n = P pCnt m → m = P n
50 elfzelz ⊢ n ∈ 0 … A → n ∈ ℤ
51 pcid ⊢ P ∈ ℙ ∧ n ∈ ℤ → P pCnt P n = n
52 16 50 51 syl2an ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ n ∈ 0 … A → P pCnt P n = n
53 52 eqcomd ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ n ∈ 0 … A → n = P pCnt P n
54 53 adantrr ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ n ∈ 0 … A ∧ m ∈ x ∈ ℕ | x ∥ P A → n = P pCnt P n
55 oveq2 ⊢ m = P n → P pCnt m = P pCnt P n
56 55 eqeq2d ⊢ m = P n → n = P pCnt m ↔ n = P pCnt P n
57 54 56 syl5ibrcom ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ n ∈ 0 … A ∧ m ∈ x ∈ ℕ | x ∥ P A → m = P n → n = P pCnt m
58 49 57 impbid ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 ∧ n ∈ 0 … A ∧ m ∈ x ∈ ℕ | x ∥ P A → n = P pCnt m ↔ m = P n
59 1 15 38 58 f1o2d ⊢ P ∈ ℙ ∧ A ∈ ℕ 0 → F : 0 … A ⟶ 1-1 onto x ∈ ℕ | x ∥ P A