Proof of Theorem lgsqrlem1
| Step | Hyp | Ref
| Expression |
| 1 | | lgsqr.t |
. . . . 5
⊢ 𝑇 = ((((𝑃 − 1) / 2) ↑ 𝑋) − 1 ) |
| 2 | 1 | fveq2i 6909 |
. . . 4
⊢ (𝑂‘𝑇) = (𝑂‘((((𝑃 − 1) / 2) ↑ 𝑋) − 1 )) |
| 3 | 2 | fveq1i 6907 |
. . 3
⊢ ((𝑂‘𝑇)‘(𝐿‘𝐴)) = ((𝑂‘((((𝑃 − 1) / 2) ↑ 𝑋) − 1 ))‘(𝐿‘𝐴)) |
| 4 | | lgsqr.o |
. . . . 5
⊢ 𝑂 = (eval1‘𝑌) |
| 5 | | lgsqr.s |
. . . . 5
⊢ 𝑆 = (Poly1‘𝑌) |
| 6 | | eqid 2737 |
. . . . 5
⊢
(Base‘𝑌) =
(Base‘𝑌) |
| 7 | | lgsqr.b |
. . . . 5
⊢ 𝐵 = (Base‘𝑆) |
| 8 | | lgsqr.1 |
. . . . . . . . 9
⊢ (𝜑 → 𝑃 ∈ (ℙ ∖
{2})) |
| 9 | 8 | eldifad 3963 |
. . . . . . . 8
⊢ (𝜑 → 𝑃 ∈ ℙ) |
| 10 | | lgsqr.y |
. . . . . . . . 9
⊢ 𝑌 =
(ℤ/nℤ‘𝑃) |
| 11 | 10 | znfld 21579 |
. . . . . . . 8
⊢ (𝑃 ∈ ℙ → 𝑌 ∈ Field) |
| 12 | 9, 11 | syl 17 |
. . . . . . 7
⊢ (𝜑 → 𝑌 ∈ Field) |
| 13 | | fldidom 20771 |
. . . . . . 7
⊢ (𝑌 ∈ Field → 𝑌 ∈ IDomn) |
| 14 | 12, 13 | syl 17 |
. . . . . 6
⊢ (𝜑 → 𝑌 ∈ IDomn) |
| 15 | | isidom 20725 |
. . . . . . 7
⊢ (𝑌 ∈ IDomn ↔ (𝑌 ∈ CRing ∧ 𝑌 ∈ Domn)) |
| 16 | 15 | simplbi 497 |
. . . . . 6
⊢ (𝑌 ∈ IDomn → 𝑌 ∈ CRing) |
| 17 | 14, 16 | syl 17 |
. . . . 5
⊢ (𝜑 → 𝑌 ∈ CRing) |
| 18 | | crngring 20242 |
. . . . . . . . 9
⊢ (𝑌 ∈ CRing → 𝑌 ∈ Ring) |
| 19 | 17, 18 | syl 17 |
. . . . . . . 8
⊢ (𝜑 → 𝑌 ∈ Ring) |
| 20 | | lgsqr.l |
. . . . . . . . 9
⊢ 𝐿 = (ℤRHom‘𝑌) |
| 21 | 20 | zrhrhm 21522 |
. . . . . . . 8
⊢ (𝑌 ∈ Ring → 𝐿 ∈ (ℤring
RingHom 𝑌)) |
| 22 | 19, 21 | syl 17 |
. . . . . . 7
⊢ (𝜑 → 𝐿 ∈ (ℤring RingHom
𝑌)) |
| 23 | | zringbas 21464 |
. . . . . . . 8
⊢ ℤ =
(Base‘ℤring) |
| 24 | 23, 6 | rhmf 20485 |
. . . . . . 7
⊢ (𝐿 ∈ (ℤring
RingHom 𝑌) → 𝐿:ℤ⟶(Base‘𝑌)) |
| 25 | 22, 24 | syl 17 |
. . . . . 6
⊢ (𝜑 → 𝐿:ℤ⟶(Base‘𝑌)) |
| 26 | | lgsqrlem1.3 |
. . . . . 6
⊢ (𝜑 → 𝐴 ∈ ℤ) |
| 27 | 25, 26 | ffvelcdmd 7105 |
. . . . 5
⊢ (𝜑 → (𝐿‘𝐴) ∈ (Base‘𝑌)) |
| 28 | | lgsqr.x |
. . . . . . . 8
⊢ 𝑋 = (var1‘𝑌) |
| 29 | 4, 28, 6, 5, 7, 17,
27 | evl1vard 22341 |
. . . . . . 7
⊢ (𝜑 → (𝑋 ∈ 𝐵 ∧ ((𝑂‘𝑋)‘(𝐿‘𝐴)) = (𝐿‘𝐴))) |
| 30 | | lgsqr.e |
. . . . . . 7
⊢ ↑ =
(.g‘(mulGrp‘𝑆)) |
| 31 | | eqid 2737 |
. . . . . . 7
⊢
(.g‘(mulGrp‘𝑌)) =
(.g‘(mulGrp‘𝑌)) |
| 32 | | oddprm 16848 |
. . . . . . . . 9
⊢ (𝑃 ∈ (ℙ ∖ {2})
→ ((𝑃 − 1) / 2)
∈ ℕ) |
| 33 | 8, 32 | syl 17 |
. . . . . . . 8
⊢ (𝜑 → ((𝑃 − 1) / 2) ∈
ℕ) |
| 34 | 33 | nnnn0d 12587 |
. . . . . . 7
⊢ (𝜑 → ((𝑃 − 1) / 2) ∈
ℕ0) |
| 35 | 4, 5, 6, 7, 17, 27, 29, 30, 31, 34 | evl1expd 22349 |
. . . . . 6
⊢ (𝜑 → ((((𝑃 − 1) / 2) ↑ 𝑋) ∈ 𝐵 ∧ ((𝑂‘(((𝑃 − 1) / 2) ↑ 𝑋))‘(𝐿‘𝐴)) = (((𝑃 − 1) /
2)(.g‘(mulGrp‘𝑌))(𝐿‘𝐴)))) |
| 36 | | zringmpg 21482 |
. . . . . . . . . . . 12
⊢
((mulGrp‘ℂfld) ↾s ℤ) =
(mulGrp‘ℤring) |
| 37 | | eqid 2737 |
. . . . . . . . . . . 12
⊢
(mulGrp‘𝑌) =
(mulGrp‘𝑌) |
| 38 | 36, 37 | rhmmhm 20479 |
. . . . . . . . . . 11
⊢ (𝐿 ∈ (ℤring
RingHom 𝑌) → 𝐿 ∈
(((mulGrp‘ℂfld) ↾s ℤ) MndHom
(mulGrp‘𝑌))) |
| 39 | 22, 38 | syl 17 |
. . . . . . . . . 10
⊢ (𝜑 → 𝐿 ∈
(((mulGrp‘ℂfld) ↾s ℤ) MndHom
(mulGrp‘𝑌))) |
| 40 | 36, 23 | mgpbas 20142 |
. . . . . . . . . . 11
⊢ ℤ =
(Base‘((mulGrp‘ℂfld) ↾s
ℤ)) |
| 41 | | eqid 2737 |
. . . . . . . . . . 11
⊢
(.g‘((mulGrp‘ℂfld)
↾s ℤ)) =
(.g‘((mulGrp‘ℂfld) ↾s
ℤ)) |
| 42 | 40, 41, 31 | mhmmulg 19133 |
. . . . . . . . . 10
⊢ ((𝐿 ∈
(((mulGrp‘ℂfld) ↾s ℤ) MndHom
(mulGrp‘𝑌)) ∧
((𝑃 − 1) / 2) ∈
ℕ0 ∧ 𝐴
∈ ℤ) → (𝐿‘(((𝑃 − 1) /
2)(.g‘((mulGrp‘ℂfld)
↾s ℤ))𝐴)) = (((𝑃 − 1) /
2)(.g‘(mulGrp‘𝑌))(𝐿‘𝐴))) |
| 43 | 39, 34, 26, 42 | syl3anc 1373 |
. . . . . . . . 9
⊢ (𝜑 → (𝐿‘(((𝑃 − 1) /
2)(.g‘((mulGrp‘ℂfld)
↾s ℤ))𝐴)) = (((𝑃 − 1) /
2)(.g‘(mulGrp‘𝑌))(𝐿‘𝐴))) |
| 44 | | zsubrg 21438 |
. . . . . . . . . . . . . 14
⊢ ℤ
∈ (SubRing‘ℂfld) |
| 45 | | eqid 2737 |
. . . . . . . . . . . . . . 15
⊢
(mulGrp‘ℂfld) =
(mulGrp‘ℂfld) |
| 46 | 45 | subrgsubm 20585 |
. . . . . . . . . . . . . 14
⊢ (ℤ
∈ (SubRing‘ℂfld) → ℤ ∈
(SubMnd‘(mulGrp‘ℂfld))) |
| 47 | 44, 46 | mp1i 13 |
. . . . . . . . . . . . 13
⊢ (𝜑 → ℤ ∈
(SubMnd‘(mulGrp‘ℂfld))) |
| 48 | | eqid 2737 |
. . . . . . . . . . . . . 14
⊢
(.g‘(mulGrp‘ℂfld)) =
(.g‘(mulGrp‘ℂfld)) |
| 49 | | eqid 2737 |
. . . . . . . . . . . . . 14
⊢
((mulGrp‘ℂfld) ↾s ℤ) =
((mulGrp‘ℂfld) ↾s
ℤ) |
| 50 | 48, 49, 41 | submmulg 19136 |
. . . . . . . . . . . . 13
⊢ ((ℤ
∈ (SubMnd‘(mulGrp‘ℂfld)) ∧ ((𝑃 − 1) / 2) ∈
ℕ0 ∧ 𝐴
∈ ℤ) → (((𝑃
− 1) / 2)(.g‘(mulGrp‘ℂfld))𝐴) = (((𝑃 − 1) /
2)(.g‘((mulGrp‘ℂfld)
↾s ℤ))𝐴)) |
| 51 | 47, 34, 26, 50 | syl3anc 1373 |
. . . . . . . . . . . 12
⊢ (𝜑 → (((𝑃 − 1) /
2)(.g‘(mulGrp‘ℂfld))𝐴) = (((𝑃 − 1) /
2)(.g‘((mulGrp‘ℂfld)
↾s ℤ))𝐴)) |
| 52 | 26 | zcnd 12723 |
. . . . . . . . . . . . 13
⊢ (𝜑 → 𝐴 ∈ ℂ) |
| 53 | | cnfldexp 21417 |
. . . . . . . . . . . . 13
⊢ ((𝐴 ∈ ℂ ∧ ((𝑃 − 1) / 2) ∈
ℕ0) → (((𝑃 − 1) /
2)(.g‘(mulGrp‘ℂfld))𝐴) = (𝐴↑((𝑃 − 1) / 2))) |
| 54 | 52, 34, 53 | syl2anc 584 |
. . . . . . . . . . . 12
⊢ (𝜑 → (((𝑃 − 1) /
2)(.g‘(mulGrp‘ℂfld))𝐴) = (𝐴↑((𝑃 − 1) / 2))) |
| 55 | 51, 54 | eqtr3d 2779 |
. . . . . . . . . . 11
⊢ (𝜑 → (((𝑃 − 1) /
2)(.g‘((mulGrp‘ℂfld)
↾s ℤ))𝐴) = (𝐴↑((𝑃 − 1) / 2))) |
| 56 | 55 | fveq2d 6910 |
. . . . . . . . . 10
⊢ (𝜑 → (𝐿‘(((𝑃 − 1) /
2)(.g‘((mulGrp‘ℂfld)
↾s ℤ))𝐴)) = (𝐿‘(𝐴↑((𝑃 − 1) / 2)))) |
| 57 | | lgsqrlem1.4 |
. . . . . . . . . . . 12
⊢ (𝜑 → ((𝐴↑((𝑃 − 1) / 2)) mod 𝑃) = (1 mod 𝑃)) |
| 58 | | prmnn 16711 |
. . . . . . . . . . . . . 14
⊢ (𝑃 ∈ ℙ → 𝑃 ∈
ℕ) |
| 59 | 9, 58 | syl 17 |
. . . . . . . . . . . . 13
⊢ (𝜑 → 𝑃 ∈ ℕ) |
| 60 | | zexpcl 14117 |
. . . . . . . . . . . . . 14
⊢ ((𝐴 ∈ ℤ ∧ ((𝑃 − 1) / 2) ∈
ℕ0) → (𝐴↑((𝑃 − 1) / 2)) ∈
ℤ) |
| 61 | 26, 34, 60 | syl2anc 584 |
. . . . . . . . . . . . 13
⊢ (𝜑 → (𝐴↑((𝑃 − 1) / 2)) ∈
ℤ) |
| 62 | | 1zzd 12648 |
. . . . . . . . . . . . 13
⊢ (𝜑 → 1 ∈
ℤ) |
| 63 | | moddvds 16301 |
. . . . . . . . . . . . 13
⊢ ((𝑃 ∈ ℕ ∧ (𝐴↑((𝑃 − 1) / 2)) ∈ ℤ ∧ 1
∈ ℤ) → (((𝐴↑((𝑃 − 1) / 2)) mod 𝑃) = (1 mod 𝑃) ↔ 𝑃 ∥ ((𝐴↑((𝑃 − 1) / 2)) −
1))) |
| 64 | 59, 61, 62, 63 | syl3anc 1373 |
. . . . . . . . . . . 12
⊢ (𝜑 → (((𝐴↑((𝑃 − 1) / 2)) mod 𝑃) = (1 mod 𝑃) ↔ 𝑃 ∥ ((𝐴↑((𝑃 − 1) / 2)) −
1))) |
| 65 | 57, 64 | mpbid 232 |
. . . . . . . . . . 11
⊢ (𝜑 → 𝑃 ∥ ((𝐴↑((𝑃 − 1) / 2)) −
1)) |
| 66 | 59 | nnnn0d 12587 |
. . . . . . . . . . . 12
⊢ (𝜑 → 𝑃 ∈
ℕ0) |
| 67 | 10, 20 | zndvds 21568 |
. . . . . . . . . . . 12
⊢ ((𝑃 ∈ ℕ0
∧ (𝐴↑((𝑃 − 1) / 2)) ∈ ℤ
∧ 1 ∈ ℤ) → ((𝐿‘(𝐴↑((𝑃 − 1) / 2))) = (𝐿‘1) ↔ 𝑃 ∥ ((𝐴↑((𝑃 − 1) / 2)) −
1))) |
| 68 | 66, 61, 62, 67 | syl3anc 1373 |
. . . . . . . . . . 11
⊢ (𝜑 → ((𝐿‘(𝐴↑((𝑃 − 1) / 2))) = (𝐿‘1) ↔ 𝑃 ∥ ((𝐴↑((𝑃 − 1) / 2)) −
1))) |
| 69 | 65, 68 | mpbird 257 |
. . . . . . . . . 10
⊢ (𝜑 → (𝐿‘(𝐴↑((𝑃 − 1) / 2))) = (𝐿‘1)) |
| 70 | | zring1 21470 |
. . . . . . . . . . . 12
⊢ 1 =
(1r‘ℤring) |
| 71 | | eqid 2737 |
. . . . . . . . . . . 12
⊢
(1r‘𝑌) = (1r‘𝑌) |
| 72 | 70, 71 | rhm1 20489 |
. . . . . . . . . . 11
⊢ (𝐿 ∈ (ℤring
RingHom 𝑌) → (𝐿‘1) =
(1r‘𝑌)) |
| 73 | 22, 72 | syl 17 |
. . . . . . . . . 10
⊢ (𝜑 → (𝐿‘1) = (1r‘𝑌)) |
| 74 | 56, 69, 73 | 3eqtrd 2781 |
. . . . . . . . 9
⊢ (𝜑 → (𝐿‘(((𝑃 − 1) /
2)(.g‘((mulGrp‘ℂfld)
↾s ℤ))𝐴)) = (1r‘𝑌)) |
| 75 | 43, 74 | eqtr3d 2779 |
. . . . . . . 8
⊢ (𝜑 → (((𝑃 − 1) /
2)(.g‘(mulGrp‘𝑌))(𝐿‘𝐴)) = (1r‘𝑌)) |
| 76 | 75 | eqeq2d 2748 |
. . . . . . 7
⊢ (𝜑 → (((𝑂‘(((𝑃 − 1) / 2) ↑ 𝑋))‘(𝐿‘𝐴)) = (((𝑃 − 1) /
2)(.g‘(mulGrp‘𝑌))(𝐿‘𝐴)) ↔ ((𝑂‘(((𝑃 − 1) / 2) ↑ 𝑋))‘(𝐿‘𝐴)) = (1r‘𝑌))) |
| 77 | 76 | anbi2d 630 |
. . . . . 6
⊢ (𝜑 → (((((𝑃 − 1) / 2) ↑ 𝑋) ∈ 𝐵 ∧ ((𝑂‘(((𝑃 − 1) / 2) ↑ 𝑋))‘(𝐿‘𝐴)) = (((𝑃 − 1) /
2)(.g‘(mulGrp‘𝑌))(𝐿‘𝐴))) ↔ ((((𝑃 − 1) / 2) ↑ 𝑋) ∈ 𝐵 ∧ ((𝑂‘(((𝑃 − 1) / 2) ↑ 𝑋))‘(𝐿‘𝐴)) = (1r‘𝑌)))) |
| 78 | 35, 77 | mpbid 232 |
. . . . 5
⊢ (𝜑 → ((((𝑃 − 1) / 2) ↑ 𝑋) ∈ 𝐵 ∧ ((𝑂‘(((𝑃 − 1) / 2) ↑ 𝑋))‘(𝐿‘𝐴)) = (1r‘𝑌))) |
| 79 | | eqid 2737 |
. . . . . . 7
⊢
(algSc‘𝑆) =
(algSc‘𝑆) |
| 80 | 6, 71 | ringidcl 20262 |
. . . . . . . 8
⊢ (𝑌 ∈ Ring →
(1r‘𝑌)
∈ (Base‘𝑌)) |
| 81 | 19, 80 | syl 17 |
. . . . . . 7
⊢ (𝜑 → (1r‘𝑌) ∈ (Base‘𝑌)) |
| 82 | 4, 5, 6, 79, 7, 17, 81, 27 | evl1scad 22339 |
. . . . . 6
⊢ (𝜑 → (((algSc‘𝑆)‘(1r‘𝑌)) ∈ 𝐵 ∧ ((𝑂‘((algSc‘𝑆)‘(1r‘𝑌)))‘(𝐿‘𝐴)) = (1r‘𝑌))) |
| 83 | | lgsqr.u |
. . . . . . . . . 10
⊢ 1 =
(1r‘𝑆) |
| 84 | 5, 79, 71, 83 | ply1scl1 22296 |
. . . . . . . . 9
⊢ (𝑌 ∈ Ring →
((algSc‘𝑆)‘(1r‘𝑌)) = 1 ) |
| 85 | 19, 84 | syl 17 |
. . . . . . . 8
⊢ (𝜑 → ((algSc‘𝑆)‘(1r‘𝑌)) = 1 ) |
| 86 | 85 | eleq1d 2826 |
. . . . . . 7
⊢ (𝜑 → (((algSc‘𝑆)‘(1r‘𝑌)) ∈ 𝐵 ↔ 1 ∈ 𝐵)) |
| 87 | 85 | fveq2d 6910 |
. . . . . . . . 9
⊢ (𝜑 → (𝑂‘((algSc‘𝑆)‘(1r‘𝑌))) = (𝑂‘ 1 )) |
| 88 | 87 | fveq1d 6908 |
. . . . . . . 8
⊢ (𝜑 → ((𝑂‘((algSc‘𝑆)‘(1r‘𝑌)))‘(𝐿‘𝐴)) = ((𝑂‘ 1 )‘(𝐿‘𝐴))) |
| 89 | 88 | eqeq1d 2739 |
. . . . . . 7
⊢ (𝜑 → (((𝑂‘((algSc‘𝑆)‘(1r‘𝑌)))‘(𝐿‘𝐴)) = (1r‘𝑌) ↔ ((𝑂‘ 1 )‘(𝐿‘𝐴)) = (1r‘𝑌))) |
| 90 | 86, 89 | anbi12d 632 |
. . . . . 6
⊢ (𝜑 → ((((algSc‘𝑆)‘(1r‘𝑌)) ∈ 𝐵 ∧ ((𝑂‘((algSc‘𝑆)‘(1r‘𝑌)))‘(𝐿‘𝐴)) = (1r‘𝑌)) ↔ ( 1 ∈ 𝐵 ∧ ((𝑂‘ 1 )‘(𝐿‘𝐴)) = (1r‘𝑌)))) |
| 91 | 82, 90 | mpbid 232 |
. . . . 5
⊢ (𝜑 → ( 1 ∈ 𝐵 ∧ ((𝑂‘ 1 )‘(𝐿‘𝐴)) = (1r‘𝑌))) |
| 92 | | lgsqr.m |
. . . . 5
⊢ − =
(-g‘𝑆) |
| 93 | | eqid 2737 |
. . . . 5
⊢
(-g‘𝑌) = (-g‘𝑌) |
| 94 | 4, 5, 6, 7, 17, 27, 78, 91, 92, 93 | evl1subd 22346 |
. . . 4
⊢ (𝜑 → (((((𝑃 − 1) / 2) ↑ 𝑋) − 1 ) ∈ 𝐵 ∧ ((𝑂‘((((𝑃 − 1) / 2) ↑ 𝑋) − 1 ))‘(𝐿‘𝐴)) = ((1r‘𝑌)(-g‘𝑌)(1r‘𝑌)))) |
| 95 | 94 | simprd 495 |
. . 3
⊢ (𝜑 → ((𝑂‘((((𝑃 − 1) / 2) ↑ 𝑋) − 1 ))‘(𝐿‘𝐴)) = ((1r‘𝑌)(-g‘𝑌)(1r‘𝑌))) |
| 96 | 3, 95 | eqtrid 2789 |
. 2
⊢ (𝜑 → ((𝑂‘𝑇)‘(𝐿‘𝐴)) = ((1r‘𝑌)(-g‘𝑌)(1r‘𝑌))) |
| 97 | | ringgrp 20235 |
. . . 4
⊢ (𝑌 ∈ Ring → 𝑌 ∈ Grp) |
| 98 | 19, 97 | syl 17 |
. . 3
⊢ (𝜑 → 𝑌 ∈ Grp) |
| 99 | | eqid 2737 |
. . . 4
⊢
(0g‘𝑌) = (0g‘𝑌) |
| 100 | 6, 99, 93 | grpsubid 19042 |
. . 3
⊢ ((𝑌 ∈ Grp ∧
(1r‘𝑌)
∈ (Base‘𝑌))
→ ((1r‘𝑌)(-g‘𝑌)(1r‘𝑌)) = (0g‘𝑌)) |
| 101 | 98, 81, 100 | syl2anc 584 |
. 2
⊢ (𝜑 →
((1r‘𝑌)(-g‘𝑌)(1r‘𝑌)) = (0g‘𝑌)) |
| 102 | 96, 101 | eqtrd 2777 |
1
⊢ (𝜑 → ((𝑂‘𝑇)‘(𝐿‘𝐴)) = (0g‘𝑌)) |