Metamath Proof Explorer < Previous   Next > Nearby theorems Mirrors  >  Home  >  MPE Home  >  Th. List  >  dchrelbas2 Structured version   Visualization version   GIF version

Theorem dchrelbas2 25805
 Description: A Dirichlet character is a monoid homomorphism from the multiplicative monoid on ℤ/nℤ to the multiplicative monoid of ℂ, which is zero off the group of units of ℤ/nℤ. (Contributed by Mario Carneiro, 18-Apr-2016.)
Hypotheses
Ref Expression
dchrval.g 𝐺 = (DChr‘𝑁)
dchrval.z 𝑍 = (ℤ/nℤ‘𝑁)
dchrval.b 𝐵 = (Base‘𝑍)
dchrval.u 𝑈 = (Unit‘𝑍)
dchrval.n (𝜑𝑁 ∈ ℕ)
dchrbas.b 𝐷 = (Base‘𝐺)
Assertion
Ref Expression
dchrelbas2 (𝜑 → (𝑋𝐷 ↔ (𝑋 ∈ ((mulGrp‘𝑍) MndHom (mulGrp‘ℂfld)) ∧ ∀𝑥𝐵 ((𝑋𝑥) ≠ 0 → 𝑥𝑈))))
Distinct variable groups:   𝑥,𝐵   𝑥,𝑁   𝑥,𝑈   𝜑,𝑥   𝑥,𝑋   𝑥,𝑍
Allowed substitution hints:   𝐷(𝑥)   𝐺(𝑥)

