Metamath Proof Explorer


Theorem symgfcoeu

Description: Uniqueness property of permutations. (Contributed by Thierry Arnoux, 22-Aug-2020)

Ref Expression
Hypothesis symgfcoeu.g 𝐺 = ( Base ‘ ( SymGrp ‘ 𝐷 ) )
Assertion symgfcoeu ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) → ∃! 𝑝𝐺 𝑄 = ( 𝑃𝑝 ) )

Proof

Step Hyp Ref Expression
1 symgfcoeu.g 𝐺 = ( Base ‘ ( SymGrp ‘ 𝐷 ) )
2 eqid ( SymGrp ‘ 𝐷 ) = ( SymGrp ‘ 𝐷 )
3 eqid ( invg ‘ ( SymGrp ‘ 𝐷 ) ) = ( invg ‘ ( SymGrp ‘ 𝐷 ) )
4 2 1 3 symginv ( 𝑃𝐺 → ( ( invg ‘ ( SymGrp ‘ 𝐷 ) ) ‘ 𝑃 ) = 𝑃 )
5 4 3ad2ant2 ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) → ( ( invg ‘ ( SymGrp ‘ 𝐷 ) ) ‘ 𝑃 ) = 𝑃 )
6 2 symggrp ( 𝐷𝑉 → ( SymGrp ‘ 𝐷 ) ∈ Grp )
7 6 3ad2ant1 ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) → ( SymGrp ‘ 𝐷 ) ∈ Grp )
8 simp2 ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) → 𝑃𝐺 )
9 1 3 grpinvcl ( ( ( SymGrp ‘ 𝐷 ) ∈ Grp ∧ 𝑃𝐺 ) → ( ( invg ‘ ( SymGrp ‘ 𝐷 ) ) ‘ 𝑃 ) ∈ 𝐺 )
10 7 8 9 syl2anc ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) → ( ( invg ‘ ( SymGrp ‘ 𝐷 ) ) ‘ 𝑃 ) ∈ 𝐺 )
11 5 10 eqeltrrd ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) → 𝑃𝐺 )
12 simp3 ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) → 𝑄𝐺 )
13 eqid ( +g ‘ ( SymGrp ‘ 𝐷 ) ) = ( +g ‘ ( SymGrp ‘ 𝐷 ) )
14 2 1 13 symgov ( ( 𝑃𝐺𝑄𝐺 ) → ( 𝑃 ( +g ‘ ( SymGrp ‘ 𝐷 ) ) 𝑄 ) = ( 𝑃𝑄 ) )
15 2 1 13 symgcl ( ( 𝑃𝐺𝑄𝐺 ) → ( 𝑃 ( +g ‘ ( SymGrp ‘ 𝐷 ) ) 𝑄 ) ∈ 𝐺 )
16 14 15 eqeltrrd ( ( 𝑃𝐺𝑄𝐺 ) → ( 𝑃𝑄 ) ∈ 𝐺 )
17 11 12 16 syl2anc ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) → ( 𝑃𝑄 ) ∈ 𝐺 )
18 coass ( ( 𝑃 𝑃 ) ∘ 𝑄 ) = ( 𝑃 ∘ ( 𝑃𝑄 ) )
19 2 1 symgbasf1o ( 𝑃𝐺𝑃 : 𝐷1-1-onto𝐷 )
20 f1ococnv2 ( 𝑃 : 𝐷1-1-onto𝐷 → ( 𝑃 𝑃 ) = ( I ↾ 𝐷 ) )
21 8 19 20 3syl ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) → ( 𝑃 𝑃 ) = ( I ↾ 𝐷 ) )
22 21 coeq1d ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) → ( ( 𝑃 𝑃 ) ∘ 𝑄 ) = ( ( I ↾ 𝐷 ) ∘ 𝑄 ) )
23 18 22 eqtr3id ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) → ( 𝑃 ∘ ( 𝑃𝑄 ) ) = ( ( I ↾ 𝐷 ) ∘ 𝑄 ) )
24 2 1 symgbasf1o ( 𝑄𝐺𝑄 : 𝐷1-1-onto𝐷 )
25 f1of ( 𝑄 : 𝐷1-1-onto𝐷𝑄 : 𝐷𝐷 )
26 12 24 25 3syl ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) → 𝑄 : 𝐷𝐷 )
27 fcoi2 ( 𝑄 : 𝐷𝐷 → ( ( I ↾ 𝐷 ) ∘ 𝑄 ) = 𝑄 )
28 26 27 syl ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) → ( ( I ↾ 𝐷 ) ∘ 𝑄 ) = 𝑄 )
29 23 28 eqtr2d ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) → 𝑄 = ( 𝑃 ∘ ( 𝑃𝑄 ) ) )
30 simpr ( ( ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) ∧ 𝑝𝐺 ) ∧ 𝑄 = ( 𝑃𝑝 ) ) → 𝑄 = ( 𝑃𝑝 ) )
31 30 coeq2d ( ( ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) ∧ 𝑝𝐺 ) ∧ 𝑄 = ( 𝑃𝑝 ) ) → ( 𝑃𝑄 ) = ( 𝑃 ∘ ( 𝑃𝑝 ) ) )
32 coass ( ( 𝑃𝑃 ) ∘ 𝑝 ) = ( 𝑃 ∘ ( 𝑃𝑝 ) )
33 f1ococnv1 ( 𝑃 : 𝐷1-1-onto𝐷 → ( 𝑃𝑃 ) = ( I ↾ 𝐷 ) )
34 8 19 33 3syl ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) → ( 𝑃𝑃 ) = ( I ↾ 𝐷 ) )
35 34 coeq1d ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) → ( ( 𝑃𝑃 ) ∘ 𝑝 ) = ( ( I ↾ 𝐷 ) ∘ 𝑝 ) )
36 35 ad2antrr ( ( ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) ∧ 𝑝𝐺 ) ∧ 𝑄 = ( 𝑃𝑝 ) ) → ( ( 𝑃𝑃 ) ∘ 𝑝 ) = ( ( I ↾ 𝐷 ) ∘ 𝑝 ) )
37 32 36 eqtr3id ( ( ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) ∧ 𝑝𝐺 ) ∧ 𝑄 = ( 𝑃𝑝 ) ) → ( 𝑃 ∘ ( 𝑃𝑝 ) ) = ( ( I ↾ 𝐷 ) ∘ 𝑝 ) )
38 simplr ( ( ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) ∧ 𝑝𝐺 ) ∧ 𝑄 = ( 𝑃𝑝 ) ) → 𝑝𝐺 )
39 2 1 symgbasf1o ( 𝑝𝐺𝑝 : 𝐷1-1-onto𝐷 )
40 f1of ( 𝑝 : 𝐷1-1-onto𝐷𝑝 : 𝐷𝐷 )
41 38 39 40 3syl ( ( ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) ∧ 𝑝𝐺 ) ∧ 𝑄 = ( 𝑃𝑝 ) ) → 𝑝 : 𝐷𝐷 )
42 fcoi2 ( 𝑝 : 𝐷𝐷 → ( ( I ↾ 𝐷 ) ∘ 𝑝 ) = 𝑝 )
43 41 42 syl ( ( ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) ∧ 𝑝𝐺 ) ∧ 𝑄 = ( 𝑃𝑝 ) ) → ( ( I ↾ 𝐷 ) ∘ 𝑝 ) = 𝑝 )
44 31 37 43 3eqtrrd ( ( ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) ∧ 𝑝𝐺 ) ∧ 𝑄 = ( 𝑃𝑝 ) ) → 𝑝 = ( 𝑃𝑄 ) )
45 44 ex ( ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) ∧ 𝑝𝐺 ) → ( 𝑄 = ( 𝑃𝑝 ) → 𝑝 = ( 𝑃𝑄 ) ) )
46 45 ralrimiva ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) → ∀ 𝑝𝐺 ( 𝑄 = ( 𝑃𝑝 ) → 𝑝 = ( 𝑃𝑄 ) ) )
47 coeq2 ( 𝑝 = ( 𝑃𝑄 ) → ( 𝑃𝑝 ) = ( 𝑃 ∘ ( 𝑃𝑄 ) ) )
48 47 eqeq2d ( 𝑝 = ( 𝑃𝑄 ) → ( 𝑄 = ( 𝑃𝑝 ) ↔ 𝑄 = ( 𝑃 ∘ ( 𝑃𝑄 ) ) ) )
49 48 eqreu ( ( ( 𝑃𝑄 ) ∈ 𝐺𝑄 = ( 𝑃 ∘ ( 𝑃𝑄 ) ) ∧ ∀ 𝑝𝐺 ( 𝑄 = ( 𝑃𝑝 ) → 𝑝 = ( 𝑃𝑄 ) ) ) → ∃! 𝑝𝐺 𝑄 = ( 𝑃𝑝 ) )
50 17 29 46 49 syl3anc ( ( 𝐷𝑉𝑃𝐺𝑄𝐺 ) → ∃! 𝑝𝐺 𝑄 = ( 𝑃𝑝 ) )