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

Theorem ismnd 14369
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 14367 . . 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 2347 . 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 3556 . . . . 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 5519 . . . . . . 7  |-  ( -.  G  e.  _V  ->  (
Base `  G )  =  (/) )
64, 5syl5eq 2327 . . . . . 6  |-  ( -.  G  e.  _V  ->  B  =  (/) )
76necon1ai 2488 . . . . 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 5539 . . . . 5  |-  ( Base `  g )  e.  _V
1110a1i 10 . . . 4  |-  ( g  =  G  ->  ( Base `  g )  e. 
_V )
12 fveq2 5525 . . . . 5  |-  ( g  =  G  ->  ( Base `  g )  =  ( Base `  G
) )
1312, 4syl6eqr 2333 . . . 4  |-  ( g  =  G  ->  ( Base `  g )  =  B )
14 fvex 5539 . . . . . 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 5529 . . . . . 6  |-  ( ( g  =  G  /\  v  =  B )  ->  ( +g  `  g
)  =  ( +g  `  G ) )
18 ismnd.p . . . . . 6  |-  .+  =  ( +g  `  G )
1917, 18syl6eqr 2333 . . . . 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 5875 . . . . . . . . . . 11  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  (
a p b )  =  ( a  .+  b ) )
2322, 20eleq12d 2351 . . . . . . . . . 10  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  (
( a p b )  e.  v  <->  ( a  .+  b )  e.  B
) )
24 eqidd 2284 . . . . . . . . . . . 12  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  c  =  c )
2521, 22, 24oveq123d 5879 . . . . . . . . . . 11  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  (
( a p b ) p c )  =  ( ( a 
.+  b )  .+  c ) )
26 eqidd 2284 . . . . . . . . . . . 12  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  a  =  a )
2721oveqd 5875 . . . . . . . . . . . 12  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  (
b p c )  =  ( b  .+  c ) )
2821, 26, 27oveq123d 5879 . . . . . . . . . . 11  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  (
a p ( b p c ) )  =  ( a  .+  ( b  .+  c
) ) )
2925, 28eqeq12d 2297 . . . . . . . . . 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 2748 . . . . . . . 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 2748 . . . . . . 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 2748 . . . . . 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 5875 . . . . . . . . . 10  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  (
e p a )  =  ( e  .+  a ) )
3534eqeq1d 2291 . . . . . . . . 9  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  (
( e p a )  =  a  <->  ( e  .+  a )  =  a ) )
3621oveqd 5875 . . . . . . . . . 10  |-  ( ( ( g  =  G  /\  v  =  B )  /\  p  = 
.+  )  ->  (
a p e )  =  ( a  .+  e ) )
3736eqeq1d 2291 . . . . . . . . 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 2748 . . . . . . 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 2749 . . . . . 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 3028 . . . 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 3028 . . 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 2921 . 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 1623    e. wcel 1684   {cab 2269    =/= wne 2446   A.wral 2543   E.wrex 2544   _Vcvv 2788   [.wsbc 2991   (/)c0 3455   ` cfv 5255  (class class class)co 5858   Basecbs 13148   +g cplusg 13208   Mndcmnd 14361
This theorem is referenced by:  mndlem1  14371  mndid  14374  ismndd  14396  mndpropd  14398
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1533  ax-5 1544  ax-17 1603  ax-9 1635  ax-8 1643  ax-13 1686  ax-14 1688  ax-6 1703  ax-7 1708  ax-11 1715  ax-12 1866  ax-ext 2264  ax-nul 4149  ax-pow 4188
This theorem depends on definitions:  df-bi 177  df-or 359  df-an 360  df-3an 936  df-tru 1310  df-ex 1529  df-nf 1532  df-sb 1630  df-eu 2147  df-mo 2148  df-clab 2270  df-cleq 2276  df-clel 2279  df-nfc 2408  df-ne 2448  df-ral 2548  df-rex 2549  df-rab 2552  df-v 2790  df-sbc 2992  df-dif 3155  df-un 3157  df-in 3159  df-ss 3166  df-nul 3456  df-if 3566  df-sn 3646  df-pr 3647  df-op 3649  df-uni 3828  df-br 4024  df-iota 5219  df-fv 5263  df-ov 5861  df-mnd 14367
  Copyright terms: Public domain W3C validator