HomeHome Metamath Proof Explorer < Previous   Next >
Related theorems
Unicode version

Theorem isgrp 9321
Description: The predicate "is a group operation." Note that X is the base set of the group.
Hypothesis
Ref Expression
isgrp.1 |- X = ran G
Assertion
Ref Expression
isgrp |- (G e. A -> (G e. Grp <-> (G:(X X. X)-->X /\ A.x e. X A.y e. X A.z e. X ((xGy)Gz) = (xG(yGz)) /\ E.u e. X A.x e. X ((uGx) = x /\ E.y e. X (yGx) = u))))
Distinct variable groups:   x,u,y,z,G   u,X,x,y,z

Proof of Theorem isgrp
StepHypRef Expression
1 feq1 4551 . . . . . 6 |- (g = G -> (g:(t X. t)-->t <-> G:(t X. t)-->t))
2 opreq 4888 . . . . . . . . . 10 |- (g = G -> ((xgy)gz) = ((xgy)Gz))
3 opreq 4888 . . . . . . . . . . 11 |- (g = G -> (xgy) = (xGy))
43opreq1d 4897 . . . . . . . . . 10 |- (g = G -> ((xgy)Gz) = ((xGy)Gz))
52, 4eqtrd 1925 . . . . . . . . 9 |- (g = G -> ((xgy)gz) = ((xGy)Gz))
6 opreq 4888 . . . . . . . . . 10 |- (g = G -> (xg(ygz)) = (xG(ygz)))
7 opreq 4888 . . . . . . . . . . 11 |- (g = G -> (ygz) = (yGz))
87opreq2d 4898 . . . . . . . . . 10 |- (g = G -> (xG(ygz)) = (xG(yGz)))
96, 8eqtrd 1925 . . . . . . . . 9 |- (g = G -> (xg(ygz)) = (xG(yGz)))
105, 9eqeq12d 1899 . . . . . . . 8 |- (g = G -> (((xgy)gz) = (xg(ygz)) <-> ((xGy)Gz) = (xG(yGz))))
1110ralbidv 2123 . . . . . . 7 |- (g = G -> (A.z e. t ((xgy)gz) = (xg(ygz)) <-> A.z e. t ((xGy)Gz) = (xG(yGz))))
12112ralbidv 2140 . . . . . 6 |- (g = G -> (A.x e. t A.y e. t A.z e. t ((xgy)gz) = (xg(ygz)) <-> A.x e. t A.y e. t A.z e. t ((xGy)Gz) = (xG(yGz))))
13 opreq 4888 . . . . . . . . 9 |- (g = G -> (ugx) = (uGx))
1413eqeq1d 1892 . . . . . . . 8 |- (g = G -> ((ugx) = x <-> (uGx) = x))
15 opreq 4888 . . . . . . . . . 10 |- (g = G -> (ygx) = (yGx))
1615eqeq1d 1892 . . . . . . . . 9 |- (g = G -> ((ygx) = u <-> (yGx) = u))
1716rexbidv 2124 . . . . . . . 8 |- (g = G -> (E.y e. t (ygx) = u <-> E.y e. t (yGx) = u))
1814, 17anbi12d 690 . . . . . . 7 |- (g = G -> (((ugx) = x /\ E.y e. t (ygx) = u) <-> ((uGx) = x /\ E.y e. t (yGx) = u)))
1918rexralbidv 2142 . . . . . 6 |- (g = G -> (E.u e. t A.x e. t ((ugx) = x /\ E.y e. t (ygx) = u) <-> E.u e. t A.x e. t ((uGx) = x /\ E.y e. t (yGx) = u)))
201, 12, 193anbi123d 1168 . . . . 5 |- (g = G -> ((g:(t X. t)-->t /\ A.x e. t A.y e. t A.z e. t ((xgy)gz) = (xg(ygz)) /\ E.u e. t A.x e. t ((ugx) = x /\ E.y e. t (ygx) = u)) <-> (G:(t X. t)-->t /\ A.x e. t A.y e. t A.z e. t ((xGy)Gz) = (xG(yGz)) /\ E.u e. t A.x e. t ((uGx) = x /\ E.y e. t (yGx) = u))))
2120exbidv 1657 . . . 4 |- (g = G -> (E.t(g:(t X. t)-->t /\ A.x e. t A.y e. t A.z e. t ((xgy)gz) = (xg(ygz)) /\ E.u e. t A.x e. t ((ugx) = x /\ E.y e. t (ygx) = u)) <-> E.t(G:(t X. t)-->t /\ A.x e. t A.y e. t A.z e. t ((xGy)Gz) = (xG(yGz)) /\ E.u e. t A.x e. t ((uGx) = x /\ E.y e. t (yGx) = u))))
22 df-grp 9316 . . . 4 |- Grp = {g | E.t(g:(t X. t)-->t /\ A.x e. t A.y e. t A.z e. t ((xgy)gz) = (xg(ygz)) /\ E.u e. t A.x e. t ((ugx) = x /\ E.y e. t (ygx) = u))}
2321, 22elab2g 2406 . . 3 |- (G e. A -> (G e. Grp <-> E.t(G:(t X. t)-->t /\ A.x e. t A.y e. t A.z e. t ((xGy)Gz) = (xG(yGz)) /\ E.u e. t A.x e. t ((uGx) = x /\ E.y e. t (yGx) = u))))
24 opreq2 4890 . . . . . . . . . . . . . . . . 17 |- (x = z -> (uGx) = (uGz))
25 id 73 . . . . . . . . . . . . . . . . 17 |- (x = z -> x = z)
2624, 25eqeq12d 1899 . . . . . . . . . . . . . . . 16 |- (x = z -> ((uGx) = x <-> (uGz) = z))
27 eqcom 1886 . . . . . . . . . . . . . . . 16 |- ((uGz) = z <-> z = (uGz))
2826, 27syl6bb 595 . . . . . . . . . . . . . . 15 |- (x = z -> ((uGx) = x <-> z = (uGz)))
2928rcla4v 2376 . . . . . . . . . . . . . 14 |- (z e. t -> (A.x e. t (uGx) = x -> z = (uGz)))
30 opreq2 4890 . . . . . . . . . . . . . . . . 17 |- (y = z -> (uGy) = (uGz))
3130eqeq2d 1895 . . . . . . . . . . . . . . . 16 |- (y = z -> (z = (uGy) <-> z = (uGz)))
3231rcla4ev 2381 . . . . . . . . . . . . . . 15 |- ((z e. t /\ z = (uGz)) -> E.y e. t z = (uGy))
3332ex 402 . . . . . . . . . . . . . 14 |- (z e. t -> (z = (uGz) -> E.y e. t z = (uGy)))
3429, 33syld 30 . . . . . . . . . . . . 13 |- (z e. t -> (A.x e. t (uGx) = x -> E.y e. t z = (uGy)))
35 simpl 346 . . . . . . . . . . . . . 14 |- (((uGx) = x /\ E.y e. t (yGx) = u) -> (uGx) = x)
3635ralimi 2168 . . . . . . . . . . . . 13 |- (A.x e. t ((uGx) = x /\ E.y e. t (yGx) = u) -> A.x e. t (uGx) = x)
3734, 36syl5 20 . . . . . . . . . . . 12 |- (z e. t -> (A.x e. t ((uGx) = x /\ E.y e. t (yGx) = u) -> E.y e. t z = (uGy)))
3837reximdv 2202 . . . . . . . . . . 11 |- (z e. t -> (E.u e. t A.x e. t ((uGx) = x /\ E.y e. t (yGx) = u) -> E.u e. t E.y e. t z = (uGy)))
3938impcom 378 . . . . . . . . . 10 |- ((E.u e. t A.x e. t ((uGx) = x /\ E.y e. t (yGx) = u) /\ z e. t) -> E.u e. t E.y e. t z = (uGy))
4039r19.21aiva 2176 . . . . . . . . 9 |- (E.u e. t A.x e. t ((uGx) = x /\ E.y e. t (yGx) = u) -> A.z e. t E.u e. t E.y e. t z = (uGy))
4140anim2i 362 . . . . . . . 8 |- ((G:(t X. t)-->t /\ E.u e. t A.x e. t ((uGx) = x /\ E.y e. t (yGx) = u)) -> (G:(t X. t)-->t /\ A.z e. t E.u e. t E.y e. t z = (uGy)))
42 fooprv 4967 . . . . . . . 8 |- (G:(t X. t)-onto->t <-> (G:(t X. t)-->t /\ A.z e. t E.u e. t E.y e. t z = (uGy)))
4341, 42sylibr 217 . . . . . . 7 |- ((G:(t X. t)-->t /\ E.u e. t A.x e. t ((uGx) = x /\ E.y e. t (yGx) = u)) -> G:(t X. t)-onto->t)
44 forn 4620 . . . . . . . 8 |- (G:(t X. t)-onto->t -> ran G = t)
4544eqcomd 1889 . . . . . . 7 |- (G:(t X. t)-onto->t -> t = ran G)
4643, 45syl 12 . . . . . 6 |- ((G:(t X. t)-->t /\ E.u e. t A.x e. t ((uGx) = x /\ E.y e. t (yGx) = u)) -> t = ran G)
47463adant2 895 . . . . 5 |- ((G:(t X. t)-->t /\ A.x e. t A.y e. t A.z e. t ((xGy)Gz) = (xG(yGz)) /\ E.u e. t A.x e. t ((uGx) = x /\ E.y e. t (yGx) = u)) -> t = ran G)
4847pm4.71ri 700 . . . 4 |- ((G:(t X. t)-->t /\ A.x e. t A.y e. t A.z e. t ((xGy)Gz) = (xG(yGz)) /\ E.u e. t A.x e. t ((uGx) = x /\ E.y e. t (yGx) = u)) <-> (t = ran G /\ (G:(t X. t)-->t /\ A.x e. t A.y e. t A.z e. t ((xGy)Gz) = (xG(yGz)) /\ E.u e. t A.x e. t ((uGx) = x /\ E.y e. t (yGx) = u))))
4948exbii 1398 . . 3 |- (E.t(G:(t X. t)-->t /\ A.x e. t A.y e. t A.z e. t ((xGy)Gz) = (xG(yGz)) /\ E.u e. t A.x e. t ((uGx) = x /\ E.y e. t (yGx) = u)) <-> E.t(t = ran G /\ (G:(t X. t)-->t /\ A.x e. t A.y e. t A.z e. t ((xGy)Gz) = (xG(yGz)) /\ E.u e. t A.x e. t ((uGx) = x /\ E.y e. t (yGx) = u))))
5023, 49syl6bb 595 . 2 |- (G e. A -> (G e. Grp <-> E.t(t = ran G /\ (G:(t X. t)-->t /\ A.x e. t A.y e. t A.z e. t ((xGy)Gz) = (xG(yGz)) /\ E.u e. t A.x e. t ((uGx) = x /\ E.y e. t (yGx) = u)))))
51 rnexg 4207 . . 3 |- (G e. A -> ran G e. _V)
52 isgrp.1 . . . . . 6 |- X = ran G
5352eqeq2i 1894 . . . . 5 |- (t = X <-> t = ran G)
54 xpeq1 4016 . . . . . . . . 9 |- (t = X -> (t X. t) = (X X. t))
55 xpeq2 4017 . . . . . . . . 9 |- (t = X -> (X X. t) = (X X. X))
5654, 55eqtrd 1925 . . . . . . . 8 |- (t = X -> (t X. t) = (X X. X))
5756feq2d 4557 . . . . . . 7 |- (t = X -> (G:(t X. t)-->t <-> G:(X X. X)-->t))
58 feq3 4553 . . . . . . 7 |- (t = X -> (G:(X X. X)-->t <-> G:(X X. X)-->X))
5957, 58bitrd 587 . . . . . 6 |- (t = X -> (G:(t X. t)-->t <-> G:(X X. X)-->X))
60 raleq 2266 . . . . . . . 8 |- (t = X -> (A.z e. t ((xGy)Gz) = (xG(yGz)) <-> A.z e. X ((xGy)Gz) = (xG(yGz))))
6160raleqbi1dv 2271 . . . . . . 7 |- (t = X -> (A.y e. t A.z e. t ((xGy)Gz) = (xG(yGz)) <-> A.y e. X A.z e. X ((xGy)Gz) = (xG(yGz))))
6261raleqbi1dv 2271 . . . . . 6 |- (t = X -> (A.x e. t A.y e. t A.z e. t ((xGy)Gz) = (xG(yGz)) <-> A.x e. X A.y e. X A.z e. X ((xGy)Gz) = (xG(yGz))))
63 rexeq 2267 . . . . . . . . 9 |- (t = X -> (E.y e. t (yGx) = u <-> E.y e. X (yGx) = u))
6463anbi2d 678 . . . . . . . 8 |- (t = X -> (((uGx) = x /\ E.y e. t (yGx) = u) <-> ((uGx) = x /\ E.y e. X (yGx) = u)))
6564raleqbi1dv 2271 . . . . . . 7 |- (t = X -> (A.x e. t ((uGx) = x /\ E.y e. t (yGx) = u) <-> A.x e. X ((uGx) = x /\ E.y e. X (yGx) = u)))
6665rexeqbi1dv 2272 . . . . . 6 |- (t = X -> (E.u e. t A.x e. t ((uGx) = x /\ E.y e. t (yGx) = u) <-> E.u e. X A.x e. X ((uGx) = x /\ E.y e. X (yGx) = u)))
6759, 62, 663anbi123d 1168 . . . . 5 |- (t = X -> ((G:(t X. t)-->t /\ A.x e. t A.y e. t A.z e. t ((xGy)Gz) = (xG(yGz)) /\ E.u e. t A.x e. t ((uGx) = x /\ E.y e. t (yGx) = u)) <-> (G:(X X. X)-->X /\ A.x e. X A.y e. X A.z e. X ((xGy)Gz) = (xG(yGz)) /\ E.u e. X A.x e. X ((uGx) = x /\ E.y e. X (yGx) = u))))
6853, 67sylbir 218 . . . 4 |- (t = ran G -> ((G:(t X. t)-->t /\ A.x e. t A.y e. t A.z e. t ((xGy)Gz) = (xG(yGz)) /\ E.u e. t A.x e. t ((uGx) = x /\ E.y e. t (yGx) = u)) <-> (G:(X X. X)-->X /\ A.x e. X A.y e. X A.z e. X ((xGy)Gz) = (xG(yGz)) /\ E.u e. X A.x e. X ((uGx) = x /\ E.y e. X (yGx) = u))))
6968ceqsexgv 2393 . . 3 |- (ran G e. _V -> (E.t(t = ran G /\ (G:(t X. t)-->t /\ A.x e. t A.y e. t A.z e. t ((xGy)Gz) = (xG(yGz)) /\ E.u e. t A.x e. t ((uGx) = x /\ E.y e. t (yGx) = u))) <-> (G:(X X. X)-->X /\ A.x e. X A.y e. X A.z e. X ((xGy)Gz) = (xG(yGz)) /\ E.u e. X A.x e. X ((uGx) = x /\ E.y e. X (yGx) = u))))
7051, 69syl 12 . 2 |- (G e. A -> (E.t(t = ran G /\ (G:(t X. t)-->t /\ A.x e. t A.y e. t A.z e. t ((xGy)Gz) = (xG(yGz)) /\ E.u e. t A.x e. t ((uGx) = x /\ E.y e. t (yGx) = u))) <-> (G:(X X. X)-->X /\ A.x e. X A.y e. X A.z e. X ((xGy)Gz) = (xG(yGz)) /\ E.u e. X A.x e. X ((uGx) = x /\ E.y e. X (yGx) = u))))
7150, 70bitrd 587 1 |- (G e. A -> (G e. Grp <-> (G:(X X. X)-->X /\ A.x e. X A.y e. X A.z e. X ((xGy)Gz) = (xG(yGz)) /\ E.u e. X A.x e. X ((uGx) = x /\ E.y e. X (yGx) = u))))
Colors of variables: wff set class
Syntax hints:   -> wi 3   <-> wb 163   /\ wa 240   /\ w3a 858   = wceq 1298   e. wcel 1300  E.wex 1326  A.wral 2105  E.wrex 2106  _Vcvv 2292   X. cxp 3984  ran crn 3987  -->wf 3994  -onto->wfo 3996  (class class class)co 4884  Grpcgr 9311
This theorem is referenced by:  isgrpi 9322  grpfo 9323  grplidinv 9325  grpass 9327  isgrp2i 9360  grpmnd 10393  hmeogrp 14892  isgrpda 16033
This theorem was proved from axioms:  ax-1 4  ax-2 5  ax-3 6  ax-mp 7  ax-7 1304  ax-gen 1305  ax-8 1306  ax-9 1307  ax-10 1308  ax-11 1309  ax-12 1310  ax-13 1311  ax-14 1312  ax-17 1317  ax-4 1319  ax-5o 1321  ax-6o 1324  ax-9o 1481  ax-10o 1500  ax-16 1580  ax-11o 1588  ax-ext 1865  ax-sep 3438  ax-nul 3445  ax-pow 3481  ax-pr 3524  ax-un 3790
This theorem depends on definitions:  df-bi 164  df-or 241  df-an 242  df-3an 860  df-ex 1327  df-sb 1536  df-eu 1775  df-mo 1776  df-clab 1872  df-cleq 1877  df-clel 1880  df-ne 2019  df-ral 2109  df-rex 2110  df-v 2294  df-dif 2597  df-un 2600  df-in 2603  df-ss 2605  df-nul 2876  df-pw 3035  df-sn 3049  df-pr 3050  df-op 3053  df-uni 3178  df-br 3339  df-opab 3396  df-id 3586  df-xp 4000  df-rel 4001  df-cnv 4002  df-co 4003  df-dm 4004  df-rn 4005  df-res 4006  df-ima 4007  df-fun 4008  df-fn 4009  df-f 4010  df-fo 4012  df-fv 4014  df-opr 4886  df-grp 9316
Copyright terms: Public domain