Metamath Proof Explorer


Theorem tdeglem4

Description: There is only one multi-index with total degree 0. (Contributed by Stefan O'Rear, 29-Mar-2015) Remove a sethood antecedent. (Revised by SN, 7-Aug-2024)

Ref Expression
Hypotheses tdeglem.a 𝐴 = { 𝑚 ∈ ( ℕ0m 𝐼 ) ∣ ( 𝑚 “ ℕ ) ∈ Fin }
tdeglem.h 𝐻 = ( 𝐴 ↦ ( ℂfld Σg ) )
Assertion tdeglem4 ( 𝑋𝐴 → ( ( 𝐻𝑋 ) = 0 ↔ 𝑋 = ( 𝐼 × { 0 } ) ) )

Proof

Step Hyp Ref Expression
1 tdeglem.a 𝐴 = { 𝑚 ∈ ( ℕ0m 𝐼 ) ∣ ( 𝑚 “ ℕ ) ∈ Fin }
2 tdeglem.h 𝐻 = ( 𝐴 ↦ ( ℂfld Σg ) )
3 rexnal ( ∃ 𝑥𝐼 ¬ ( 𝑋𝑥 ) = 0 ↔ ¬ ∀ 𝑥𝐼 ( 𝑋𝑥 ) = 0 )
4 df-ne ( ( 𝑋𝑥 ) ≠ 0 ↔ ¬ ( 𝑋𝑥 ) = 0 )
5 oveq2 ( = 𝑋 → ( ℂfld Σg ) = ( ℂfld Σg 𝑋 ) )
6 ovex ( ℂfld Σg 𝑋 ) ∈ V
7 5 2 6 fvmpt ( 𝑋𝐴 → ( 𝐻𝑋 ) = ( ℂfld Σg 𝑋 ) )
8 7 adantr ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → ( 𝐻𝑋 ) = ( ℂfld Σg 𝑋 ) )
9 1 psrbagf ( 𝑋𝐴𝑋 : 𝐼 ⟶ ℕ0 )
10 9 feqmptd ( 𝑋𝐴𝑋 = ( 𝑦𝐼 ↦ ( 𝑋𝑦 ) ) )
11 10 adantr ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → 𝑋 = ( 𝑦𝐼 ↦ ( 𝑋𝑦 ) ) )
12 11 oveq2d ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → ( ℂfld Σg 𝑋 ) = ( ℂfld Σg ( 𝑦𝐼 ↦ ( 𝑋𝑦 ) ) ) )
13 cnfldbas ℂ = ( Base ‘ ℂfld )
14 cnfld0 0 = ( 0g ‘ ℂfld )
15 cnfldadd + = ( +g ‘ ℂfld )
16 cnring fld ∈ Ring
17 ringcmn ( ℂfld ∈ Ring → ℂfld ∈ CMnd )
18 16 17 mp1i ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → ℂfld ∈ CMnd )
19 id ( 𝑋𝐴𝑋𝐴 )
20 9 ffnd ( 𝑋𝐴𝑋 Fn 𝐼 )
21 19 20 fndmexd ( 𝑋𝐴𝐼 ∈ V )
22 21 adantr ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → 𝐼 ∈ V )
23 9 ffvelrnda ( ( 𝑋𝐴𝑦𝐼 ) → ( 𝑋𝑦 ) ∈ ℕ0 )
24 23 nn0cnd ( ( 𝑋𝐴𝑦𝐼 ) → ( 𝑋𝑦 ) ∈ ℂ )
25 24 adantlr ( ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) ∧ 𝑦𝐼 ) → ( 𝑋𝑦 ) ∈ ℂ )
26 1 psrbagfsupp ( 𝑋𝐴𝑋 finSupp 0 )
27 10 26 eqbrtrrd ( 𝑋𝐴 → ( 𝑦𝐼 ↦ ( 𝑋𝑦 ) ) finSupp 0 )
28 27 adantr ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → ( 𝑦𝐼 ↦ ( 𝑋𝑦 ) ) finSupp 0 )
29 disjdifr ( ( 𝐼 ∖ { 𝑥 } ) ∩ { 𝑥 } ) = ∅
30 29 a1i ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → ( ( 𝐼 ∖ { 𝑥 } ) ∩ { 𝑥 } ) = ∅ )
31 difsnid ( 𝑥𝐼 → ( ( 𝐼 ∖ { 𝑥 } ) ∪ { 𝑥 } ) = 𝐼 )
32 31 eqcomd ( 𝑥𝐼𝐼 = ( ( 𝐼 ∖ { 𝑥 } ) ∪ { 𝑥 } ) )
33 32 ad2antrl ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → 𝐼 = ( ( 𝐼 ∖ { 𝑥 } ) ∪ { 𝑥 } ) )
34 13 14 15 18 22 25 28 30 33 gsumsplit2 ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → ( ℂfld Σg ( 𝑦𝐼 ↦ ( 𝑋𝑦 ) ) ) = ( ( ℂfld Σg ( 𝑦 ∈ ( 𝐼 ∖ { 𝑥 } ) ↦ ( 𝑋𝑦 ) ) ) + ( ℂfld Σg ( 𝑦 ∈ { 𝑥 } ↦ ( 𝑋𝑦 ) ) ) ) )
35 8 12 34 3eqtrd ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → ( 𝐻𝑋 ) = ( ( ℂfld Σg ( 𝑦 ∈ ( 𝐼 ∖ { 𝑥 } ) ↦ ( 𝑋𝑦 ) ) ) + ( ℂfld Σg ( 𝑦 ∈ { 𝑥 } ↦ ( 𝑋𝑦 ) ) ) ) )
36 22 difexd ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → ( 𝐼 ∖ { 𝑥 } ) ∈ V )
37 nn0subm 0 ∈ ( SubMnd ‘ ℂfld )
38 37 a1i ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → ℕ0 ∈ ( SubMnd ‘ ℂfld ) )
39 9 adantr ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → 𝑋 : 𝐼 ⟶ ℕ0 )
40 eldifi ( 𝑦 ∈ ( 𝐼 ∖ { 𝑥 } ) → 𝑦𝐼 )
41 ffvelrn ( ( 𝑋 : 𝐼 ⟶ ℕ0𝑦𝐼 ) → ( 𝑋𝑦 ) ∈ ℕ0 )
42 39 40 41 syl2an ( ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) ∧ 𝑦 ∈ ( 𝐼 ∖ { 𝑥 } ) ) → ( 𝑋𝑦 ) ∈ ℕ0 )
43 42 fmpttd ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → ( 𝑦 ∈ ( 𝐼 ∖ { 𝑥 } ) ↦ ( 𝑋𝑦 ) ) : ( 𝐼 ∖ { 𝑥 } ) ⟶ ℕ0 )
44 36 mptexd ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → ( 𝑦 ∈ ( 𝐼 ∖ { 𝑥 } ) ↦ ( 𝑋𝑦 ) ) ∈ V )
45 funmpt Fun ( 𝑦 ∈ ( 𝐼 ∖ { 𝑥 } ) ↦ ( 𝑋𝑦 ) )
46 45 a1i ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → Fun ( 𝑦 ∈ ( 𝐼 ∖ { 𝑥 } ) ↦ ( 𝑋𝑦 ) ) )
47 funmpt Fun ( 𝑦𝐼 ↦ ( 𝑋𝑦 ) )
48 difss ( 𝐼 ∖ { 𝑥 } ) ⊆ 𝐼
49 mptss ( ( 𝐼 ∖ { 𝑥 } ) ⊆ 𝐼 → ( 𝑦 ∈ ( 𝐼 ∖ { 𝑥 } ) ↦ ( 𝑋𝑦 ) ) ⊆ ( 𝑦𝐼 ↦ ( 𝑋𝑦 ) ) )
50 48 49 ax-mp ( 𝑦 ∈ ( 𝐼 ∖ { 𝑥 } ) ↦ ( 𝑋𝑦 ) ) ⊆ ( 𝑦𝐼 ↦ ( 𝑋𝑦 ) )
51 22 mptexd ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → ( 𝑦𝐼 ↦ ( 𝑋𝑦 ) ) ∈ V )
52 funsssuppss ( ( Fun ( 𝑦𝐼 ↦ ( 𝑋𝑦 ) ) ∧ ( 𝑦 ∈ ( 𝐼 ∖ { 𝑥 } ) ↦ ( 𝑋𝑦 ) ) ⊆ ( 𝑦𝐼 ↦ ( 𝑋𝑦 ) ) ∧ ( 𝑦𝐼 ↦ ( 𝑋𝑦 ) ) ∈ V ) → ( ( 𝑦 ∈ ( 𝐼 ∖ { 𝑥 } ) ↦ ( 𝑋𝑦 ) ) supp 0 ) ⊆ ( ( 𝑦𝐼 ↦ ( 𝑋𝑦 ) ) supp 0 ) )
53 47 50 51 52 mp3an12i ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → ( ( 𝑦 ∈ ( 𝐼 ∖ { 𝑥 } ) ↦ ( 𝑋𝑦 ) ) supp 0 ) ⊆ ( ( 𝑦𝐼 ↦ ( 𝑋𝑦 ) ) supp 0 ) )
54 fsuppsssupp ( ( ( ( 𝑦 ∈ ( 𝐼 ∖ { 𝑥 } ) ↦ ( 𝑋𝑦 ) ) ∈ V ∧ Fun ( 𝑦 ∈ ( 𝐼 ∖ { 𝑥 } ) ↦ ( 𝑋𝑦 ) ) ) ∧ ( ( 𝑦𝐼 ↦ ( 𝑋𝑦 ) ) finSupp 0 ∧ ( ( 𝑦 ∈ ( 𝐼 ∖ { 𝑥 } ) ↦ ( 𝑋𝑦 ) ) supp 0 ) ⊆ ( ( 𝑦𝐼 ↦ ( 𝑋𝑦 ) ) supp 0 ) ) ) → ( 𝑦 ∈ ( 𝐼 ∖ { 𝑥 } ) ↦ ( 𝑋𝑦 ) ) finSupp 0 )
55 44 46 28 53 54 syl22anc ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → ( 𝑦 ∈ ( 𝐼 ∖ { 𝑥 } ) ↦ ( 𝑋𝑦 ) ) finSupp 0 )
56 14 18 36 38 43 55 gsumsubmcl ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → ( ℂfld Σg ( 𝑦 ∈ ( 𝐼 ∖ { 𝑥 } ) ↦ ( 𝑋𝑦 ) ) ) ∈ ℕ0 )
57 ringmnd ( ℂfld ∈ Ring → ℂfld ∈ Mnd )
58 16 57 ax-mp fld ∈ Mnd
59 simprl ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → 𝑥𝐼 )
60 39 59 ffvelrnd ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → ( 𝑋𝑥 ) ∈ ℕ0 )
61 60 nn0cnd ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → ( 𝑋𝑥 ) ∈ ℂ )
62 fveq2 ( 𝑦 = 𝑥 → ( 𝑋𝑦 ) = ( 𝑋𝑥 ) )
63 13 62 gsumsn ( ( ℂfld ∈ Mnd ∧ 𝑥𝐼 ∧ ( 𝑋𝑥 ) ∈ ℂ ) → ( ℂfld Σg ( 𝑦 ∈ { 𝑥 } ↦ ( 𝑋𝑦 ) ) ) = ( 𝑋𝑥 ) )
64 58 59 61 63 mp3an2i ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → ( ℂfld Σg ( 𝑦 ∈ { 𝑥 } ↦ ( 𝑋𝑦 ) ) ) = ( 𝑋𝑥 ) )
65 elnn0 ( ( 𝑋𝑥 ) ∈ ℕ0 ↔ ( ( 𝑋𝑥 ) ∈ ℕ ∨ ( 𝑋𝑥 ) = 0 ) )
66 60 65 sylib ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → ( ( 𝑋𝑥 ) ∈ ℕ ∨ ( 𝑋𝑥 ) = 0 ) )
67 neneq ( ( 𝑋𝑥 ) ≠ 0 → ¬ ( 𝑋𝑥 ) = 0 )
68 67 ad2antll ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → ¬ ( 𝑋𝑥 ) = 0 )
69 66 68 olcnd ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → ( 𝑋𝑥 ) ∈ ℕ )
70 64 69 eqeltrd ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → ( ℂfld Σg ( 𝑦 ∈ { 𝑥 } ↦ ( 𝑋𝑦 ) ) ) ∈ ℕ )
71 nn0nnaddcl ( ( ( ℂfld Σg ( 𝑦 ∈ ( 𝐼 ∖ { 𝑥 } ) ↦ ( 𝑋𝑦 ) ) ) ∈ ℕ0 ∧ ( ℂfld Σg ( 𝑦 ∈ { 𝑥 } ↦ ( 𝑋𝑦 ) ) ) ∈ ℕ ) → ( ( ℂfld Σg ( 𝑦 ∈ ( 𝐼 ∖ { 𝑥 } ) ↦ ( 𝑋𝑦 ) ) ) + ( ℂfld Σg ( 𝑦 ∈ { 𝑥 } ↦ ( 𝑋𝑦 ) ) ) ) ∈ ℕ )
72 56 70 71 syl2anc ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → ( ( ℂfld Σg ( 𝑦 ∈ ( 𝐼 ∖ { 𝑥 } ) ↦ ( 𝑋𝑦 ) ) ) + ( ℂfld Σg ( 𝑦 ∈ { 𝑥 } ↦ ( 𝑋𝑦 ) ) ) ) ∈ ℕ )
73 72 nnne0d ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → ( ( ℂfld Σg ( 𝑦 ∈ ( 𝐼 ∖ { 𝑥 } ) ↦ ( 𝑋𝑦 ) ) ) + ( ℂfld Σg ( 𝑦 ∈ { 𝑥 } ↦ ( 𝑋𝑦 ) ) ) ) ≠ 0 )
74 35 73 eqnetrd ( ( 𝑋𝐴 ∧ ( 𝑥𝐼 ∧ ( 𝑋𝑥 ) ≠ 0 ) ) → ( 𝐻𝑋 ) ≠ 0 )
75 74 expr ( ( 𝑋𝐴𝑥𝐼 ) → ( ( 𝑋𝑥 ) ≠ 0 → ( 𝐻𝑋 ) ≠ 0 ) )
76 4 75 syl5bir ( ( 𝑋𝐴𝑥𝐼 ) → ( ¬ ( 𝑋𝑥 ) = 0 → ( 𝐻𝑋 ) ≠ 0 ) )
77 76 rexlimdva ( 𝑋𝐴 → ( ∃ 𝑥𝐼 ¬ ( 𝑋𝑥 ) = 0 → ( 𝐻𝑋 ) ≠ 0 ) )
78 3 77 syl5bir ( 𝑋𝐴 → ( ¬ ∀ 𝑥𝐼 ( 𝑋𝑥 ) = 0 → ( 𝐻𝑋 ) ≠ 0 ) )
79 78 necon4bd ( 𝑋𝐴 → ( ( 𝐻𝑋 ) = 0 → ∀ 𝑥𝐼 ( 𝑋𝑥 ) = 0 ) )
80 c0ex 0 ∈ V
81 fnconstg ( 0 ∈ V → ( 𝐼 × { 0 } ) Fn 𝐼 )
82 80 81 mp1i ( 𝑋𝐴 → ( 𝐼 × { 0 } ) Fn 𝐼 )
83 eqfnfv ( ( 𝑋 Fn 𝐼 ∧ ( 𝐼 × { 0 } ) Fn 𝐼 ) → ( 𝑋 = ( 𝐼 × { 0 } ) ↔ ∀ 𝑥𝐼 ( 𝑋𝑥 ) = ( ( 𝐼 × { 0 } ) ‘ 𝑥 ) ) )
84 20 82 83 syl2anc ( 𝑋𝐴 → ( 𝑋 = ( 𝐼 × { 0 } ) ↔ ∀ 𝑥𝐼 ( 𝑋𝑥 ) = ( ( 𝐼 × { 0 } ) ‘ 𝑥 ) ) )
85 80 fvconst2 ( 𝑥𝐼 → ( ( 𝐼 × { 0 } ) ‘ 𝑥 ) = 0 )
86 85 eqeq2d ( 𝑥𝐼 → ( ( 𝑋𝑥 ) = ( ( 𝐼 × { 0 } ) ‘ 𝑥 ) ↔ ( 𝑋𝑥 ) = 0 ) )
87 86 ralbiia ( ∀ 𝑥𝐼 ( 𝑋𝑥 ) = ( ( 𝐼 × { 0 } ) ‘ 𝑥 ) ↔ ∀ 𝑥𝐼 ( 𝑋𝑥 ) = 0 )
88 84 87 bitrdi ( 𝑋𝐴 → ( 𝑋 = ( 𝐼 × { 0 } ) ↔ ∀ 𝑥𝐼 ( 𝑋𝑥 ) = 0 ) )
89 79 88 sylibrd ( 𝑋𝐴 → ( ( 𝐻𝑋 ) = 0 → 𝑋 = ( 𝐼 × { 0 } ) ) )
90 1 psrbag0 ( 𝐼 ∈ V → ( 𝐼 × { 0 } ) ∈ 𝐴 )
91 oveq2 ( = ( 𝐼 × { 0 } ) → ( ℂfld Σg ) = ( ℂfld Σg ( 𝐼 × { 0 } ) ) )
92 ovex ( ℂfld Σg ( 𝐼 × { 0 } ) ) ∈ V
93 91 2 92 fvmpt ( ( 𝐼 × { 0 } ) ∈ 𝐴 → ( 𝐻 ‘ ( 𝐼 × { 0 } ) ) = ( ℂfld Σg ( 𝐼 × { 0 } ) ) )
94 21 90 93 3syl ( 𝑋𝐴 → ( 𝐻 ‘ ( 𝐼 × { 0 } ) ) = ( ℂfld Σg ( 𝐼 × { 0 } ) ) )
95 fconstmpt ( 𝐼 × { 0 } ) = ( 𝑥𝐼 ↦ 0 )
96 95 oveq2i ( ℂfld Σg ( 𝐼 × { 0 } ) ) = ( ℂfld Σg ( 𝑥𝐼 ↦ 0 ) )
97 14 gsumz ( ( ℂfld ∈ Mnd ∧ 𝐼 ∈ V ) → ( ℂfld Σg ( 𝑥𝐼 ↦ 0 ) ) = 0 )
98 58 21 97 sylancr ( 𝑋𝐴 → ( ℂfld Σg ( 𝑥𝐼 ↦ 0 ) ) = 0 )
99 96 98 eqtrid ( 𝑋𝐴 → ( ℂfld Σg ( 𝐼 × { 0 } ) ) = 0 )
100 94 99 eqtrd ( 𝑋𝐴 → ( 𝐻 ‘ ( 𝐼 × { 0 } ) ) = 0 )
101 fveqeq2 ( 𝑋 = ( 𝐼 × { 0 } ) → ( ( 𝐻𝑋 ) = 0 ↔ ( 𝐻 ‘ ( 𝐼 × { 0 } ) ) = 0 ) )
102 100 101 syl5ibrcom ( 𝑋𝐴 → ( 𝑋 = ( 𝐼 × { 0 } ) → ( 𝐻𝑋 ) = 0 ) )
103 89 102 impbid ( 𝑋𝐴 → ( ( 𝐻𝑋 ) = 0 ↔ 𝑋 = ( 𝐼 × { 0 } ) ) )