MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  ismnd Unicode version

Theorem ismnd 14385
Description: The predicate "is a monoid." (Contributed by Mario Carneiro, 6-Jan-2015.)
Hypotheses
Ref Expression
ismnd.b  |-  B  =  ( Base `  G
)
ismnd.p  |-  .+  =  ( +g  `  G )
Assertion
Ref Expression
ismnd  |-  ( G  e.  Mnd  <->  ( A. a  e.  B  A. b  e.  B  A. c  e.  B  (
( a  .+  b
)  e.  B  /\  ( ( a  .+  b )  .+  c
)  =  ( a 
.+  ( b  .+  c ) ) )  /\  E. e  e.  B  A. a  e.  B  ( ( e 
.+  a )  =  a  /\  ( a 
.+  e )  =  a ) ) )
Distinct variable groups:    a, b,
c, e, B    G, a, b, c, e    .+ , a,
b, c, e

Proof of Theorem ismnd
Dummy variables  g  p  v are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 df-mnd 14383 . . 3  |-  Mnd  =  { g  |  [. ( Base `  g )  /  v ]. [. ( +g  `  g )  /  p ]. ( A. a  e.  v  A. b  e.  v  A. c  e.  v  ( (
a p b )  e.  v  /\  (
( a p b ) p c )  =  ( a p ( b p c ) ) )  /\  E. e  e.  v  A. a  e.  v  (
( e p a )  =  a  /\  ( a p e )  =  a ) ) }
21eleq2i 2360 . 2  |-  ( G  e.  Mnd  <->  G  e.  { g  |  [. ( Base `  g )  / 
v ]. [. ( +g  `  g )  /  p ]. ( A. a  e.  v  A. b  e.  v  A. c  e.  v  ( ( a p b )  e.  v  /\  ( ( a p b ) p c )  =  ( a p ( b p c ) ) )  /\  E. e  e.  v  A. a  e.  v  (
( e p a )  =  a  /\  ( a p e )  =  a ) ) } )
3 rexn0 3569 . . . . 5  |-  ( E. e  e.  B  A. a  e.  B  (
( e  .+  a
)  =  a  /\  ( a  .+  e
)  =  a )  ->  B  =/=  (/) )
4 ismnd.b . . . . . . 7  |-  B  =  ( Base `  G
)
5 fvprc 5535 . . . . . . 7  |-  ( -.  G  e.  _V  ->  (
Base `  G )  =  (/) )
64, 5syl5eq 2340 . . . . . 6  |-  ( -.  G  e.  _V  ->  B  =  (/) )
76necon1ai 2501 . . . . 5  |-  ( B  =/=  (/)  ->  G  e.  _V )
83, 7syl 15 . . . 4  |-  ( E. e  e.  B  A. a  e.  B  (
( e  .+  a
)  =  a  /\  ( a  .+  e
)  =  a )  ->  G  e.  _V )
98adantl 452 . . 3  |-  ( ( A. a  e.  B  A. b  e.  B  A. c  e.  B  ( ( a  .+  b )  e.  B  /\  ( ( a  .+  b )  .+  c
)  =  ( a 
.+  ( b  .+  c ) ) )  /\  E. e  e.  B  A. a  e.  B  ( ( e 
.+  a )  =  a  /\  ( a 
.+  e )  =  a ) )  ->  G  e.  _V )
10 fvex 5555 . . . . 5  |-  ( Base `  g )  e.  _V
1110a1i 10 . . . 4  |-  ( g  =  G  ->  ( Base `  g )  e. 
_V )
12 fveq2 5541 . . . . 5  |-  ( g  =  G  ->  ( Base `  g )  =  ( Base `  G
) )
1312, 4syl6eqr 2346 . . . 4  |-  ( g  =  G  ->  ( Base `  g )  =  B )
14 fvex 5555 . . . . . 6  |-  ( +g  `  g )  e.  _V
1514a1i 10 . . . . 5  |-  ( ( g  =  G  /\  v  =  B )  ->  ( +g  `  g
)  e.  _V )
16 simpl 443 . . . . . . 7  |-  ( ( g  =  G  /\  v  =  B )  ->  g  =  G )
1716fveq2d 5545 . . . . . 6  |-  ( ( g  =  G  /\  v  =  B )  ->  ( +g  `  g
)  =  ( +g  `  G ) )
18 ismnd.p . . . . . 6  |-  .+  =  ( +g  `  G )
1917, 18syl6eqr 2346 . . . . 5  |-  ( ( g  =  G  /\  v  =  B )  ->  ( +g  `  g
)  =  .+  )
20 simplr 731 . . . . . . 7  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  v  =  B )
21 simpr 447 . . . . . . . . . . . 12  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  p  =  .+  )
2221oveqd 5891 . . . . . . . . . . 11  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  (
a p b )  =  ( a  .+  b ) )
2322, 20eleq12d 2364 . . . . . . . . . 10  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  (
( a p b )  e.  v  <->  ( a  .+  b )  e.  B
) )
24 eqidd 2297 . . . . . . . . . . . 12  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  c  =  c )
2521, 22, 24oveq123d 5895 . . . . . . . . . . 11  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  (
( a p b ) p c )  =  ( ( a 
.+  b )  .+  c ) )
26 eqidd 2297 . . . . . . . . . . . 12  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  a  =  a )
2721oveqd 5891 . . . . . . . . . . . 12  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  (
b p c )  =  ( b  .+  c ) )
2821, 26, 27oveq123d 5895 . . . . . . . . . . 11  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  (
a p ( b p c ) )  =  ( a  .+  ( b  .+  c
) ) )
2925, 28eqeq12d 2310 . . . . . . . . . 10  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  (
( ( a p b ) p c )  =  ( a p ( b p c ) )  <->  ( (
a  .+  b )  .+  c )  =  ( a  .+  ( b 
.+  c ) ) ) )
3023, 29anbi12d 691 . . . . . . . . 9  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  (
( ( a p b )  e.  v  /\  ( ( a p b ) p c )  =  ( a p ( b p c ) ) )  <->  ( ( a 
.+  b )  e.  B  /\  ( ( a  .+  b ) 
.+  c )  =  ( a  .+  (
b  .+  c )
) ) ) )
3120, 30raleqbidv 2761 . . . . . . . 8  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  ( A. c  e.  v 
( ( a p b )  e.  v  /\  ( ( a p b ) p c )  =  ( a p ( b p c ) ) )  <->  A. c  e.  B  ( ( a  .+  b )  e.  B  /\  ( ( a  .+  b )  .+  c
)  =  ( a 
.+  ( b  .+  c ) ) ) ) )
3220, 31raleqbidv 2761 . . . . . . 7  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  ( A. b  e.  v  A. c  e.  v 
( ( a p b )  e.  v  /\  ( ( a p b ) p c )  =  ( a p ( b p c ) ) )  <->  A. b  e.  B  A. c  e.  B  ( ( a  .+  b )  e.  B  /\  ( ( a  .+  b )  .+  c
)  =  ( a 
.+  ( b  .+  c ) ) ) ) )
3320, 32raleqbidv 2761 . . . . . 6  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  ( A. a  e.  v  A. b  e.  v  A. c  e.  v 
( ( a p b )  e.  v  /\  ( ( a p b ) p c )  =  ( a p ( b p c ) ) )  <->  A. a  e.  B  A. b  e.  B  A. c  e.  B  ( ( a  .+  b )  e.  B  /\  ( ( a  .+  b )  .+  c
)  =  ( a 
.+  ( b  .+  c ) ) ) ) )
3421oveqd 5891 . . . . . . . . . 10  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  (
e p a )  =  ( e  .+  a ) )
3534eqeq1d 2304 . . . . . . . . 9  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  (
( e p a )  =  a  <->  ( e  .+  a )  =  a ) )
3621oveqd 5891 . . . . . . . . . 10  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  (
a p e )  =  ( a  .+  e ) )
3736eqeq1d 2304 . . . . . . . . 9  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  (
( a p e )  =  a  <->  ( a  .+  e )  =  a ) )
3835, 37anbi12d 691 . . . . . . . 8  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  (
( ( e p a )  =  a  /\  ( a p e )  =  a )  <->  ( ( e 
.+  a )  =  a  /\  ( a 
.+  e )  =  a ) ) )
3920, 38raleqbidv 2761 . . . . . . 7  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  ( A. a  e.  v 
( ( e p a )  =  a  /\  ( a p e )  =  a )  <->  A. a  e.  B  ( ( e  .+  a )  =  a  /\  ( a  .+  e )  =  a ) ) )
4020, 39rexeqbidv 2762 . . . . . 6  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  ( E. e  e.  v  A. a  e.  v 
( ( e p a )  =  a  /\  ( a p e )  =  a )  <->  E. e  e.  B  A. a  e.  B  ( ( e  .+  a )  =  a  /\  ( a  .+  e )  =  a ) ) )
4133, 40anbi12d 691 . . . . 5  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  (
( A. a  e.  v  A. b  e.  v  A. c  e.  v  ( ( a p b )  e.  v  /\  ( ( a p b ) p c )  =  ( a p ( b p c ) ) )  /\  E. e  e.  v  A. a  e.  v  (
( e p a )  =  a  /\  ( a p e )  =  a ) )  <->  ( A. a  e.  B  A. b  e.  B  A. c  e.  B  ( (
a  .+  b )  e.  B  /\  (
( a  .+  b
)  .+  c )  =  ( a  .+  ( b  .+  c
) ) )  /\  E. e  e.  B  A. a  e.  B  (
( e  .+  a
)  =  a  /\  ( a  .+  e
)  =  a ) ) ) )
4215, 19, 41sbcied2 3041 . . . 4  |-  ( ( g  =  G  /\  v  =  B )  ->  ( [. ( +g  `  g )  /  p ]. ( A. a  e.  v  A. b  e.  v  A. c  e.  v  ( ( a p b )  e.  v  /\  ( ( a p b ) p c )  =  ( a p ( b p c ) ) )  /\  E. e  e.  v  A. a  e.  v  (
( e p a )  =  a  /\  ( a p e )  =  a ) )  <->  ( A. a  e.  B  A. b  e.  B  A. c  e.  B  ( (
a  .+  b )  e.  B  /\  (
( a  .+  b
)  .+  c )  =  ( a  .+  ( b  .+  c
) ) )  /\  E. e  e.  B  A. a  e.  B  (
( e  .+  a
)  =  a  /\  ( a  .+  e
)  =  a ) ) ) )
4311, 13, 42sbcied2 3041 . . 3  |-  ( g  =  G  ->  ( [. ( Base `  g
)  /  v ]. [. ( +g  `  g
)  /  p ]. ( A. a  e.  v 
A. b  e.  v 
A. c  e.  v  ( ( a p b )  e.  v  /\  ( ( a p b ) p c )  =  ( a p ( b p c ) ) )  /\  E. e  e.  v  A. a  e.  v  ( (
e p a )  =  a  /\  (
a p e )  =  a ) )  <-> 
( A. a  e.  B  A. b  e.  B  A. c  e.  B  ( ( a 
.+  b )  e.  B  /\  ( ( a  .+  b ) 
.+  c )  =  ( a  .+  (
b  .+  c )
) )  /\  E. e  e.  B  A. a  e.  B  (
( e  .+  a
)  =  a  /\  ( a  .+  e
)  =  a ) ) ) )
449, 43elab3 2934 . 2  |-  ( G  e.  { g  | 
[. ( Base `  g
)  /  v ]. [. ( +g  `  g
)  /  p ]. ( A. a  e.  v 
A. b  e.  v 
A. c  e.  v  ( ( a p b )  e.  v  /\  ( ( a p b ) p c )  =  ( a p ( b p c ) ) )  /\  E. e  e.  v  A. a  e.  v  ( (
e p a )  =  a  /\  (
a p e )  =  a ) ) }  <->  ( A. a  e.  B  A. b  e.  B  A. c  e.  B  ( (
a  .+  b )  e.  B  /\  (
( a  .+  b
)  .+  c )  =  ( a  .+  ( b  .+  c
) ) )  /\  E. e  e.  B  A. a  e.  B  (
( e  .+  a
)  =  a  /\  ( a  .+  e
)  =  a ) ) )
452, 44bitri 240 1  |-  ( G  e.  Mnd  <->  ( A. a  e.  B  A. b  e.  B  A. c  e.  B  (
( a  .+  b
)  e.  B  /\  ( ( a  .+  b )  .+  c
)  =  ( a 
.+  ( b  .+  c ) ) )  /\  E. e  e.  B  A. a  e.  B  ( ( e 
.+  a )  =  a  /\  ( a 
.+  e )  =  a ) ) )
Colors of variables: wff set class
Syntax hints:   -. wn 3    <-> wb 176    /\ wa 358    = wceq 1632    e. wcel 1696   {cab 2282    =/= wne 2459   A.wral 2556   E.wrex 2557   _Vcvv 2801   [.wsbc 3004   (/)c0 3468   ` cfv 5271  (class class class)co 5874   Basecbs 13164   +g cplusg 13224   Mndcmnd 14377
This theorem is referenced by:  mndlem1  14387  mndid  14390  ismndd  14412  mndpropd  14414
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1536  ax-5 1547  ax-17 1606  ax-9 1644  ax-8 1661  ax-13 1698  ax-14 1700  ax-6 1715  ax-7 1720  ax-11 1727  ax-12 1878  ax-ext 2277  ax-nul 4165  ax-pow 4204
This theorem depends on definitions:  df-bi 177  df-or 359  df-an 360  df-3an 936  df-tru 1310  df-ex 1532  df-nf 1535  df-sb 1639  df-eu 2160  df-mo 2161  df-clab 2283  df-cleq 2289  df-clel 2292  df-nfc 2421  df-ne 2461  df-ral 2561  df-rex 2562  df-rab 2565  df-v 2803  df-sbc 3005  df-dif 3168  df-un 3170  df-in 3172  df-ss 3179  df-nul 3469  df-if 3579  df-sn 3659  df-pr 3660  df-op 3662  df-uni 3844  df-br 4040  df-iota 5235  df-fv 5279  df-ov 5877  df-mnd 14383
  Copyright terms: Public domain W3C validator