Metamath Proof Explorer


Theorem gsumval3eu

Description: The group sum as defined in gsumval3a is uniquely defined. (Contributed by Mario Carneiro, 8-Dec-2014)

Ref Expression
Hypotheses gsumval3.b ⊢ B = Base G
gsumval3.0 ⊢ 0 ˙ = 0 G
gsumval3.p ⊢ + ˙ = + G
gsumval3.z ⊢ Z = Cntz ⁡ G
gsumval3.g ⊢ φ → G ∈ Mnd
gsumval3.a ⊢ φ → A ∈ V
gsumval3.f ⊢ φ → F : A ⟶ B
gsumval3.c ⊢ φ → ran ⁡ F ⊆ Z ⁡ ran ⁡ F
gsumval3a.t ⊢ φ → W ∈ Fin
gsumval3a.n ⊢ φ → W ≠ ∅
gsumval3a.s ⊢ φ → W ⊆ A
Assertion gsumval3eu ⊢ φ → ∃! x ∃ f f : 1 … W ⟶ 1-1 onto W ∧ x = seq 1 + ˙ F ∘ f ⁡ W

Proof

Step Hyp Ref Expression
1 gsumval3.b ⊢ B = Base G
2 gsumval3.0 ⊢ 0 ˙ = 0 G
3 gsumval3.p ⊢ + ˙ = + G
4 gsumval3.z ⊢ Z = Cntz ⁡ G
5 gsumval3.g ⊢ φ → G ∈ Mnd
6 gsumval3.a ⊢ φ → A ∈ V
7 gsumval3.f ⊢ φ → F : A ⟶ B
8 gsumval3.c ⊢ φ → ran ⁡ F ⊆ Z ⁡ ran ⁡ F
9 gsumval3a.t ⊢ φ → W ∈ Fin
10 gsumval3a.n ⊢ φ → W ≠ ∅
11 gsumval3a.s ⊢ φ → W ⊆ A
12 10 neneqd ⊢ φ → ¬ W = ∅
13 fz1f1o ⊢ W ∈ Fin → W = ∅ ∨ W ∈ ℕ ∧ ∃ f f : 1 … W ⟶ 1-1 onto W
14 9 13 syl ⊢ φ → W = ∅ ∨ W ∈ ℕ ∧ ∃ f f : 1 … W ⟶ 1-1 onto W
15 14 ord ⊢ φ → ¬ W = ∅ → W ∈ ℕ ∧ ∃ f f : 1 … W ⟶ 1-1 onto W
16 12 15 mpd ⊢ φ → W ∈ ℕ ∧ ∃ f f : 1 … W ⟶ 1-1 onto W
17 16 simprd ⊢ φ → ∃ f f : 1 … W ⟶ 1-1 onto W
18 excom ⊢ ∃ x ∃ f f : 1 … W ⟶ 1-1 onto W ∧ x = seq 1 + ˙ F ∘ f ⁡ W ↔ ∃ f ∃ x f : 1 … W ⟶ 1-1 onto W ∧ x = seq 1 + ˙ F ∘ f ⁡ W
19 exancom ⊢ ∃ x f : 1 … W ⟶ 1-1 onto W ∧ x = seq 1 + ˙ F ∘ f ⁡ W ↔ ∃ x x = seq 1 + ˙ F ∘ f ⁡ W ∧ f : 1 … W ⟶ 1-1 onto W
20 fvex ⊢ seq 1 + ˙ F ∘ f ⁡ W ∈ V
21 biidd ⊢ x = seq 1 + ˙ F ∘ f ⁡ W → f : 1 … W ⟶ 1-1 onto W ↔ f : 1 … W ⟶ 1-1 onto W
22 20 21 ceqsexv ⊢ ∃ x x = seq 1 + ˙ F ∘ f ⁡ W ∧ f : 1 … W ⟶ 1-1 onto W ↔ f : 1 … W ⟶ 1-1 onto W
23 19 22 bitri ⊢ ∃ x f : 1 … W ⟶ 1-1 onto W ∧ x = seq 1 + ˙ F ∘ f ⁡ W ↔ f : 1 … W ⟶ 1-1 onto W
24 23 exbii ⊢ ∃ f ∃ x f : 1 … W ⟶ 1-1 onto W ∧ x = seq 1 + ˙ F ∘ f ⁡ W ↔ ∃ f f : 1 … W ⟶ 1-1 onto W
25 18 24 bitri ⊢ ∃ x ∃ f f : 1 … W ⟶ 1-1 onto W ∧ x = seq 1 + ˙ F ∘ f ⁡ W ↔ ∃ f f : 1 … W ⟶ 1-1 onto W
26 17 25 sylibr ⊢ φ → ∃ x ∃ f f : 1 … W ⟶ 1-1 onto W ∧ x = seq 1 + ˙ F ∘ f ⁡ W
27 exdistrv ⊢ ∃ f ∃ g f : 1 … W ⟶ 1-1 onto W ∧ x = seq 1 + ˙ F ∘ f ⁡ W ∧ g : 1 … W ⟶ 1-1 onto W ∧ y = seq 1 + ˙ F ∘ g ⁡ W ↔ ∃ f f : 1 … W ⟶ 1-1 onto W ∧ x = seq 1 + ˙ F ∘ f ⁡ W ∧ ∃ g g : 1 … W ⟶ 1-1 onto W ∧ y = seq 1 + ˙ F ∘ g ⁡ W
28 an4 ⊢ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W ∧ x = seq 1 + ˙ F ∘ f ⁡ W ∧ y = seq 1 + ˙ F ∘ g ⁡ W ↔ f : 1 … W ⟶ 1-1 onto W ∧ x = seq 1 + ˙ F ∘ f ⁡ W ∧ g : 1 … W ⟶ 1-1 onto W ∧ y = seq 1 + ˙ F ∘ g ⁡ W
29 5 adantr ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W → G ∈ Mnd
30 1 3 mndcl ⊢ G ∈ Mnd ∧ x ∈ B ∧ y ∈ B → x + ˙ y ∈ B
31 30 3expb ⊢ G ∈ Mnd ∧ x ∈ B ∧ y ∈ B → x + ˙ y ∈ B
32 29 31 sylan ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W ∧ x ∈ B ∧ y ∈ B → x + ˙ y ∈ B
33 8 adantr ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W → ran ⁡ F ⊆ Z ⁡ ran ⁡ F
34 33 sselda ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W ∧ x ∈ ran ⁡ F → x ∈ Z ⁡ ran ⁡ F
35 34 adantrr ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W ∧ x ∈ ran ⁡ F ∧ y ∈ ran ⁡ F → x ∈ Z ⁡ ran ⁡ F
36 simprr ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W ∧ x ∈ ran ⁡ F ∧ y ∈ ran ⁡ F → y ∈ ran ⁡ F
37 3 4 cntzi ⊢ x ∈ Z ⁡ ran ⁡ F ∧ y ∈ ran ⁡ F → x + ˙ y = y + ˙ x
38 35 36 37 syl2anc ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W ∧ x ∈ ran ⁡ F ∧ y ∈ ran ⁡ F → x + ˙ y = y + ˙ x
39 1 3 mndass ⊢ G ∈ Mnd ∧ x ∈ B ∧ y ∈ B ∧ z ∈ B → x + ˙ y + ˙ z = x + ˙ y + ˙ z
40 29 39 sylan ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W ∧ x ∈ B ∧ y ∈ B ∧ z ∈ B → x + ˙ y + ˙ z = x + ˙ y + ˙ z
41 16 simpld ⊢ φ → W ∈ ℕ
42 41 adantr ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W → W ∈ ℕ
43 nnuz ⊢ ℕ = ℤ ≥ 1
44 42 43 eleqtrdi ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W → W ∈ ℤ ≥ 1
45 7 adantr ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W → F : A ⟶ B
46 45 frnd ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W → ran ⁡ F ⊆ B
47 simprr ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W → g : 1 … W ⟶ 1-1 onto W
48 f1ocnv ⊢ g : 1 … W ⟶ 1-1 onto W → g -1 : W ⟶ 1-1 onto 1 … W
49 47 48 syl ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W → g -1 : W ⟶ 1-1 onto 1 … W
50 simprl ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W → f : 1 … W ⟶ 1-1 onto W
51 f1oco ⊢ g -1 : W ⟶ 1-1 onto 1 … W ∧ f : 1 … W ⟶ 1-1 onto W → g -1 ∘ f : 1 … W ⟶ 1-1 onto 1 … W
52 49 50 51 syl2anc ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W → g -1 ∘ f : 1 … W ⟶ 1-1 onto 1 … W
53 f1of ⊢ g : 1 … W ⟶ 1-1 onto W → g : 1 … W ⟶ W
54 47 53 syl ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W → g : 1 … W ⟶ W
55 fvco3 ⊢ g : 1 … W ⟶ W ∧ x ∈ 1 … W → F ∘ g ⁡ x = F ⁡ g ⁡ x
56 54 55 sylan ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W ∧ x ∈ 1 … W → F ∘ g ⁡ x = F ⁡ g ⁡ x
57 45 ffnd ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W → F Fn A
58 11 adantr ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W → W ⊆ A
59 54 58 fssd ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W → g : 1 … W ⟶ A
60 59 ffvelcdmda ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W ∧ x ∈ 1 … W → g ⁡ x ∈ A
61 fnfvelrn ⊢ F Fn A ∧ g ⁡ x ∈ A → F ⁡ g ⁡ x ∈ ran ⁡ F
62 57 60 61 syl2an2r ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W ∧ x ∈ 1 … W → F ⁡ g ⁡ x ∈ ran ⁡ F
63 56 62 eqeltrd ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W ∧ x ∈ 1 … W → F ∘ g ⁡ x ∈ ran ⁡ F
64 f1of ⊢ f : 1 … W ⟶ 1-1 onto W → f : 1 … W ⟶ W
65 50 64 syl ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W → f : 1 … W ⟶ W
66 fvco3 ⊢ f : 1 … W ⟶ W ∧ k ∈ 1 … W → g -1 ∘ f ⁡ k = g -1 ⁡ f ⁡ k
67 65 66 sylan ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W ∧ k ∈ 1 … W → g -1 ∘ f ⁡ k = g -1 ⁡ f ⁡ k
68 67 fveq2d ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W ∧ k ∈ 1 … W → g ⁡ g -1 ∘ f ⁡ k = g ⁡ g -1 ⁡ f ⁡ k
69 65 ffvelcdmda ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W ∧ k ∈ 1 … W → f ⁡ k ∈ W
70 f1ocnvfv2 ⊢ g : 1 … W ⟶ 1-1 onto W ∧ f ⁡ k ∈ W → g ⁡ g -1 ⁡ f ⁡ k = f ⁡ k
71 47 69 70 syl2an2r ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W ∧ k ∈ 1 … W → g ⁡ g -1 ⁡ f ⁡ k = f ⁡ k
72 68 71 eqtr2d ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W ∧ k ∈ 1 … W → f ⁡ k = g ⁡ g -1 ∘ f ⁡ k
73 72 fveq2d ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W ∧ k ∈ 1 … W → F ⁡ f ⁡ k = F ⁡ g ⁡ g -1 ∘ f ⁡ k
74 fvco3 ⊢ f : 1 … W ⟶ W ∧ k ∈ 1 … W → F ∘ f ⁡ k = F ⁡ f ⁡ k
75 65 74 sylan ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W ∧ k ∈ 1 … W → F ∘ f ⁡ k = F ⁡ f ⁡ k
76 f1of ⊢ g -1 ∘ f : 1 … W ⟶ 1-1 onto 1 … W → g -1 ∘ f : 1 … W ⟶ 1 … W
77 52 76 syl ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W → g -1 ∘ f : 1 … W ⟶ 1 … W
78 77 ffvelcdmda ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W ∧ k ∈ 1 … W → g -1 ∘ f ⁡ k ∈ 1 … W
79 fvco3 ⊢ g : 1 … W ⟶ A ∧ g -1 ∘ f ⁡ k ∈ 1 … W → F ∘ g ⁡ g -1 ∘ f ⁡ k = F ⁡ g ⁡ g -1 ∘ f ⁡ k
80 59 78 79 syl2an2r ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W ∧ k ∈ 1 … W → F ∘ g ⁡ g -1 ∘ f ⁡ k = F ⁡ g ⁡ g -1 ∘ f ⁡ k
81 73 75 80 3eqtr4d ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W ∧ k ∈ 1 … W → F ∘ f ⁡ k = F ∘ g ⁡ g -1 ∘ f ⁡ k
82 32 38 40 44 46 52 63 81 seqf1o ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W → seq 1 + ˙ F ∘ f ⁡ W = seq 1 + ˙ F ∘ g ⁡ W
83 eqeq12 ⊢ x = seq 1 + ˙ F ∘ f ⁡ W ∧ y = seq 1 + ˙ F ∘ g ⁡ W → x = y ↔ seq 1 + ˙ F ∘ f ⁡ W = seq 1 + ˙ F ∘ g ⁡ W
84 82 83 syl5ibrcom ⊢ φ ∧ f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W → x = seq 1 + ˙ F ∘ f ⁡ W ∧ y = seq 1 + ˙ F ∘ g ⁡ W → x = y
85 84 expimpd ⊢ φ → f : 1 … W ⟶ 1-1 onto W ∧ g : 1 … W ⟶ 1-1 onto W ∧ x = seq 1 + ˙ F ∘ f ⁡ W ∧ y = seq 1 + ˙ F ∘ g ⁡ W → x = y
86 28 85 biimtrrid ⊢ φ → f : 1 … W ⟶ 1-1 onto W ∧ x = seq 1 + ˙ F ∘ f ⁡ W ∧ g : 1 … W ⟶ 1-1 onto W ∧ y = seq 1 + ˙ F ∘ g ⁡ W → x = y
87 86 exlimdvv ⊢ φ → ∃ f ∃ g f : 1 … W ⟶ 1-1 onto W ∧ x = seq 1 + ˙ F ∘ f ⁡ W ∧ g : 1 … W ⟶ 1-1 onto W ∧ y = seq 1 + ˙ F ∘ g ⁡ W → x = y
88 27 87 biimtrrid ⊢ φ → ∃ f f : 1 … W ⟶ 1-1 onto W ∧ x = seq 1 + ˙ F ∘ f ⁡ W ∧ ∃ g g : 1 … W ⟶ 1-1 onto W ∧ y = seq 1 + ˙ F ∘ g ⁡ W → x = y
89 88 alrimivv ⊢ φ → ∀ x ∀ y ∃ f f : 1 … W ⟶ 1-1 onto W ∧ x = seq 1 + ˙ F ∘ f ⁡ W ∧ ∃ g g : 1 … W ⟶ 1-1 onto W ∧ y = seq 1 + ˙ F ∘ g ⁡ W → x = y
90 eqeq1 ⊢ x = y → x = seq 1 + ˙ F ∘ f ⁡ W ↔ y = seq 1 + ˙ F ∘ f ⁡ W
91 90 anbi2d ⊢ x = y → f : 1 … W ⟶ 1-1 onto W ∧ x = seq 1 + ˙ F ∘ f ⁡ W ↔ f : 1 … W ⟶ 1-1 onto W ∧ y = seq 1 + ˙ F ∘ f ⁡ W
92 91 exbidv ⊢ x = y → ∃ f f : 1 … W ⟶ 1-1 onto W ∧ x = seq 1 + ˙ F ∘ f ⁡ W ↔ ∃ f f : 1 … W ⟶ 1-1 onto W ∧ y = seq 1 + ˙ F ∘ f ⁡ W
93 f1oeq1 ⊢ f = g → f : 1 … W ⟶ 1-1 onto W ↔ g : 1 … W ⟶ 1-1 onto W
94 coeq2 ⊢ f = g → F ∘ f = F ∘ g
95 94 seqeq3d ⊢ f = g → seq 1 + ˙ F ∘ f = seq 1 + ˙ F ∘ g
96 95 fveq1d ⊢ f = g → seq 1 + ˙ F ∘ f ⁡ W = seq 1 + ˙ F ∘ g ⁡ W
97 96 eqeq2d ⊢ f = g → y = seq 1 + ˙ F ∘ f ⁡ W ↔ y = seq 1 + ˙ F ∘ g ⁡ W
98 93 97 anbi12d ⊢ f = g → f : 1 … W ⟶ 1-1 onto W ∧ y = seq 1 + ˙ F ∘ f ⁡ W ↔ g : 1 … W ⟶ 1-1 onto W ∧ y = seq 1 + ˙ F ∘ g ⁡ W
99 98 cbvexvw ⊢ ∃ f f : 1 … W ⟶ 1-1 onto W ∧ y = seq 1 + ˙ F ∘ f ⁡ W ↔ ∃ g g : 1 … W ⟶ 1-1 onto W ∧ y = seq 1 + ˙ F ∘ g ⁡ W
100 92 99 bitrdi ⊢ x = y → ∃ f f : 1 … W ⟶ 1-1 onto W ∧ x = seq 1 + ˙ F ∘ f ⁡ W ↔ ∃ g g : 1 … W ⟶ 1-1 onto W ∧ y = seq 1 + ˙ F ∘ g ⁡ W
101 100 eu4 ⊢ ∃! x ∃ f f : 1 … W ⟶ 1-1 onto W ∧ x = seq 1 + ˙ F ∘ f ⁡ W ↔ ∃ x ∃ f f : 1 … W ⟶ 1-1 onto W ∧ x = seq 1 + ˙ F ∘ f ⁡ W ∧ ∀ x ∀ y ∃ f f : 1 … W ⟶ 1-1 onto W ∧ x = seq 1 + ˙ F ∘ f ⁡ W ∧ ∃ g g : 1 … W ⟶ 1-1 onto W ∧ y = seq 1 + ˙ F ∘ g ⁡ W → x = y
102 26 89 101 sylanbrc ⊢ φ → ∃! x ∃ f f : 1 … W ⟶ 1-1 onto W ∧ x = seq 1 + ˙ F ∘ f ⁡ W