This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Sum of a family that is nonzero at at most one point. (Contributed by Stefan O'Rear, 7-Feb-2015) (Revised by Mario Carneiro, 25-Apr-2016) (Revised by AV, 6-Jun-2019)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | gsumpt.b | ⊢ 𝐵 = ( Base ‘ 𝐺 ) | |
| gsumpt.z | ⊢ 0 = ( 0g ‘ 𝐺 ) | ||
| gsumpt.g | ⊢ ( 𝜑 → 𝐺 ∈ Mnd ) | ||
| gsumpt.a | ⊢ ( 𝜑 → 𝐴 ∈ 𝑉 ) | ||
| gsumpt.x | ⊢ ( 𝜑 → 𝑋 ∈ 𝐴 ) | ||
| gsumpt.f | ⊢ ( 𝜑 → 𝐹 : 𝐴 ⟶ 𝐵 ) | ||
| gsumpt.s | ⊢ ( 𝜑 → ( 𝐹 supp 0 ) ⊆ { 𝑋 } ) | ||
| Assertion | gsumpt | ⊢ ( 𝜑 → ( 𝐺 Σg 𝐹 ) = ( 𝐹 ‘ 𝑋 ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | gsumpt.b | ⊢ 𝐵 = ( Base ‘ 𝐺 ) | |
| 2 | gsumpt.z | ⊢ 0 = ( 0g ‘ 𝐺 ) | |
| 3 | gsumpt.g | ⊢ ( 𝜑 → 𝐺 ∈ Mnd ) | |
| 4 | gsumpt.a | ⊢ ( 𝜑 → 𝐴 ∈ 𝑉 ) | |
| 5 | gsumpt.x | ⊢ ( 𝜑 → 𝑋 ∈ 𝐴 ) | |
| 6 | gsumpt.f | ⊢ ( 𝜑 → 𝐹 : 𝐴 ⟶ 𝐵 ) | |
| 7 | gsumpt.s | ⊢ ( 𝜑 → ( 𝐹 supp 0 ) ⊆ { 𝑋 } ) | |
| 8 | 5 | snssd | ⊢ ( 𝜑 → { 𝑋 } ⊆ 𝐴 ) |
| 9 | 6 8 | feqresmpt | ⊢ ( 𝜑 → ( 𝐹 ↾ { 𝑋 } ) = ( 𝑎 ∈ { 𝑋 } ↦ ( 𝐹 ‘ 𝑎 ) ) ) |
| 10 | 9 | oveq2d | ⊢ ( 𝜑 → ( 𝐺 Σg ( 𝐹 ↾ { 𝑋 } ) ) = ( 𝐺 Σg ( 𝑎 ∈ { 𝑋 } ↦ ( 𝐹 ‘ 𝑎 ) ) ) ) |
| 11 | eqid | ⊢ ( Cntz ‘ 𝐺 ) = ( Cntz ‘ 𝐺 ) | |
| 12 | 6 5 | ffvelcdmd | ⊢ ( 𝜑 → ( 𝐹 ‘ 𝑋 ) ∈ 𝐵 ) |
| 13 | eqidd | ⊢ ( 𝜑 → ( ( 𝐹 ‘ 𝑋 ) ( +g ‘ 𝐺 ) ( 𝐹 ‘ 𝑋 ) ) = ( ( 𝐹 ‘ 𝑋 ) ( +g ‘ 𝐺 ) ( 𝐹 ‘ 𝑋 ) ) ) | |
| 14 | eqid | ⊢ ( +g ‘ 𝐺 ) = ( +g ‘ 𝐺 ) | |
| 15 | 1 14 11 | elcntzsn | ⊢ ( ( 𝐹 ‘ 𝑋 ) ∈ 𝐵 → ( ( 𝐹 ‘ 𝑋 ) ∈ ( ( Cntz ‘ 𝐺 ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ↔ ( ( 𝐹 ‘ 𝑋 ) ∈ 𝐵 ∧ ( ( 𝐹 ‘ 𝑋 ) ( +g ‘ 𝐺 ) ( 𝐹 ‘ 𝑋 ) ) = ( ( 𝐹 ‘ 𝑋 ) ( +g ‘ 𝐺 ) ( 𝐹 ‘ 𝑋 ) ) ) ) ) |
| 16 | 12 15 | syl | ⊢ ( 𝜑 → ( ( 𝐹 ‘ 𝑋 ) ∈ ( ( Cntz ‘ 𝐺 ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ↔ ( ( 𝐹 ‘ 𝑋 ) ∈ 𝐵 ∧ ( ( 𝐹 ‘ 𝑋 ) ( +g ‘ 𝐺 ) ( 𝐹 ‘ 𝑋 ) ) = ( ( 𝐹 ‘ 𝑋 ) ( +g ‘ 𝐺 ) ( 𝐹 ‘ 𝑋 ) ) ) ) ) |
| 17 | 12 13 16 | mpbir2and | ⊢ ( 𝜑 → ( 𝐹 ‘ 𝑋 ) ∈ ( ( Cntz ‘ 𝐺 ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) |
| 18 | 17 | snssd | ⊢ ( 𝜑 → { ( 𝐹 ‘ 𝑋 ) } ⊆ ( ( Cntz ‘ 𝐺 ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) |
| 19 | eqid | ⊢ ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) = ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) | |
| 20 | eqid | ⊢ ( 𝐺 ↾s ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) = ( 𝐺 ↾s ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) | |
| 21 | 11 19 20 | cntzspan | ⊢ ( ( 𝐺 ∈ Mnd ∧ { ( 𝐹 ‘ 𝑋 ) } ⊆ ( ( Cntz ‘ 𝐺 ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) → ( 𝐺 ↾s ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) ∈ CMnd ) |
| 22 | 3 18 21 | syl2anc | ⊢ ( 𝜑 → ( 𝐺 ↾s ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) ∈ CMnd ) |
| 23 | 1 | submacs | ⊢ ( 𝐺 ∈ Mnd → ( SubMnd ‘ 𝐺 ) ∈ ( ACS ‘ 𝐵 ) ) |
| 24 | acsmre | ⊢ ( ( SubMnd ‘ 𝐺 ) ∈ ( ACS ‘ 𝐵 ) → ( SubMnd ‘ 𝐺 ) ∈ ( Moore ‘ 𝐵 ) ) | |
| 25 | 3 23 24 | 3syl | ⊢ ( 𝜑 → ( SubMnd ‘ 𝐺 ) ∈ ( Moore ‘ 𝐵 ) ) |
| 26 | 12 | snssd | ⊢ ( 𝜑 → { ( 𝐹 ‘ 𝑋 ) } ⊆ 𝐵 ) |
| 27 | 19 | mrccl | ⊢ ( ( ( SubMnd ‘ 𝐺 ) ∈ ( Moore ‘ 𝐵 ) ∧ { ( 𝐹 ‘ 𝑋 ) } ⊆ 𝐵 ) → ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ∈ ( SubMnd ‘ 𝐺 ) ) |
| 28 | 25 26 27 | syl2anc | ⊢ ( 𝜑 → ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ∈ ( SubMnd ‘ 𝐺 ) ) |
| 29 | 20 11 | submcmn2 | ⊢ ( ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ∈ ( SubMnd ‘ 𝐺 ) → ( ( 𝐺 ↾s ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) ∈ CMnd ↔ ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ⊆ ( ( Cntz ‘ 𝐺 ) ‘ ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) ) ) |
| 30 | 28 29 | syl | ⊢ ( 𝜑 → ( ( 𝐺 ↾s ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) ∈ CMnd ↔ ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ⊆ ( ( Cntz ‘ 𝐺 ) ‘ ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) ) ) |
| 31 | 22 30 | mpbid | ⊢ ( 𝜑 → ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ⊆ ( ( Cntz ‘ 𝐺 ) ‘ ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) ) |
| 32 | 6 | ffnd | ⊢ ( 𝜑 → 𝐹 Fn 𝐴 ) |
| 33 | simpr | ⊢ ( ( ( 𝜑 ∧ 𝑎 ∈ 𝐴 ) ∧ 𝑎 = 𝑋 ) → 𝑎 = 𝑋 ) | |
| 34 | 33 | fveq2d | ⊢ ( ( ( 𝜑 ∧ 𝑎 ∈ 𝐴 ) ∧ 𝑎 = 𝑋 ) → ( 𝐹 ‘ 𝑎 ) = ( 𝐹 ‘ 𝑋 ) ) |
| 35 | 25 19 26 | mrcssidd | ⊢ ( 𝜑 → { ( 𝐹 ‘ 𝑋 ) } ⊆ ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) |
| 36 | fvex | ⊢ ( 𝐹 ‘ 𝑋 ) ∈ V | |
| 37 | 36 | snss | ⊢ ( ( 𝐹 ‘ 𝑋 ) ∈ ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ↔ { ( 𝐹 ‘ 𝑋 ) } ⊆ ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) |
| 38 | 35 37 | sylibr | ⊢ ( 𝜑 → ( 𝐹 ‘ 𝑋 ) ∈ ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) |
| 39 | 38 | ad2antrr | ⊢ ( ( ( 𝜑 ∧ 𝑎 ∈ 𝐴 ) ∧ 𝑎 = 𝑋 ) → ( 𝐹 ‘ 𝑋 ) ∈ ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) |
| 40 | 34 39 | eqeltrd | ⊢ ( ( ( 𝜑 ∧ 𝑎 ∈ 𝐴 ) ∧ 𝑎 = 𝑋 ) → ( 𝐹 ‘ 𝑎 ) ∈ ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) |
| 41 | eldifsn | ⊢ ( 𝑎 ∈ ( 𝐴 ∖ { 𝑋 } ) ↔ ( 𝑎 ∈ 𝐴 ∧ 𝑎 ≠ 𝑋 ) ) | |
| 42 | 2 | fvexi | ⊢ 0 ∈ V |
| 43 | 42 | a1i | ⊢ ( 𝜑 → 0 ∈ V ) |
| 44 | 6 7 4 43 | suppssr | ⊢ ( ( 𝜑 ∧ 𝑎 ∈ ( 𝐴 ∖ { 𝑋 } ) ) → ( 𝐹 ‘ 𝑎 ) = 0 ) |
| 45 | 41 44 | sylan2br | ⊢ ( ( 𝜑 ∧ ( 𝑎 ∈ 𝐴 ∧ 𝑎 ≠ 𝑋 ) ) → ( 𝐹 ‘ 𝑎 ) = 0 ) |
| 46 | 2 | subm0cl | ⊢ ( ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ∈ ( SubMnd ‘ 𝐺 ) → 0 ∈ ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) |
| 47 | 28 46 | syl | ⊢ ( 𝜑 → 0 ∈ ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) |
| 48 | 47 | adantr | ⊢ ( ( 𝜑 ∧ ( 𝑎 ∈ 𝐴 ∧ 𝑎 ≠ 𝑋 ) ) → 0 ∈ ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) |
| 49 | 45 48 | eqeltrd | ⊢ ( ( 𝜑 ∧ ( 𝑎 ∈ 𝐴 ∧ 𝑎 ≠ 𝑋 ) ) → ( 𝐹 ‘ 𝑎 ) ∈ ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) |
| 50 | 49 | anassrs | ⊢ ( ( ( 𝜑 ∧ 𝑎 ∈ 𝐴 ) ∧ 𝑎 ≠ 𝑋 ) → ( 𝐹 ‘ 𝑎 ) ∈ ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) |
| 51 | 40 50 | pm2.61dane | ⊢ ( ( 𝜑 ∧ 𝑎 ∈ 𝐴 ) → ( 𝐹 ‘ 𝑎 ) ∈ ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) |
| 52 | 51 | ralrimiva | ⊢ ( 𝜑 → ∀ 𝑎 ∈ 𝐴 ( 𝐹 ‘ 𝑎 ) ∈ ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) |
| 53 | ffnfv | ⊢ ( 𝐹 : 𝐴 ⟶ ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ↔ ( 𝐹 Fn 𝐴 ∧ ∀ 𝑎 ∈ 𝐴 ( 𝐹 ‘ 𝑎 ) ∈ ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) ) | |
| 54 | 32 52 53 | sylanbrc | ⊢ ( 𝜑 → 𝐹 : 𝐴 ⟶ ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) |
| 55 | 54 | frnd | ⊢ ( 𝜑 → ran 𝐹 ⊆ ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) |
| 56 | 11 | cntzidss | ⊢ ( ( ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ⊆ ( ( Cntz ‘ 𝐺 ) ‘ ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) ∧ ran 𝐹 ⊆ ( ( mrCls ‘ ( SubMnd ‘ 𝐺 ) ) ‘ { ( 𝐹 ‘ 𝑋 ) } ) ) → ran 𝐹 ⊆ ( ( Cntz ‘ 𝐺 ) ‘ ran 𝐹 ) ) |
| 57 | 31 55 56 | syl2anc | ⊢ ( 𝜑 → ran 𝐹 ⊆ ( ( Cntz ‘ 𝐺 ) ‘ ran 𝐹 ) ) |
| 58 | 6 | ffund | ⊢ ( 𝜑 → Fun 𝐹 ) |
| 59 | snfi | ⊢ { 𝑋 } ∈ Fin | |
| 60 | ssfi | ⊢ ( ( { 𝑋 } ∈ Fin ∧ ( 𝐹 supp 0 ) ⊆ { 𝑋 } ) → ( 𝐹 supp 0 ) ∈ Fin ) | |
| 61 | 59 7 60 | sylancr | ⊢ ( 𝜑 → ( 𝐹 supp 0 ) ∈ Fin ) |
| 62 | 6 4 | fexd | ⊢ ( 𝜑 → 𝐹 ∈ V ) |
| 63 | isfsupp | ⊢ ( ( 𝐹 ∈ V ∧ 0 ∈ V ) → ( 𝐹 finSupp 0 ↔ ( Fun 𝐹 ∧ ( 𝐹 supp 0 ) ∈ Fin ) ) ) | |
| 64 | 62 43 63 | syl2anc | ⊢ ( 𝜑 → ( 𝐹 finSupp 0 ↔ ( Fun 𝐹 ∧ ( 𝐹 supp 0 ) ∈ Fin ) ) ) |
| 65 | 58 61 64 | mpbir2and | ⊢ ( 𝜑 → 𝐹 finSupp 0 ) |
| 66 | 1 2 11 3 4 6 57 7 65 | gsumzres | ⊢ ( 𝜑 → ( 𝐺 Σg ( 𝐹 ↾ { 𝑋 } ) ) = ( 𝐺 Σg 𝐹 ) ) |
| 67 | fveq2 | ⊢ ( 𝑎 = 𝑋 → ( 𝐹 ‘ 𝑎 ) = ( 𝐹 ‘ 𝑋 ) ) | |
| 68 | 1 67 | gsumsn | ⊢ ( ( 𝐺 ∈ Mnd ∧ 𝑋 ∈ 𝐴 ∧ ( 𝐹 ‘ 𝑋 ) ∈ 𝐵 ) → ( 𝐺 Σg ( 𝑎 ∈ { 𝑋 } ↦ ( 𝐹 ‘ 𝑎 ) ) ) = ( 𝐹 ‘ 𝑋 ) ) |
| 69 | 3 5 12 68 | syl3anc | ⊢ ( 𝜑 → ( 𝐺 Σg ( 𝑎 ∈ { 𝑋 } ↦ ( 𝐹 ‘ 𝑎 ) ) ) = ( 𝐹 ‘ 𝑋 ) ) |
| 70 | 10 66 69 | 3eqtr3d | ⊢ ( 𝜑 → ( 𝐺 Σg 𝐹 ) = ( 𝐹 ‘ 𝑋 ) ) |