Step |
Hyp |
Ref |
Expression |
1 |
|
smndex1ibas.m |
|- M = ( EndoFMnd ` NN0 ) |
2 |
|
smndex1ibas.n |
|- N e. NN |
3 |
|
smndex1ibas.i |
|- I = ( x e. NN0 |-> ( x mod N ) ) |
4 |
|
smndex1ibas.g |
|- G = ( n e. ( 0 ..^ N ) |-> ( x e. NN0 |-> n ) ) |
5 |
|
smndex1mgm.b |
|- B = ( { I } u. U_ n e. ( 0 ..^ N ) { ( G ` n ) } ) |
6 |
|
smndex1mgm.s |
|- S = ( M |`s B ) |
7 |
1 2 3 4 5
|
smndex1basss |
|- B C_ ( Base ` M ) |
8 |
|
ssel |
|- ( B C_ ( Base ` M ) -> ( a e. B -> a e. ( Base ` M ) ) ) |
9 |
|
ssel |
|- ( B C_ ( Base ` M ) -> ( b e. B -> b e. ( Base ` M ) ) ) |
10 |
8 9
|
anim12d |
|- ( B C_ ( Base ` M ) -> ( ( a e. B /\ b e. B ) -> ( a e. ( Base ` M ) /\ b e. ( Base ` M ) ) ) ) |
11 |
7 10
|
ax-mp |
|- ( ( a e. B /\ b e. B ) -> ( a e. ( Base ` M ) /\ b e. ( Base ` M ) ) ) |
12 |
|
eqid |
|- ( Base ` M ) = ( Base ` M ) |
13 |
|
eqid |
|- ( +g ` M ) = ( +g ` M ) |
14 |
1 12 13
|
efmndov |
|- ( ( a e. ( Base ` M ) /\ b e. ( Base ` M ) ) -> ( a ( +g ` M ) b ) = ( a o. b ) ) |
15 |
11 14
|
syl |
|- ( ( a e. B /\ b e. B ) -> ( a ( +g ` M ) b ) = ( a o. b ) ) |
16 |
|
simpl |
|- ( ( a = I /\ b = I ) -> a = I ) |
17 |
|
simpr |
|- ( ( a = I /\ b = I ) -> b = I ) |
18 |
16 17
|
coeq12d |
|- ( ( a = I /\ b = I ) -> ( a o. b ) = ( I o. I ) ) |
19 |
1 2 3
|
smndex1iidm |
|- ( I o. I ) = I |
20 |
18 19
|
eqtrdi |
|- ( ( a = I /\ b = I ) -> ( a o. b ) = I ) |
21 |
20
|
orcd |
|- ( ( a = I /\ b = I ) -> ( ( a o. b ) = I \/ E. k e. ( 0 ..^ N ) ( a o. b ) = ( G ` k ) ) ) |
22 |
21
|
ex |
|- ( a = I -> ( b = I -> ( ( a o. b ) = I \/ E. k e. ( 0 ..^ N ) ( a o. b ) = ( G ` k ) ) ) ) |
23 |
|
simpll |
|- ( ( ( a = I /\ k e. ( 0 ..^ N ) ) /\ b = ( G ` k ) ) -> a = I ) |
24 |
|
simpr |
|- ( ( ( a = I /\ k e. ( 0 ..^ N ) ) /\ b = ( G ` k ) ) -> b = ( G ` k ) ) |
25 |
23 24
|
coeq12d |
|- ( ( ( a = I /\ k e. ( 0 ..^ N ) ) /\ b = ( G ` k ) ) -> ( a o. b ) = ( I o. ( G ` k ) ) ) |
26 |
1 2 3 4
|
smndex1igid |
|- ( k e. ( 0 ..^ N ) -> ( I o. ( G ` k ) ) = ( G ` k ) ) |
27 |
26
|
ad2antlr |
|- ( ( ( a = I /\ k e. ( 0 ..^ N ) ) /\ b = ( G ` k ) ) -> ( I o. ( G ` k ) ) = ( G ` k ) ) |
28 |
25 27
|
eqtrd |
|- ( ( ( a = I /\ k e. ( 0 ..^ N ) ) /\ b = ( G ` k ) ) -> ( a o. b ) = ( G ` k ) ) |
29 |
28
|
ex |
|- ( ( a = I /\ k e. ( 0 ..^ N ) ) -> ( b = ( G ` k ) -> ( a o. b ) = ( G ` k ) ) ) |
30 |
29
|
reximdva |
|- ( a = I -> ( E. k e. ( 0 ..^ N ) b = ( G ` k ) -> E. k e. ( 0 ..^ N ) ( a o. b ) = ( G ` k ) ) ) |
31 |
30
|
imp |
|- ( ( a = I /\ E. k e. ( 0 ..^ N ) b = ( G ` k ) ) -> E. k e. ( 0 ..^ N ) ( a o. b ) = ( G ` k ) ) |
32 |
31
|
olcd |
|- ( ( a = I /\ E. k e. ( 0 ..^ N ) b = ( G ` k ) ) -> ( ( a o. b ) = I \/ E. k e. ( 0 ..^ N ) ( a o. b ) = ( G ` k ) ) ) |
33 |
32
|
ex |
|- ( a = I -> ( E. k e. ( 0 ..^ N ) b = ( G ` k ) -> ( ( a o. b ) = I \/ E. k e. ( 0 ..^ N ) ( a o. b ) = ( G ` k ) ) ) ) |
34 |
22 33
|
jaod |
|- ( a = I -> ( ( b = I \/ E. k e. ( 0 ..^ N ) b = ( G ` k ) ) -> ( ( a o. b ) = I \/ E. k e. ( 0 ..^ N ) ( a o. b ) = ( G ` k ) ) ) ) |
35 |
|
simpr |
|- ( ( ( b = I /\ k e. ( 0 ..^ N ) ) /\ a = ( G ` k ) ) -> a = ( G ` k ) ) |
36 |
|
simpll |
|- ( ( ( b = I /\ k e. ( 0 ..^ N ) ) /\ a = ( G ` k ) ) -> b = I ) |
37 |
35 36
|
coeq12d |
|- ( ( ( b = I /\ k e. ( 0 ..^ N ) ) /\ a = ( G ` k ) ) -> ( a o. b ) = ( ( G ` k ) o. I ) ) |
38 |
1 2 3
|
smndex1ibas |
|- I e. ( Base ` M ) |
39 |
1 2 3 4
|
smndex1gid |
|- ( ( I e. ( Base ` M ) /\ k e. ( 0 ..^ N ) ) -> ( ( G ` k ) o. I ) = ( G ` k ) ) |
40 |
38 39
|
mpan |
|- ( k e. ( 0 ..^ N ) -> ( ( G ` k ) o. I ) = ( G ` k ) ) |
41 |
40
|
ad2antlr |
|- ( ( ( b = I /\ k e. ( 0 ..^ N ) ) /\ a = ( G ` k ) ) -> ( ( G ` k ) o. I ) = ( G ` k ) ) |
42 |
37 41
|
eqtrd |
|- ( ( ( b = I /\ k e. ( 0 ..^ N ) ) /\ a = ( G ` k ) ) -> ( a o. b ) = ( G ` k ) ) |
43 |
42
|
ex |
|- ( ( b = I /\ k e. ( 0 ..^ N ) ) -> ( a = ( G ` k ) -> ( a o. b ) = ( G ` k ) ) ) |
44 |
43
|
reximdva |
|- ( b = I -> ( E. k e. ( 0 ..^ N ) a = ( G ` k ) -> E. k e. ( 0 ..^ N ) ( a o. b ) = ( G ` k ) ) ) |
45 |
44
|
imp |
|- ( ( b = I /\ E. k e. ( 0 ..^ N ) a = ( G ` k ) ) -> E. k e. ( 0 ..^ N ) ( a o. b ) = ( G ` k ) ) |
46 |
45
|
olcd |
|- ( ( b = I /\ E. k e. ( 0 ..^ N ) a = ( G ` k ) ) -> ( ( a o. b ) = I \/ E. k e. ( 0 ..^ N ) ( a o. b ) = ( G ` k ) ) ) |
47 |
46
|
expcom |
|- ( E. k e. ( 0 ..^ N ) a = ( G ` k ) -> ( b = I -> ( ( a o. b ) = I \/ E. k e. ( 0 ..^ N ) ( a o. b ) = ( G ` k ) ) ) ) |
48 |
|
fveq2 |
|- ( k = m -> ( G ` k ) = ( G ` m ) ) |
49 |
48
|
eqeq2d |
|- ( k = m -> ( b = ( G ` k ) <-> b = ( G ` m ) ) ) |
50 |
49
|
cbvrexvw |
|- ( E. k e. ( 0 ..^ N ) b = ( G ` k ) <-> E. m e. ( 0 ..^ N ) b = ( G ` m ) ) |
51 |
|
simpr |
|- ( ( ( ( m e. ( 0 ..^ N ) /\ b = ( G ` m ) ) /\ k e. ( 0 ..^ N ) ) /\ a = ( G ` k ) ) -> a = ( G ` k ) ) |
52 |
|
simpllr |
|- ( ( ( ( m e. ( 0 ..^ N ) /\ b = ( G ` m ) ) /\ k e. ( 0 ..^ N ) ) /\ a = ( G ` k ) ) -> b = ( G ` m ) ) |
53 |
51 52
|
coeq12d |
|- ( ( ( ( m e. ( 0 ..^ N ) /\ b = ( G ` m ) ) /\ k e. ( 0 ..^ N ) ) /\ a = ( G ` k ) ) -> ( a o. b ) = ( ( G ` k ) o. ( G ` m ) ) ) |
54 |
1 2 3 4
|
smndex1gbas |
|- ( m e. ( 0 ..^ N ) -> ( G ` m ) e. ( Base ` M ) ) |
55 |
1 2 3 4
|
smndex1gid |
|- ( ( ( G ` m ) e. ( Base ` M ) /\ k e. ( 0 ..^ N ) ) -> ( ( G ` k ) o. ( G ` m ) ) = ( G ` k ) ) |
56 |
54 55
|
sylan |
|- ( ( m e. ( 0 ..^ N ) /\ k e. ( 0 ..^ N ) ) -> ( ( G ` k ) o. ( G ` m ) ) = ( G ` k ) ) |
57 |
56
|
ad4ant13 |
|- ( ( ( ( m e. ( 0 ..^ N ) /\ b = ( G ` m ) ) /\ k e. ( 0 ..^ N ) ) /\ a = ( G ` k ) ) -> ( ( G ` k ) o. ( G ` m ) ) = ( G ` k ) ) |
58 |
53 57
|
eqtrd |
|- ( ( ( ( m e. ( 0 ..^ N ) /\ b = ( G ` m ) ) /\ k e. ( 0 ..^ N ) ) /\ a = ( G ` k ) ) -> ( a o. b ) = ( G ` k ) ) |
59 |
58
|
ex |
|- ( ( ( m e. ( 0 ..^ N ) /\ b = ( G ` m ) ) /\ k e. ( 0 ..^ N ) ) -> ( a = ( G ` k ) -> ( a o. b ) = ( G ` k ) ) ) |
60 |
59
|
reximdva |
|- ( ( m e. ( 0 ..^ N ) /\ b = ( G ` m ) ) -> ( E. k e. ( 0 ..^ N ) a = ( G ` k ) -> E. k e. ( 0 ..^ N ) ( a o. b ) = ( G ` k ) ) ) |
61 |
60
|
rexlimiva |
|- ( E. m e. ( 0 ..^ N ) b = ( G ` m ) -> ( E. k e. ( 0 ..^ N ) a = ( G ` k ) -> E. k e. ( 0 ..^ N ) ( a o. b ) = ( G ` k ) ) ) |
62 |
61
|
imp |
|- ( ( E. m e. ( 0 ..^ N ) b = ( G ` m ) /\ E. k e. ( 0 ..^ N ) a = ( G ` k ) ) -> E. k e. ( 0 ..^ N ) ( a o. b ) = ( G ` k ) ) |
63 |
62
|
olcd |
|- ( ( E. m e. ( 0 ..^ N ) b = ( G ` m ) /\ E. k e. ( 0 ..^ N ) a = ( G ` k ) ) -> ( ( a o. b ) = I \/ E. k e. ( 0 ..^ N ) ( a o. b ) = ( G ` k ) ) ) |
64 |
63
|
expcom |
|- ( E. k e. ( 0 ..^ N ) a = ( G ` k ) -> ( E. m e. ( 0 ..^ N ) b = ( G ` m ) -> ( ( a o. b ) = I \/ E. k e. ( 0 ..^ N ) ( a o. b ) = ( G ` k ) ) ) ) |
65 |
50 64
|
syl5bi |
|- ( E. k e. ( 0 ..^ N ) a = ( G ` k ) -> ( E. k e. ( 0 ..^ N ) b = ( G ` k ) -> ( ( a o. b ) = I \/ E. k e. ( 0 ..^ N ) ( a o. b ) = ( G ` k ) ) ) ) |
66 |
47 65
|
jaod |
|- ( E. k e. ( 0 ..^ N ) a = ( G ` k ) -> ( ( b = I \/ E. k e. ( 0 ..^ N ) b = ( G ` k ) ) -> ( ( a o. b ) = I \/ E. k e. ( 0 ..^ N ) ( a o. b ) = ( G ` k ) ) ) ) |
67 |
34 66
|
jaoi |
|- ( ( a = I \/ E. k e. ( 0 ..^ N ) a = ( G ` k ) ) -> ( ( b = I \/ E. k e. ( 0 ..^ N ) b = ( G ` k ) ) -> ( ( a o. b ) = I \/ E. k e. ( 0 ..^ N ) ( a o. b ) = ( G ` k ) ) ) ) |
68 |
67
|
imp |
|- ( ( ( a = I \/ E. k e. ( 0 ..^ N ) a = ( G ` k ) ) /\ ( b = I \/ E. k e. ( 0 ..^ N ) b = ( G ` k ) ) ) -> ( ( a o. b ) = I \/ E. k e. ( 0 ..^ N ) ( a o. b ) = ( G ` k ) ) ) |
69 |
5
|
eleq2i |
|- ( a e. B <-> a e. ( { I } u. U_ n e. ( 0 ..^ N ) { ( G ` n ) } ) ) |
70 |
|
fveq2 |
|- ( n = k -> ( G ` n ) = ( G ` k ) ) |
71 |
70
|
sneqd |
|- ( n = k -> { ( G ` n ) } = { ( G ` k ) } ) |
72 |
71
|
cbviunv |
|- U_ n e. ( 0 ..^ N ) { ( G ` n ) } = U_ k e. ( 0 ..^ N ) { ( G ` k ) } |
73 |
72
|
uneq2i |
|- ( { I } u. U_ n e. ( 0 ..^ N ) { ( G ` n ) } ) = ( { I } u. U_ k e. ( 0 ..^ N ) { ( G ` k ) } ) |
74 |
73
|
eleq2i |
|- ( a e. ( { I } u. U_ n e. ( 0 ..^ N ) { ( G ` n ) } ) <-> a e. ( { I } u. U_ k e. ( 0 ..^ N ) { ( G ` k ) } ) ) |
75 |
69 74
|
bitri |
|- ( a e. B <-> a e. ( { I } u. U_ k e. ( 0 ..^ N ) { ( G ` k ) } ) ) |
76 |
|
elun |
|- ( a e. ( { I } u. U_ k e. ( 0 ..^ N ) { ( G ` k ) } ) <-> ( a e. { I } \/ a e. U_ k e. ( 0 ..^ N ) { ( G ` k ) } ) ) |
77 |
|
velsn |
|- ( a e. { I } <-> a = I ) |
78 |
|
eliun |
|- ( a e. U_ k e. ( 0 ..^ N ) { ( G ` k ) } <-> E. k e. ( 0 ..^ N ) a e. { ( G ` k ) } ) |
79 |
|
velsn |
|- ( a e. { ( G ` k ) } <-> a = ( G ` k ) ) |
80 |
79
|
rexbii |
|- ( E. k e. ( 0 ..^ N ) a e. { ( G ` k ) } <-> E. k e. ( 0 ..^ N ) a = ( G ` k ) ) |
81 |
78 80
|
bitri |
|- ( a e. U_ k e. ( 0 ..^ N ) { ( G ` k ) } <-> E. k e. ( 0 ..^ N ) a = ( G ` k ) ) |
82 |
77 81
|
orbi12i |
|- ( ( a e. { I } \/ a e. U_ k e. ( 0 ..^ N ) { ( G ` k ) } ) <-> ( a = I \/ E. k e. ( 0 ..^ N ) a = ( G ` k ) ) ) |
83 |
75 76 82
|
3bitri |
|- ( a e. B <-> ( a = I \/ E. k e. ( 0 ..^ N ) a = ( G ` k ) ) ) |
84 |
5
|
eleq2i |
|- ( b e. B <-> b e. ( { I } u. U_ n e. ( 0 ..^ N ) { ( G ` n ) } ) ) |
85 |
73
|
eleq2i |
|- ( b e. ( { I } u. U_ n e. ( 0 ..^ N ) { ( G ` n ) } ) <-> b e. ( { I } u. U_ k e. ( 0 ..^ N ) { ( G ` k ) } ) ) |
86 |
84 85
|
bitri |
|- ( b e. B <-> b e. ( { I } u. U_ k e. ( 0 ..^ N ) { ( G ` k ) } ) ) |
87 |
|
elun |
|- ( b e. ( { I } u. U_ k e. ( 0 ..^ N ) { ( G ` k ) } ) <-> ( b e. { I } \/ b e. U_ k e. ( 0 ..^ N ) { ( G ` k ) } ) ) |
88 |
|
velsn |
|- ( b e. { I } <-> b = I ) |
89 |
|
eliun |
|- ( b e. U_ k e. ( 0 ..^ N ) { ( G ` k ) } <-> E. k e. ( 0 ..^ N ) b e. { ( G ` k ) } ) |
90 |
|
velsn |
|- ( b e. { ( G ` k ) } <-> b = ( G ` k ) ) |
91 |
90
|
rexbii |
|- ( E. k e. ( 0 ..^ N ) b e. { ( G ` k ) } <-> E. k e. ( 0 ..^ N ) b = ( G ` k ) ) |
92 |
89 91
|
bitri |
|- ( b e. U_ k e. ( 0 ..^ N ) { ( G ` k ) } <-> E. k e. ( 0 ..^ N ) b = ( G ` k ) ) |
93 |
88 92
|
orbi12i |
|- ( ( b e. { I } \/ b e. U_ k e. ( 0 ..^ N ) { ( G ` k ) } ) <-> ( b = I \/ E. k e. ( 0 ..^ N ) b = ( G ` k ) ) ) |
94 |
86 87 93
|
3bitri |
|- ( b e. B <-> ( b = I \/ E. k e. ( 0 ..^ N ) b = ( G ` k ) ) ) |
95 |
83 94
|
anbi12i |
|- ( ( a e. B /\ b e. B ) <-> ( ( a = I \/ E. k e. ( 0 ..^ N ) a = ( G ` k ) ) /\ ( b = I \/ E. k e. ( 0 ..^ N ) b = ( G ` k ) ) ) ) |
96 |
5
|
eleq2i |
|- ( ( a o. b ) e. B <-> ( a o. b ) e. ( { I } u. U_ n e. ( 0 ..^ N ) { ( G ` n ) } ) ) |
97 |
73
|
eleq2i |
|- ( ( a o. b ) e. ( { I } u. U_ n e. ( 0 ..^ N ) { ( G ` n ) } ) <-> ( a o. b ) e. ( { I } u. U_ k e. ( 0 ..^ N ) { ( G ` k ) } ) ) |
98 |
96 97
|
bitri |
|- ( ( a o. b ) e. B <-> ( a o. b ) e. ( { I } u. U_ k e. ( 0 ..^ N ) { ( G ` k ) } ) ) |
99 |
|
elun |
|- ( ( a o. b ) e. ( { I } u. U_ k e. ( 0 ..^ N ) { ( G ` k ) } ) <-> ( ( a o. b ) e. { I } \/ ( a o. b ) e. U_ k e. ( 0 ..^ N ) { ( G ` k ) } ) ) |
100 |
|
vex |
|- a e. _V |
101 |
|
vex |
|- b e. _V |
102 |
100 101
|
coex |
|- ( a o. b ) e. _V |
103 |
102
|
elsn |
|- ( ( a o. b ) e. { I } <-> ( a o. b ) = I ) |
104 |
|
eliun |
|- ( ( a o. b ) e. U_ k e. ( 0 ..^ N ) { ( G ` k ) } <-> E. k e. ( 0 ..^ N ) ( a o. b ) e. { ( G ` k ) } ) |
105 |
102
|
elsn |
|- ( ( a o. b ) e. { ( G ` k ) } <-> ( a o. b ) = ( G ` k ) ) |
106 |
105
|
rexbii |
|- ( E. k e. ( 0 ..^ N ) ( a o. b ) e. { ( G ` k ) } <-> E. k e. ( 0 ..^ N ) ( a o. b ) = ( G ` k ) ) |
107 |
104 106
|
bitri |
|- ( ( a o. b ) e. U_ k e. ( 0 ..^ N ) { ( G ` k ) } <-> E. k e. ( 0 ..^ N ) ( a o. b ) = ( G ` k ) ) |
108 |
103 107
|
orbi12i |
|- ( ( ( a o. b ) e. { I } \/ ( a o. b ) e. U_ k e. ( 0 ..^ N ) { ( G ` k ) } ) <-> ( ( a o. b ) = I \/ E. k e. ( 0 ..^ N ) ( a o. b ) = ( G ` k ) ) ) |
109 |
98 99 108
|
3bitri |
|- ( ( a o. b ) e. B <-> ( ( a o. b ) = I \/ E. k e. ( 0 ..^ N ) ( a o. b ) = ( G ` k ) ) ) |
110 |
68 95 109
|
3imtr4i |
|- ( ( a e. B /\ b e. B ) -> ( a o. b ) e. B ) |
111 |
15 110
|
eqeltrd |
|- ( ( a e. B /\ b e. B ) -> ( a ( +g ` M ) b ) e. B ) |
112 |
111
|
rgen2 |
|- A. a e. B A. b e. B ( a ( +g ` M ) b ) e. B |
113 |
6
|
ovexi |
|- S e. _V |
114 |
1 2 3 4 5 6
|
smndex1bas |
|- ( Base ` S ) = B |
115 |
114
|
eqcomi |
|- B = ( Base ` S ) |
116 |
115
|
fvexi |
|- B e. _V |
117 |
6 13
|
ressplusg |
|- ( B e. _V -> ( +g ` M ) = ( +g ` S ) ) |
118 |
116 117
|
ax-mp |
|- ( +g ` M ) = ( +g ` S ) |
119 |
115 118
|
ismgm |
|- ( S e. _V -> ( S e. Mgm <-> A. a e. B A. b e. B ( a ( +g ` M ) b ) e. B ) ) |
120 |
113 119
|
ax-mp |
|- ( S e. Mgm <-> A. a e. B A. b e. B ( a ( +g ` M ) b ) e. B ) |
121 |
112 120
|
mpbir |
|- S e. Mgm |