Metamath Proof Explorer


Theorem oddvdssubg

Description: The set of all elements whose order divides a fixed integer is a subgroup of any abelian group. (Contributed by Mario Carneiro, 19-Apr-2016)

Ref Expression
Hypotheses torsubg.1 O=odG
oddvdssubg.1 B=BaseG
Assertion oddvdssubg GAbelNxB|OxNSubGrpG

Proof

Step Hyp Ref Expression
1 torsubg.1 O=odG
2 oddvdssubg.1 B=BaseG
3 ssrab2 xB|OxNB
4 3 a1i GAbelNxB|OxNB
5 fveq2 x=0GOx=O0G
6 5 breq1d x=0GOxNO0GN
7 ablgrp GAbelGGrp
8 7 adantr GAbelNGGrp
9 eqid 0G=0G
10 2 9 grpidcl GGrp0GB
11 8 10 syl GAbelN0GB
12 1 9 od1 GGrpO0G=1
13 8 12 syl GAbelNO0G=1
14 1dvds N1N
15 14 adantl GAbelN1N
16 13 15 eqbrtrd GAbelNO0GN
17 6 11 16 elrabd GAbelN0GxB|OxN
18 17 ne0d GAbelNxB|OxN
19 fveq2 x=yOx=Oy
20 19 breq1d x=yOxNOyN
21 20 elrab yxB|OxNyBOyN
22 fveq2 x=zOx=Oz
23 22 breq1d x=zOxNOzN
24 23 elrab zxB|OxNzBOzN
25 fveq2 x=y+GzOx=Oy+Gz
26 25 breq1d x=y+GzOxNOy+GzN
27 8 adantr GAbelNyBOyNGGrp
28 27 adantr GAbelNyBOyNzBOzNGGrp
29 simprl GAbelNyBOyNyB
30 29 adantr GAbelNyBOyNzBOzNyB
31 simprl GAbelNyBOyNzBOzNzB
32 eqid +G=+G
33 2 32 grpcl GGrpyBzBy+GzB
34 28 30 31 33 syl3anc GAbelNyBOyNzBOzNy+GzB
35 simplll GAbelNyBOyNzBOzNGAbel
36 simpllr GAbelNyBOyNzBOzNN
37 eqid G=G
38 2 37 32 mulgdi GAbelNyBzBNGy+Gz=NGy+GNGz
39 35 36 30 31 38 syl13anc GAbelNyBOyNzBOzNNGy+Gz=NGy+GNGz
40 simprr GAbelNyBOyNOyN
41 40 adantr GAbelNyBOyNzBOzNOyN
42 2 1 37 9 oddvds GGrpyBNOyNNGy=0G
43 28 30 36 42 syl3anc GAbelNyBOyNzBOzNOyNNGy=0G
44 41 43 mpbid GAbelNyBOyNzBOzNNGy=0G
45 simprr GAbelNyBOyNzBOzNOzN
46 2 1 37 9 oddvds GGrpzBNOzNNGz=0G
47 28 31 36 46 syl3anc GAbelNyBOyNzBOzNOzNNGz=0G
48 45 47 mpbid GAbelNyBOyNzBOzNNGz=0G
49 44 48 oveq12d GAbelNyBOyNzBOzNNGy+GNGz=0G+G0G
50 28 10 syl GAbelNyBOyNzBOzN0GB
51 2 32 9 grplid GGrp0GB0G+G0G=0G
52 28 50 51 syl2anc GAbelNyBOyNzBOzN0G+G0G=0G
53 39 49 52 3eqtrd GAbelNyBOyNzBOzNNGy+Gz=0G
54 2 1 37 9 oddvds GGrpy+GzBNOy+GzNNGy+Gz=0G
55 28 34 36 54 syl3anc GAbelNyBOyNzBOzNOy+GzNNGy+Gz=0G
56 53 55 mpbird GAbelNyBOyNzBOzNOy+GzN
57 26 34 56 elrabd GAbelNyBOyNzBOzNy+GzxB|OxN
58 24 57 sylan2b GAbelNyBOyNzxB|OxNy+GzxB|OxN
59 58 ralrimiva GAbelNyBOyNzxB|OxNy+GzxB|OxN
60 fveq2 x=invgGyOx=OinvgGy
61 60 breq1d x=invgGyOxNOinvgGyN
62 eqid invgG=invgG
63 2 62 grpinvcl GGrpyBinvgGyB
64 27 29 63 syl2anc GAbelNyBOyNinvgGyB
65 1 62 2 odinv GGrpyBOinvgGy=Oy
66 27 29 65 syl2anc GAbelNyBOyNOinvgGy=Oy
67 66 40 eqbrtrd GAbelNyBOyNOinvgGyN
68 61 64 67 elrabd GAbelNyBOyNinvgGyxB|OxN
69 59 68 jca GAbelNyBOyNzxB|OxNy+GzxB|OxNinvgGyxB|OxN
70 21 69 sylan2b GAbelNyxB|OxNzxB|OxNy+GzxB|OxNinvgGyxB|OxN
71 70 ralrimiva GAbelNyxB|OxNzxB|OxNy+GzxB|OxNinvgGyxB|OxN
72 2 32 62 issubg2 GGrpxB|OxNSubGrpGxB|OxNBxB|OxNyxB|OxNzxB|OxNy+GzxB|OxNinvgGyxB|OxN
73 8 72 syl GAbelNxB|OxNSubGrpGxB|OxNBxB|OxNyxB|OxNzxB|OxNy+GzxB|OxNinvgGyxB|OxN
74 4 18 71 73 mpbir3and GAbelNxB|OxNSubGrpG