This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Value of the group sum operation over an index set with finite support. (Contributed by Mario Carneiro, 7-Dec-2014) (Revised by AV, 29-May-2019)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | gsumval3.b | ⊢ 𝐵 = ( Base ‘ 𝐺 ) | |
| gsumval3.0 | ⊢ 0 = ( 0g ‘ 𝐺 ) | ||
| gsumval3.p | ⊢ + = ( +g ‘ 𝐺 ) | ||
| gsumval3.z | ⊢ 𝑍 = ( Cntz ‘ 𝐺 ) | ||
| gsumval3.g | ⊢ ( 𝜑 → 𝐺 ∈ Mnd ) | ||
| gsumval3.a | ⊢ ( 𝜑 → 𝐴 ∈ 𝑉 ) | ||
| gsumval3.f | ⊢ ( 𝜑 → 𝐹 : 𝐴 ⟶ 𝐵 ) | ||
| gsumval3.c | ⊢ ( 𝜑 → ran 𝐹 ⊆ ( 𝑍 ‘ ran 𝐹 ) ) | ||
| gsumval3a.t | ⊢ ( 𝜑 → 𝑊 ∈ Fin ) | ||
| gsumval3a.n | ⊢ ( 𝜑 → 𝑊 ≠ ∅ ) | ||
| gsumval3a.w | ⊢ 𝑊 = ( 𝐹 supp 0 ) | ||
| gsumval3a.i | ⊢ ( 𝜑 → ¬ 𝐴 ∈ ran ... ) | ||
| Assertion | gsumval3a | ⊢ ( 𝜑 → ( 𝐺 Σg 𝐹 ) = ( ℩ 𝑥 ∃ 𝑓 ( 𝑓 : ( 1 ... ( ♯ ‘ 𝑊 ) ) –1-1-onto→ 𝑊 ∧ 𝑥 = ( seq 1 ( + , ( 𝐹 ∘ 𝑓 ) ) ‘ ( ♯ ‘ 𝑊 ) ) ) ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | gsumval3.b | ⊢ 𝐵 = ( Base ‘ 𝐺 ) | |
| 2 | gsumval3.0 | ⊢ 0 = ( 0g ‘ 𝐺 ) | |
| 3 | gsumval3.p | ⊢ + = ( +g ‘ 𝐺 ) | |
| 4 | gsumval3.z | ⊢ 𝑍 = ( Cntz ‘ 𝐺 ) | |
| 5 | gsumval3.g | ⊢ ( 𝜑 → 𝐺 ∈ Mnd ) | |
| 6 | gsumval3.a | ⊢ ( 𝜑 → 𝐴 ∈ 𝑉 ) | |
| 7 | gsumval3.f | ⊢ ( 𝜑 → 𝐹 : 𝐴 ⟶ 𝐵 ) | |
| 8 | gsumval3.c | ⊢ ( 𝜑 → ran 𝐹 ⊆ ( 𝑍 ‘ ran 𝐹 ) ) | |
| 9 | gsumval3a.t | ⊢ ( 𝜑 → 𝑊 ∈ Fin ) | |
| 10 | gsumval3a.n | ⊢ ( 𝜑 → 𝑊 ≠ ∅ ) | |
| 11 | gsumval3a.w | ⊢ 𝑊 = ( 𝐹 supp 0 ) | |
| 12 | gsumval3a.i | ⊢ ( 𝜑 → ¬ 𝐴 ∈ ran ... ) | |
| 13 | eqid | ⊢ { 𝑧 ∈ 𝐵 ∣ ∀ 𝑦 ∈ 𝐵 ( ( 𝑧 + 𝑦 ) = 𝑦 ∧ ( 𝑦 + 𝑧 ) = 𝑦 ) } = { 𝑧 ∈ 𝐵 ∣ ∀ 𝑦 ∈ 𝐵 ( ( 𝑧 + 𝑦 ) = 𝑦 ∧ ( 𝑦 + 𝑧 ) = 𝑦 ) } | |
| 14 | 11 | a1i | ⊢ ( 𝜑 → 𝑊 = ( 𝐹 supp 0 ) ) |
| 15 | 7 6 | fexd | ⊢ ( 𝜑 → 𝐹 ∈ V ) |
| 16 | 2 | fvexi | ⊢ 0 ∈ V |
| 17 | suppimacnv | ⊢ ( ( 𝐹 ∈ V ∧ 0 ∈ V ) → ( 𝐹 supp 0 ) = ( ◡ 𝐹 “ ( V ∖ { 0 } ) ) ) | |
| 18 | 15 16 17 | sylancl | ⊢ ( 𝜑 → ( 𝐹 supp 0 ) = ( ◡ 𝐹 “ ( V ∖ { 0 } ) ) ) |
| 19 | 1 2 3 13 | gsumvallem2 | ⊢ ( 𝐺 ∈ Mnd → { 𝑧 ∈ 𝐵 ∣ ∀ 𝑦 ∈ 𝐵 ( ( 𝑧 + 𝑦 ) = 𝑦 ∧ ( 𝑦 + 𝑧 ) = 𝑦 ) } = { 0 } ) |
| 20 | 5 19 | syl | ⊢ ( 𝜑 → { 𝑧 ∈ 𝐵 ∣ ∀ 𝑦 ∈ 𝐵 ( ( 𝑧 + 𝑦 ) = 𝑦 ∧ ( 𝑦 + 𝑧 ) = 𝑦 ) } = { 0 } ) |
| 21 | 20 | eqcomd | ⊢ ( 𝜑 → { 0 } = { 𝑧 ∈ 𝐵 ∣ ∀ 𝑦 ∈ 𝐵 ( ( 𝑧 + 𝑦 ) = 𝑦 ∧ ( 𝑦 + 𝑧 ) = 𝑦 ) } ) |
| 22 | 21 | difeq2d | ⊢ ( 𝜑 → ( V ∖ { 0 } ) = ( V ∖ { 𝑧 ∈ 𝐵 ∣ ∀ 𝑦 ∈ 𝐵 ( ( 𝑧 + 𝑦 ) = 𝑦 ∧ ( 𝑦 + 𝑧 ) = 𝑦 ) } ) ) |
| 23 | 22 | imaeq2d | ⊢ ( 𝜑 → ( ◡ 𝐹 “ ( V ∖ { 0 } ) ) = ( ◡ 𝐹 “ ( V ∖ { 𝑧 ∈ 𝐵 ∣ ∀ 𝑦 ∈ 𝐵 ( ( 𝑧 + 𝑦 ) = 𝑦 ∧ ( 𝑦 + 𝑧 ) = 𝑦 ) } ) ) ) |
| 24 | 14 18 23 | 3eqtrd | ⊢ ( 𝜑 → 𝑊 = ( ◡ 𝐹 “ ( V ∖ { 𝑧 ∈ 𝐵 ∣ ∀ 𝑦 ∈ 𝐵 ( ( 𝑧 + 𝑦 ) = 𝑦 ∧ ( 𝑦 + 𝑧 ) = 𝑦 ) } ) ) ) |
| 25 | 1 2 3 13 24 5 6 7 | gsumval | ⊢ ( 𝜑 → ( 𝐺 Σg 𝐹 ) = if ( ran 𝐹 ⊆ { 𝑧 ∈ 𝐵 ∣ ∀ 𝑦 ∈ 𝐵 ( ( 𝑧 + 𝑦 ) = 𝑦 ∧ ( 𝑦 + 𝑧 ) = 𝑦 ) } , 0 , if ( 𝐴 ∈ ran ... , ( ℩ 𝑥 ∃ 𝑚 ∃ 𝑛 ∈ ( ℤ≥ ‘ 𝑚 ) ( 𝐴 = ( 𝑚 ... 𝑛 ) ∧ 𝑥 = ( seq 𝑚 ( + , 𝐹 ) ‘ 𝑛 ) ) ) , ( ℩ 𝑥 ∃ 𝑓 ( 𝑓 : ( 1 ... ( ♯ ‘ 𝑊 ) ) –1-1-onto→ 𝑊 ∧ 𝑥 = ( seq 1 ( + , ( 𝐹 ∘ 𝑓 ) ) ‘ ( ♯ ‘ 𝑊 ) ) ) ) ) ) ) |
| 26 | 20 | sseq2d | ⊢ ( 𝜑 → ( ran 𝐹 ⊆ { 𝑧 ∈ 𝐵 ∣ ∀ 𝑦 ∈ 𝐵 ( ( 𝑧 + 𝑦 ) = 𝑦 ∧ ( 𝑦 + 𝑧 ) = 𝑦 ) } ↔ ran 𝐹 ⊆ { 0 } ) ) |
| 27 | 11 | a1i | ⊢ ( ( 𝜑 ∧ ran 𝐹 ⊆ { 0 } ) → 𝑊 = ( 𝐹 supp 0 ) ) |
| 28 | 7 6 | jca | ⊢ ( 𝜑 → ( 𝐹 : 𝐴 ⟶ 𝐵 ∧ 𝐴 ∈ 𝑉 ) ) |
| 29 | 28 | adantr | ⊢ ( ( 𝜑 ∧ ran 𝐹 ⊆ { 0 } ) → ( 𝐹 : 𝐴 ⟶ 𝐵 ∧ 𝐴 ∈ 𝑉 ) ) |
| 30 | fex | ⊢ ( ( 𝐹 : 𝐴 ⟶ 𝐵 ∧ 𝐴 ∈ 𝑉 ) → 𝐹 ∈ V ) | |
| 31 | 29 30 | syl | ⊢ ( ( 𝜑 ∧ ran 𝐹 ⊆ { 0 } ) → 𝐹 ∈ V ) |
| 32 | 31 16 17 | sylancl | ⊢ ( ( 𝜑 ∧ ran 𝐹 ⊆ { 0 } ) → ( 𝐹 supp 0 ) = ( ◡ 𝐹 “ ( V ∖ { 0 } ) ) ) |
| 33 | 7 | ffnd | ⊢ ( 𝜑 → 𝐹 Fn 𝐴 ) |
| 34 | 33 | adantr | ⊢ ( ( 𝜑 ∧ ran 𝐹 ⊆ { 0 } ) → 𝐹 Fn 𝐴 ) |
| 35 | simpr | ⊢ ( ( 𝜑 ∧ ran 𝐹 ⊆ { 0 } ) → ran 𝐹 ⊆ { 0 } ) | |
| 36 | df-f | ⊢ ( 𝐹 : 𝐴 ⟶ { 0 } ↔ ( 𝐹 Fn 𝐴 ∧ ran 𝐹 ⊆ { 0 } ) ) | |
| 37 | 34 35 36 | sylanbrc | ⊢ ( ( 𝜑 ∧ ran 𝐹 ⊆ { 0 } ) → 𝐹 : 𝐴 ⟶ { 0 } ) |
| 38 | disjdif | ⊢ ( { 0 } ∩ ( V ∖ { 0 } ) ) = ∅ | |
| 39 | fimacnvdisj | ⊢ ( ( 𝐹 : 𝐴 ⟶ { 0 } ∧ ( { 0 } ∩ ( V ∖ { 0 } ) ) = ∅ ) → ( ◡ 𝐹 “ ( V ∖ { 0 } ) ) = ∅ ) | |
| 40 | 37 38 39 | sylancl | ⊢ ( ( 𝜑 ∧ ran 𝐹 ⊆ { 0 } ) → ( ◡ 𝐹 “ ( V ∖ { 0 } ) ) = ∅ ) |
| 41 | 27 32 40 | 3eqtrd | ⊢ ( ( 𝜑 ∧ ran 𝐹 ⊆ { 0 } ) → 𝑊 = ∅ ) |
| 42 | 41 | ex | ⊢ ( 𝜑 → ( ran 𝐹 ⊆ { 0 } → 𝑊 = ∅ ) ) |
| 43 | 26 42 | sylbid | ⊢ ( 𝜑 → ( ran 𝐹 ⊆ { 𝑧 ∈ 𝐵 ∣ ∀ 𝑦 ∈ 𝐵 ( ( 𝑧 + 𝑦 ) = 𝑦 ∧ ( 𝑦 + 𝑧 ) = 𝑦 ) } → 𝑊 = ∅ ) ) |
| 44 | 43 | necon3ad | ⊢ ( 𝜑 → ( 𝑊 ≠ ∅ → ¬ ran 𝐹 ⊆ { 𝑧 ∈ 𝐵 ∣ ∀ 𝑦 ∈ 𝐵 ( ( 𝑧 + 𝑦 ) = 𝑦 ∧ ( 𝑦 + 𝑧 ) = 𝑦 ) } ) ) |
| 45 | 10 44 | mpd | ⊢ ( 𝜑 → ¬ ran 𝐹 ⊆ { 𝑧 ∈ 𝐵 ∣ ∀ 𝑦 ∈ 𝐵 ( ( 𝑧 + 𝑦 ) = 𝑦 ∧ ( 𝑦 + 𝑧 ) = 𝑦 ) } ) |
| 46 | 45 | iffalsed | ⊢ ( 𝜑 → if ( ran 𝐹 ⊆ { 𝑧 ∈ 𝐵 ∣ ∀ 𝑦 ∈ 𝐵 ( ( 𝑧 + 𝑦 ) = 𝑦 ∧ ( 𝑦 + 𝑧 ) = 𝑦 ) } , 0 , if ( 𝐴 ∈ ran ... , ( ℩ 𝑥 ∃ 𝑚 ∃ 𝑛 ∈ ( ℤ≥ ‘ 𝑚 ) ( 𝐴 = ( 𝑚 ... 𝑛 ) ∧ 𝑥 = ( seq 𝑚 ( + , 𝐹 ) ‘ 𝑛 ) ) ) , ( ℩ 𝑥 ∃ 𝑓 ( 𝑓 : ( 1 ... ( ♯ ‘ 𝑊 ) ) –1-1-onto→ 𝑊 ∧ 𝑥 = ( seq 1 ( + , ( 𝐹 ∘ 𝑓 ) ) ‘ ( ♯ ‘ 𝑊 ) ) ) ) ) ) = if ( 𝐴 ∈ ran ... , ( ℩ 𝑥 ∃ 𝑚 ∃ 𝑛 ∈ ( ℤ≥ ‘ 𝑚 ) ( 𝐴 = ( 𝑚 ... 𝑛 ) ∧ 𝑥 = ( seq 𝑚 ( + , 𝐹 ) ‘ 𝑛 ) ) ) , ( ℩ 𝑥 ∃ 𝑓 ( 𝑓 : ( 1 ... ( ♯ ‘ 𝑊 ) ) –1-1-onto→ 𝑊 ∧ 𝑥 = ( seq 1 ( + , ( 𝐹 ∘ 𝑓 ) ) ‘ ( ♯ ‘ 𝑊 ) ) ) ) ) ) |
| 47 | 12 | iffalsed | ⊢ ( 𝜑 → if ( 𝐴 ∈ ran ... , ( ℩ 𝑥 ∃ 𝑚 ∃ 𝑛 ∈ ( ℤ≥ ‘ 𝑚 ) ( 𝐴 = ( 𝑚 ... 𝑛 ) ∧ 𝑥 = ( seq 𝑚 ( + , 𝐹 ) ‘ 𝑛 ) ) ) , ( ℩ 𝑥 ∃ 𝑓 ( 𝑓 : ( 1 ... ( ♯ ‘ 𝑊 ) ) –1-1-onto→ 𝑊 ∧ 𝑥 = ( seq 1 ( + , ( 𝐹 ∘ 𝑓 ) ) ‘ ( ♯ ‘ 𝑊 ) ) ) ) ) = ( ℩ 𝑥 ∃ 𝑓 ( 𝑓 : ( 1 ... ( ♯ ‘ 𝑊 ) ) –1-1-onto→ 𝑊 ∧ 𝑥 = ( seq 1 ( + , ( 𝐹 ∘ 𝑓 ) ) ‘ ( ♯ ‘ 𝑊 ) ) ) ) ) |
| 48 | 25 46 47 | 3eqtrd | ⊢ ( 𝜑 → ( 𝐺 Σg 𝐹 ) = ( ℩ 𝑥 ∃ 𝑓 ( 𝑓 : ( 1 ... ( ♯ ‘ 𝑊 ) ) –1-1-onto→ 𝑊 ∧ 𝑥 = ( seq 1 ( + , ( 𝐹 ∘ 𝑓 ) ) ‘ ( ♯ ‘ 𝑊 ) ) ) ) ) |