Proof of Theorem dchrelbas2
StepHypRef Expression
1 dchrval.g . . 3 𝐺 = (DChr‘𝑁)
2 dchrval.z . . 3 𝑍 = (ℤ/nℤ‘𝑁)
3 dchrval.b . . 3 𝐵 = (Base‘𝑍)
4 dchrval.u . . 3 𝑈 = (Unit‘𝑍)
5 dchrval.n . . 3 (𝜑𝑁 ∈ ℕ)
6 dchrbas.b . . 3 𝐷 = (Base‘𝐺)
71, 2, 3, 4, 5, 6dchrelbas 25804 . 2 (𝜑 → (𝑋𝐷 ↔ (𝑋 ∈ ((mulGrp‘𝑍) MndHom (mulGrp‘ℂfld)) ∧ ((𝐵𝑈) × {0}) ⊆ 𝑋)))
8 eqid 2819 . . . . . . . . . 10 (mulGrp‘𝑍) = (mulGrp‘𝑍)
98, 3mgpbas 19237 . . . . . . . . 9 𝐵 = (Base‘(mulGrp‘𝑍))
10 eqid 2819 . . . . . . . . . 10 (mulGrp‘ℂfld) = (mulGrp‘ℂfld)
11 cnfldbas 20541 . . . . . . . . . 10 ℂ = (Base‘ℂfld)
1210, 11mgpbas 19237 . . . . . . . . 9 ℂ = (Base‘(mulGrp‘ℂfld))
139, 12mhmf 17953 . . . . . . . 8 (𝑋 ∈ ((mulGrp‘𝑍) MndHom (mulGrp‘ℂfld)) → 𝑋:𝐵⟶ℂ)
1413adantl 484 . . . . . . 7 ((𝜑𝑋 ∈ ((mulGrp‘𝑍) MndHom (mulGrp‘ℂfld))) → 𝑋:𝐵⟶ℂ)
1514ffund 6511 . . . . . 6 ((𝜑𝑋 ∈ ((mulGrp‘𝑍) MndHom (mulGrp‘ℂfld))) → Fun 𝑋)
16 funssres 6391 . . . . . 6 ((Fun 𝑋 ∧ ((𝐵𝑈) × {0}) ⊆ 𝑋) → (𝑋 ↾ dom ((𝐵𝑈) × {0})) = ((𝐵𝑈) × {0}))
1715, 16sylan 582 . . . . 5 (((𝜑𝑋 ∈ ((mulGrp‘𝑍) MndHom (mulGrp‘ℂfld))) ∧ ((𝐵𝑈) × {0}) ⊆ 𝑋) → (𝑋 ↾ dom ((𝐵𝑈) × {0})) = ((𝐵𝑈) × {0}))
18 simpr 487 . . . . . 6 (((𝜑𝑋 ∈ ((mulGrp‘𝑍) MndHom (mulGrp‘ℂfld))) ∧ (𝑋 ↾ dom ((𝐵𝑈) × {0})) = ((𝐵𝑈) × {0})) → (𝑋 ↾ dom ((𝐵𝑈) × {0})) = ((𝐵𝑈) × {0}))
19 resss 5871 . . . . . 6 (𝑋 ↾ dom ((𝐵𝑈) × {0})) ⊆ 𝑋
2018, 19eqsstrrdi 4020 . . . . 5 (((𝜑𝑋 ∈ ((mulGrp‘𝑍) MndHom (mulGrp‘ℂfld))) ∧ (𝑋 ↾ dom ((𝐵𝑈) × {0})) = ((𝐵𝑈) × {0})) → ((𝐵𝑈) × {0}) ⊆ 𝑋)
2117, 20impbida 799 . . . 4 ((𝜑𝑋 ∈ ((mulGrp‘𝑍) MndHom (mulGrp‘ℂfld))) → (((𝐵𝑈) × {0}) ⊆ 𝑋 ↔ (𝑋 ↾ dom ((𝐵𝑈) × {0})) = ((𝐵𝑈) × {0})))
22 0cn 10625 . . . . . . . 8 0 ∈ ℂ
23 fconst6g 6561 . . . . . . . 8 (0 ∈ ℂ → ((𝐵𝑈) × {0}):(𝐵𝑈)⟶ℂ)
2422, 23mp1i 13 . . . . . . 7 ((𝜑𝑋 ∈ ((mulGrp‘𝑍) MndHom (mulGrp‘ℂfld))) → ((𝐵𝑈) × {0}):(𝐵𝑈)⟶ℂ)
2524fdmd 6516 . . . . . 6 ((𝜑𝑋 ∈ ((mulGrp‘𝑍) MndHom (mulGrp‘ℂfld))) → dom ((𝐵𝑈) × {0}) = (𝐵𝑈))
2625reseq2d 5846 . . . . 5 ((𝜑𝑋 ∈ ((mulGrp‘𝑍) MndHom (mulGrp‘ℂfld))) → (𝑋 ↾ dom ((𝐵𝑈) × {0})) = (𝑋 ↾ (𝐵𝑈)))
2726eqeq1d 2821 . . . 4 ((𝜑𝑋 ∈ ((mulGrp‘𝑍) MndHom (mulGrp‘ℂfld))) → ((𝑋 ↾ dom ((𝐵𝑈) × {0})) = ((𝐵𝑈) × {0}) ↔ (𝑋 ↾ (𝐵𝑈)) = ((𝐵𝑈) × {0})))
28 difss 4106 . . . . . . . 8 (𝐵𝑈) ⊆ 𝐵
29 fssres 6537 . . . . . . . 8 ((𝑋:𝐵⟶ℂ ∧ (𝐵𝑈) ⊆ 𝐵) → (𝑋 ↾ (𝐵𝑈)):(𝐵𝑈)⟶ℂ)
3014, 28, 29sylancl 588 . . . . . . 7 ((𝜑𝑋 ∈ ((mulGrp‘𝑍) MndHom (mulGrp‘ℂfld))) → (𝑋 ↾ (𝐵𝑈)):(𝐵𝑈)⟶ℂ)
3130ffnd 6508 . . . . . 6 ((𝜑𝑋 ∈ ((mulGrp‘𝑍) MndHom (mulGrp‘ℂfld))) → (𝑋 ↾ (𝐵𝑈)) Fn (𝐵𝑈))
3224ffnd 6508 . . . . . 6 ((𝜑𝑋 ∈ ((mulGrp‘𝑍) MndHom (mulGrp‘ℂfld))) → ((𝐵𝑈) × {0}) Fn (𝐵𝑈))
33 eqfnfv 6795 . . . . . 6 (((𝑋 ↾ (𝐵𝑈)) Fn (𝐵𝑈) ∧ ((𝐵𝑈) × {0}) Fn (𝐵𝑈)) → ((𝑋 ↾ (𝐵𝑈)) = ((𝐵𝑈) × {0}) ↔ ∀𝑥 ∈ (𝐵𝑈)((𝑋 ↾ (𝐵𝑈))‘𝑥) = (((𝐵𝑈) × {0})‘𝑥)))
3431, 32, 33syl2anc 586 . . . . 5 ((𝜑𝑋 ∈ ((mulGrp‘𝑍) MndHom (mulGrp‘ℂfld))) → ((𝑋 ↾ (𝐵𝑈)) = ((𝐵𝑈) × {0}) ↔ ∀𝑥 ∈ (𝐵𝑈)((𝑋 ↾ (𝐵𝑈))‘𝑥) = (((𝐵𝑈) × {0})‘𝑥)))
35 fvres 6682 . . . . . . . 8 (𝑥 ∈ (𝐵𝑈) → ((𝑋 ↾ (𝐵𝑈))‘𝑥) = (𝑋𝑥))
36 c0ex 10627 . . . . . . . . 9 0 ∈ V
3736fvconst2 6959 . . . . . . . 8 (𝑥 ∈ (𝐵𝑈) → (((𝐵𝑈) × {0})‘𝑥) = 0)
3835, 37eqeq12d 2835 . . . . . . 7 (𝑥 ∈ (𝐵𝑈) → (((𝑋 ↾ (𝐵𝑈))‘𝑥) = (((𝐵𝑈) × {0})‘𝑥) ↔ (𝑋𝑥) = 0))
3938ralbiia 3162 . . . . . 6 (∀𝑥 ∈ (𝐵𝑈)((𝑋 ↾ (𝐵𝑈))‘𝑥) = (((𝐵𝑈) × {0})‘𝑥) ↔ ∀𝑥 ∈ (𝐵𝑈)(𝑋𝑥) = 0)
40 eldif 3944 . . . . . . . . 9 (𝑥 ∈ (𝐵𝑈) ↔ (𝑥𝐵 ∧ ¬ 𝑥𝑈))
4140imbi1i 352 . . . . . . . 8 ((𝑥 ∈ (𝐵𝑈) → (𝑋𝑥) = 0) ↔ ((𝑥𝐵 ∧ ¬ 𝑥𝑈) → (𝑋𝑥) = 0))
42 impexp 453 . . . . . . . 8 (((𝑥𝐵 ∧ ¬ 𝑥𝑈) → (𝑋𝑥) = 0) ↔ (𝑥𝐵 → (¬ 𝑥𝑈 → (𝑋𝑥) = 0)))
43 con1b 361 . . . . . . . . . 10 ((¬ 𝑥𝑈 → (𝑋𝑥) = 0) ↔ (¬ (𝑋𝑥) = 0 → 𝑥𝑈))
44 df-ne 3015 . . . . . . . . . . 11 ((𝑋𝑥) ≠ 0 ↔ ¬ (𝑋𝑥) = 0)
4544imbi1i 352 . . . . . . . . . 10 (((𝑋𝑥) ≠ 0 → 𝑥𝑈) ↔ (¬ (𝑋𝑥) = 0 → 𝑥𝑈))
4643, 45bitr4i 280 . . . . . . . . 9 ((¬ 𝑥𝑈 → (𝑋𝑥) = 0) ↔ ((𝑋𝑥) ≠ 0 → 𝑥𝑈))
4746imbi2i 338 . . . . . . . 8 ((𝑥𝐵 → (¬ 𝑥𝑈 → (𝑋𝑥) = 0)) ↔ (𝑥𝐵 → ((𝑋𝑥) ≠ 0 → 𝑥𝑈)))
4841, 42, 473bitri 299 . . . . . . 7 ((𝑥 ∈ (𝐵𝑈) → (𝑋𝑥) = 0) ↔ (𝑥𝐵 → ((𝑋𝑥) ≠ 0 → 𝑥𝑈)))
4948ralbii2 3161 . . . . . 6 (∀𝑥 ∈ (𝐵𝑈)(𝑋𝑥) = 0 ↔ ∀𝑥𝐵 ((𝑋𝑥) ≠ 0 → 𝑥𝑈))
5039, 49bitri 277 . . . . 5 (∀𝑥 ∈ (𝐵𝑈)((𝑋 ↾ (𝐵𝑈))‘𝑥) = (((𝐵𝑈) × {0})‘𝑥) ↔ ∀𝑥𝐵 ((𝑋𝑥) ≠ 0 → 𝑥𝑈))
5134, 50syl6bb 289 . . . 4 ((𝜑𝑋 ∈ ((mulGrp‘𝑍) MndHom (mulGrp‘ℂfld))) → ((𝑋 ↾ (𝐵𝑈)) = ((𝐵𝑈) × {0}) ↔ ∀𝑥𝐵 ((𝑋𝑥) ≠ 0 → 𝑥𝑈)))
5221, 27, 513bitrd 307 . . 3 ((𝜑𝑋 ∈ ((mulGrp‘𝑍) MndHom (mulGrp‘ℂfld))) → (((𝐵𝑈) × {0}) ⊆ 𝑋 ↔ ∀𝑥𝐵 ((𝑋𝑥) ≠ 0 → 𝑥𝑈)))
5352pm5.32da 581 . 2 (𝜑 → ((𝑋 ∈ ((mulGrp‘𝑍) MndHom (mulGrp‘ℂfld)) ∧ ((𝐵𝑈) × {0}) ⊆ 𝑋) ↔ (𝑋 ∈ ((mulGrp‘𝑍) MndHom (mulGrp‘ℂfld)) ∧ ∀𝑥𝐵 ((𝑋𝑥) ≠ 0 → 𝑥𝑈))))
547, 53bitrd 281 1 (𝜑 → (𝑋𝐷 ↔ (𝑋 ∈ ((mulGrp‘𝑍) MndHom (mulGrp‘ℂfld)) ∧ ∀𝑥𝐵 ((𝑋𝑥) ≠ 0 → 𝑥𝑈))))
 Colors of variables: wff setvar class Syntax hints:  ¬ wn 3   → wi 4   ↔ wb 208   ∧ wa 398   = wceq 1531   ∈ wcel 2108   ≠ wne 3014  ∀wral 3136   ∖ cdif 3931   ⊆ wss 3934  {csn 4559   × cxp 5546  dom cdm 5548   ↾ cres 5550  Fun wfun 6342   Fn wfn 6343  ⟶wf 6344  ‘cfv 6348  (class class class)co 7148  ℂcc 10527  0cc0 10529  ℕcn 11630  Basecbs 16475   MndHom cmhm 17946  mulGrpcmgp 19231  Unitcui 19381  ℂfldccnfld 20537  ℤ/nℤczn 20642  DChrcdchr 25800 This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1790  ax-4 1804  ax-5 1905  ax-6 1964  ax-7 2009  ax-8 2110  ax-9 2118  ax-10 2139  ax-11 2154  ax-12 2170  ax-ext 2791  ax-sep 5194  ax-nul 5201  ax-pow 5257  ax-pr 5320  ax-un 7453  ax-cnex 10585  ax-resscn 10586  ax-1cn 10587  ax-icn 10588  ax-addcl 10589  ax-addrcl 10590  ax-mulcl 10591  ax-mulrcl 10592  ax-mulcom 10593  ax-addass 10594  ax-mulass 10595  ax-distr 10596  ax-i2m1 10597  ax-1ne0 10598  ax-1rid 10599  ax-rnegex 10600  ax-rrecex 10601  ax-cnre 10602  ax-pre-lttri 10603  ax-pre-lttrn 10604  ax-pre-ltadd 10605  ax-pre-mulgt0 10606 This theorem depends on definitions:  df-bi 209  df-an 399  df-or 844  df-3or 1083  df-3an 1084  df-tru 1534  df-ex 1775  df-nf 1779  df-sb 2064  df-mo 2616  df-eu 2648  df-clab 2798  df-cleq 2812  df-clel 2891  df-nfc 2961  df-ne 3015  df-nel 3122  df-ral 3141  df-rex 3142  df-reu 3143  df-rab 3145  df-v 3495  df-sbc 3771  df-csb 3882  df-dif 3937  df-un 3939  df-in 3941  df-ss 3950  df-pss 3952  df-nul 4290  df-if 4466  df-pw 4539  df-sn 4560  df-pr 4562  df-tp 4564  df-op 4566  df-uni 4831  df-int 4868  df-iun 4912  df-br 5058  df-opab 5120  df-mpt 5138  df-tr 5164  df-id 5453  df-eprel 5458  df-po 5467  df-so 5468  df-fr 5507  df-we 5509  df-xp 5554  df-rel 5555  df-cnv 5556  df-co 5557  df-dm 5558  df-rn 5559  df-res 5560  df-ima 5561  df-pred 6141  df-ord 6187  df-on 6188  df-lim 6189  df-suc 6190  df-iota 6307  df-fun 6350  df-fn 6351  df-f 6352  df-f1 6353  df-fo 6354  df-f1o 6355  df-fv 6356  df-riota 7106  df-ov 7151  df-oprab 7152  df-mpo 7153  df-om 7573  df-1st 7681  df-2nd 7682  df-wrecs 7939  df-recs 8000  df-rdg 8038  df-1o 8094  df-oadd 8098  df-er 8281  df-map 8400  df-en 8502  df-dom 8503  df-sdom 8504  df-fin 8505  df-pnf 10669  df-mnf 10670  df-xr 10671  df-ltxr 10672  df-le 10673  df-sub 10864  df-neg 10865  df-nn 11631  df-2 11692  df-3 11693  df-4 11694  df-5 11695  df-6 11696  df-7 11697  df-8 11698  df-9 11699  df-n0 11890  df-z 11974  df-dec 12091  df-uz 12236  df-fz 12885  df-struct 16477  df-ndx 16478  df-slot 16479  df-base 16481  df-sets 16482  df-plusg 16570  df-mulr 16571  df-starv 16572  df-tset 16576  df-ple 16577  df-ds 16579  df-unif 16580  df-mhm 17948  df-mgp 19232  df-cnfld 20538  df-dchr 25801 This theorem is referenced by:  dchrelbas3  25806  dchrelbas4  25811  dchrmulcl  25817  dchrn0  25818  dchrmulid2  25820
 Copyright terms: Public domain W3C validator