Metamath Proof Explorer


Theorem dchrmulid2

Description: Left identity for the principal Dirichlet character. (Contributed by Mario Carneiro, 18-Apr-2016)

Ref Expression
Hypotheses dchrmhm.g 𝐺 = ( DChr ‘ 𝑁 )
dchrmhm.z 𝑍 = ( ℤ/nℤ ‘ 𝑁 )
dchrmhm.b 𝐷 = ( Base ‘ 𝐺 )
dchrn0.b 𝐵 = ( Base ‘ 𝑍 )
dchrn0.u 𝑈 = ( Unit ‘ 𝑍 )
dchr1cl.o 1 = ( 𝑘𝐵 ↦ if ( 𝑘𝑈 , 1 , 0 ) )
dchrmulid2.t · = ( +g𝐺 )
dchrmulid2.x ( 𝜑𝑋𝐷 )
Assertion dchrmulid2 ( 𝜑 → ( 1 · 𝑋 ) = 𝑋 )

Proof

Step Hyp Ref Expression
1 dchrmhm.g 𝐺 = ( DChr ‘ 𝑁 )
2 dchrmhm.z 𝑍 = ( ℤ/nℤ ‘ 𝑁 )
3 dchrmhm.b 𝐷 = ( Base ‘ 𝐺 )
4 dchrn0.b 𝐵 = ( Base ‘ 𝑍 )
5 dchrn0.u 𝑈 = ( Unit ‘ 𝑍 )
6 dchr1cl.o 1 = ( 𝑘𝐵 ↦ if ( 𝑘𝑈 , 1 , 0 ) )
7 dchrmulid2.t · = ( +g𝐺 )
8 dchrmulid2.x ( 𝜑𝑋𝐷 )
9 1 3 dchrrcl ( 𝑋𝐷𝑁 ∈ ℕ )
10 8 9 syl ( 𝜑𝑁 ∈ ℕ )
11 1 2 3 4 5 6 10 dchr1cl ( 𝜑1𝐷 )
12 1 2 3 7 11 8 dchrmul ( 𝜑 → ( 1 · 𝑋 ) = ( 1f · 𝑋 ) )
13 oveq1 ( 1 = if ( 𝑘𝑈 , 1 , 0 ) → ( 1 · ( 𝑋𝑘 ) ) = ( if ( 𝑘𝑈 , 1 , 0 ) · ( 𝑋𝑘 ) ) )
14 13 eqeq1d ( 1 = if ( 𝑘𝑈 , 1 , 0 ) → ( ( 1 · ( 𝑋𝑘 ) ) = ( 𝑋𝑘 ) ↔ ( if ( 𝑘𝑈 , 1 , 0 ) · ( 𝑋𝑘 ) ) = ( 𝑋𝑘 ) ) )
15 oveq1 ( 0 = if ( 𝑘𝑈 , 1 , 0 ) → ( 0 · ( 𝑋𝑘 ) ) = ( if ( 𝑘𝑈 , 1 , 0 ) · ( 𝑋𝑘 ) ) )
16 15 eqeq1d ( 0 = if ( 𝑘𝑈 , 1 , 0 ) → ( ( 0 · ( 𝑋𝑘 ) ) = ( 𝑋𝑘 ) ↔ ( if ( 𝑘𝑈 , 1 , 0 ) · ( 𝑋𝑘 ) ) = ( 𝑋𝑘 ) ) )
17 1 2 3 4 8 dchrf ( 𝜑𝑋 : 𝐵 ⟶ ℂ )
18 17 ffvelrnda ( ( 𝜑𝑘𝐵 ) → ( 𝑋𝑘 ) ∈ ℂ )
19 18 adantr ( ( ( 𝜑𝑘𝐵 ) ∧ 𝑘𝑈 ) → ( 𝑋𝑘 ) ∈ ℂ )
20 19 mulid2d ( ( ( 𝜑𝑘𝐵 ) ∧ 𝑘𝑈 ) → ( 1 · ( 𝑋𝑘 ) ) = ( 𝑋𝑘 ) )
21 0cn 0 ∈ ℂ
22 21 mul02i ( 0 · 0 ) = 0
23 1 2 4 5 10 3 dchrelbas2 ( 𝜑 → ( 𝑋𝐷 ↔ ( 𝑋 ∈ ( ( mulGrp ‘ 𝑍 ) MndHom ( mulGrp ‘ ℂfld ) ) ∧ ∀ 𝑘𝐵 ( ( 𝑋𝑘 ) ≠ 0 → 𝑘𝑈 ) ) ) )
24 8 23 mpbid ( 𝜑 → ( 𝑋 ∈ ( ( mulGrp ‘ 𝑍 ) MndHom ( mulGrp ‘ ℂfld ) ) ∧ ∀ 𝑘𝐵 ( ( 𝑋𝑘 ) ≠ 0 → 𝑘𝑈 ) ) )
25 24 simprd ( 𝜑 → ∀ 𝑘𝐵 ( ( 𝑋𝑘 ) ≠ 0 → 𝑘𝑈 ) )
26 25 r19.21bi ( ( 𝜑𝑘𝐵 ) → ( ( 𝑋𝑘 ) ≠ 0 → 𝑘𝑈 ) )
27 26 necon1bd ( ( 𝜑𝑘𝐵 ) → ( ¬ 𝑘𝑈 → ( 𝑋𝑘 ) = 0 ) )
28 27 imp ( ( ( 𝜑𝑘𝐵 ) ∧ ¬ 𝑘𝑈 ) → ( 𝑋𝑘 ) = 0 )
29 28 oveq2d ( ( ( 𝜑𝑘𝐵 ) ∧ ¬ 𝑘𝑈 ) → ( 0 · ( 𝑋𝑘 ) ) = ( 0 · 0 ) )
30 22 29 28 3eqtr4a ( ( ( 𝜑𝑘𝐵 ) ∧ ¬ 𝑘𝑈 ) → ( 0 · ( 𝑋𝑘 ) ) = ( 𝑋𝑘 ) )
31 14 16 20 30 ifbothda ( ( 𝜑𝑘𝐵 ) → ( if ( 𝑘𝑈 , 1 , 0 ) · ( 𝑋𝑘 ) ) = ( 𝑋𝑘 ) )
32 31 mpteq2dva ( 𝜑 → ( 𝑘𝐵 ↦ ( if ( 𝑘𝑈 , 1 , 0 ) · ( 𝑋𝑘 ) ) ) = ( 𝑘𝐵 ↦ ( 𝑋𝑘 ) ) )
33 4 fvexi 𝐵 ∈ V
34 33 a1i ( 𝜑𝐵 ∈ V )
35 ax-1cn 1 ∈ ℂ
36 35 21 ifcli if ( 𝑘𝑈 , 1 , 0 ) ∈ ℂ
37 36 a1i ( ( 𝜑𝑘𝐵 ) → if ( 𝑘𝑈 , 1 , 0 ) ∈ ℂ )
38 6 a1i ( 𝜑1 = ( 𝑘𝐵 ↦ if ( 𝑘𝑈 , 1 , 0 ) ) )
39 17 feqmptd ( 𝜑𝑋 = ( 𝑘𝐵 ↦ ( 𝑋𝑘 ) ) )
40 34 37 18 38 39 offval2 ( 𝜑 → ( 1f · 𝑋 ) = ( 𝑘𝐵 ↦ ( if ( 𝑘𝑈 , 1 , 0 ) · ( 𝑋𝑘 ) ) ) )
41 32 40 39 3eqtr4d ( 𝜑 → ( 1f · 𝑋 ) = 𝑋 )
42 12 41 eqtrd ( 𝜑 → ( 1 · 𝑋 ) = 𝑋 )