Metamath Proof Explorer


Theorem prmdivdiv

Description: The (modular) inverse of the inverse of a number is itself. (Contributed by Mario Carneiro, 24-Jan-2015)

Ref Expression
Hypothesis prmdiv.1 ⊢ R = A P − 2 mod P
Assertion prmdivdiv ⊢ P ∈ ℙ ∧ A ∈ 1 … P − 1 → A = R P − 2 mod P

Proof

Step Hyp Ref Expression
1 prmdiv.1 ⊢ R = A P − 2 mod P
2 fz1ssfz0 ⊢ 1 … P − 1 ⊆ 0 … P − 1
3 simpr ⊢ P ∈ ℙ ∧ A ∈ 1 … P − 1 → A ∈ 1 … P − 1
4 2 3 sselid ⊢ P ∈ ℙ ∧ A ∈ 1 … P − 1 → A ∈ 0 … P − 1
5 simpl ⊢ P ∈ ℙ ∧ A ∈ 1 … P − 1 → P ∈ ℙ
6 elfznn ⊢ A ∈ 1 … P − 1 → A ∈ ℕ
7 6 adantl ⊢ P ∈ ℙ ∧ A ∈ 1 … P − 1 → A ∈ ℕ
8 7 nnzd ⊢ P ∈ ℙ ∧ A ∈ 1 … P − 1 → A ∈ ℤ
9 prmnn ⊢ P ∈ ℙ → P ∈ ℕ
10 fzm1ndvds ⊢ P ∈ ℕ ∧ A ∈ 1 … P − 1 → ¬ P ∥ A
11 9 10 sylan ⊢ P ∈ ℙ ∧ A ∈ 1 … P − 1 → ¬ P ∥ A
12 1 prmdiv ⊢ P ∈ ℙ ∧ A ∈ ℤ ∧ ¬ P ∥ A → R ∈ 1 … P − 1 ∧ P ∥ A ⁢ R − 1
13 5 8 11 12 syl3anc ⊢ P ∈ ℙ ∧ A ∈ 1 … P − 1 → R ∈ 1 … P − 1 ∧ P ∥ A ⁢ R − 1
14 13 simprd ⊢ P ∈ ℙ ∧ A ∈ 1 … P − 1 → P ∥ A ⁢ R − 1
15 7 nncnd ⊢ P ∈ ℙ ∧ A ∈ 1 … P − 1 → A ∈ ℂ
16 13 simpld ⊢ P ∈ ℙ ∧ A ∈ 1 … P − 1 → R ∈ 1 … P − 1
17 elfznn ⊢ R ∈ 1 … P − 1 → R ∈ ℕ
18 16 17 syl ⊢ P ∈ ℙ ∧ A ∈ 1 … P − 1 → R ∈ ℕ
19 18 nncnd ⊢ P ∈ ℙ ∧ A ∈ 1 … P − 1 → R ∈ ℂ
20 15 19 mulcomd ⊢ P ∈ ℙ ∧ A ∈ 1 … P − 1 → A ⁢ R = R ⁢ A
21 20 oveq1d ⊢ P ∈ ℙ ∧ A ∈ 1 … P − 1 → A ⁢ R − 1 = R ⁢ A − 1
22 14 21 breqtrd ⊢ P ∈ ℙ ∧ A ∈ 1 … P − 1 → P ∥ R ⁢ A − 1
23 16 elfzelzd ⊢ P ∈ ℙ ∧ A ∈ 1 … P − 1 → R ∈ ℤ
24 fzm1ndvds ⊢ P ∈ ℕ ∧ R ∈ 1 … P − 1 → ¬ P ∥ R
25 9 16 24 syl2an2r ⊢ P ∈ ℙ ∧ A ∈ 1 … P − 1 → ¬ P ∥ R
26 eqid ⊢ R P − 2 mod P = R P − 2 mod P
27 26 prmdiveq ⊢ P ∈ ℙ ∧ R ∈ ℤ ∧ ¬ P ∥ R → A ∈ 0 … P − 1 ∧ P ∥ R ⁢ A − 1 ↔ A = R P − 2 mod P
28 5 23 25 27 syl3anc ⊢ P ∈ ℙ ∧ A ∈ 1 … P − 1 → A ∈ 0 … P − 1 ∧ P ∥ R ⁢ A − 1 ↔ A = R P − 2 mod P
29 4 22 28 mpbi2and ⊢ P ∈ ℙ ∧ A ∈ 1 … P − 1 → A = R P − 2 mod P