This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: The symmetric group on a set A is a group. (Contributed by Paul Chapman, 25-Feb-2008) (Revised by Mario Carneiro, 13-Jan-2015) (Proof shortened by AV, 28-Jan-2024)
| Ref | Expression | ||
|---|---|---|---|
| Hypothesis | symggrp.1 | |- G = ( SymGrp ` A ) |
|
| Assertion | symggrp | |- ( A e. V -> G e. Grp ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | symggrp.1 | |- G = ( SymGrp ` A ) |
|
| 2 | eqidd | |- ( A e. V -> ( Base ` G ) = ( Base ` G ) ) |
|
| 3 | eqidd | |- ( A e. V -> ( +g ` G ) = ( +g ` G ) ) |
|
| 4 | eqid | |- ( Base ` G ) = ( Base ` G ) |
|
| 5 | eqid | |- ( +g ` G ) = ( +g ` G ) |
|
| 6 | 1 4 5 | symgcl | |- ( ( x e. ( Base ` G ) /\ y e. ( Base ` G ) ) -> ( x ( +g ` G ) y ) e. ( Base ` G ) ) |
| 7 | 6 | 3adant1 | |- ( ( A e. V /\ x e. ( Base ` G ) /\ y e. ( Base ` G ) ) -> ( x ( +g ` G ) y ) e. ( Base ` G ) ) |
| 8 | 1 4 5 | symgcl | |- ( ( f e. ( Base ` G ) /\ g e. ( Base ` G ) ) -> ( f ( +g ` G ) g ) e. ( Base ` G ) ) |
| 9 | 1 4 5 | symgov | |- ( ( f e. ( Base ` G ) /\ g e. ( Base ` G ) ) -> ( f ( +g ` G ) g ) = ( f o. g ) ) |
| 10 | 8 9 | symggrplem | |- ( ( x e. ( Base ` G ) /\ y e. ( Base ` G ) /\ z e. ( Base ` G ) ) -> ( ( x ( +g ` G ) y ) ( +g ` G ) z ) = ( x ( +g ` G ) ( y ( +g ` G ) z ) ) ) |
| 11 | 10 | adantl | |- ( ( A e. V /\ ( x e. ( Base ` G ) /\ y e. ( Base ` G ) /\ z e. ( Base ` G ) ) ) -> ( ( x ( +g ` G ) y ) ( +g ` G ) z ) = ( x ( +g ` G ) ( y ( +g ` G ) z ) ) ) |
| 12 | 1 | idresperm | |- ( A e. V -> ( _I |` A ) e. ( Base ` G ) ) |
| 13 | 1 4 5 | symgov | |- ( ( ( _I |` A ) e. ( Base ` G ) /\ x e. ( Base ` G ) ) -> ( ( _I |` A ) ( +g ` G ) x ) = ( ( _I |` A ) o. x ) ) |
| 14 | 12 13 | sylan | |- ( ( A e. V /\ x e. ( Base ` G ) ) -> ( ( _I |` A ) ( +g ` G ) x ) = ( ( _I |` A ) o. x ) ) |
| 15 | 1 4 | elsymgbas | |- ( A e. V -> ( x e. ( Base ` G ) <-> x : A -1-1-onto-> A ) ) |
| 16 | 15 | biimpa | |- ( ( A e. V /\ x e. ( Base ` G ) ) -> x : A -1-1-onto-> A ) |
| 17 | f1of | |- ( x : A -1-1-onto-> A -> x : A --> A ) |
|
| 18 | fcoi2 | |- ( x : A --> A -> ( ( _I |` A ) o. x ) = x ) |
|
| 19 | 16 17 18 | 3syl | |- ( ( A e. V /\ x e. ( Base ` G ) ) -> ( ( _I |` A ) o. x ) = x ) |
| 20 | 14 19 | eqtrd | |- ( ( A e. V /\ x e. ( Base ` G ) ) -> ( ( _I |` A ) ( +g ` G ) x ) = x ) |
| 21 | f1ocnv | |- ( x : A -1-1-onto-> A -> `' x : A -1-1-onto-> A ) |
|
| 22 | 21 | a1i | |- ( A e. V -> ( x : A -1-1-onto-> A -> `' x : A -1-1-onto-> A ) ) |
| 23 | 1 4 | elsymgbas | |- ( A e. V -> ( `' x e. ( Base ` G ) <-> `' x : A -1-1-onto-> A ) ) |
| 24 | 22 15 23 | 3imtr4d | |- ( A e. V -> ( x e. ( Base ` G ) -> `' x e. ( Base ` G ) ) ) |
| 25 | 24 | imp | |- ( ( A e. V /\ x e. ( Base ` G ) ) -> `' x e. ( Base ` G ) ) |
| 26 | 1 4 5 | symgov | |- ( ( `' x e. ( Base ` G ) /\ x e. ( Base ` G ) ) -> ( `' x ( +g ` G ) x ) = ( `' x o. x ) ) |
| 27 | 25 26 | sylancom | |- ( ( A e. V /\ x e. ( Base ` G ) ) -> ( `' x ( +g ` G ) x ) = ( `' x o. x ) ) |
| 28 | f1ococnv1 | |- ( x : A -1-1-onto-> A -> ( `' x o. x ) = ( _I |` A ) ) |
|
| 29 | 16 28 | syl | |- ( ( A e. V /\ x e. ( Base ` G ) ) -> ( `' x o. x ) = ( _I |` A ) ) |
| 30 | 27 29 | eqtrd | |- ( ( A e. V /\ x e. ( Base ` G ) ) -> ( `' x ( +g ` G ) x ) = ( _I |` A ) ) |
| 31 | 2 3 7 11 12 20 25 30 | isgrpd | |- ( A e. V -> G e. Grp ) |