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

Theorem ismndd 14647
Description: Deduce a monoid from its properties. (Contributed by Mario Carneiro, 6-Jan-2015.)
Hypotheses
Ref Expression
ismndd.b  |-  ( ph  ->  B  =  ( Base `  G ) )
ismndd.p  |-  ( ph  ->  .+  =  ( +g  `  G ) )
ismndd.c  |-  ( (
ph  /\  x  e.  B  /\  y  e.  B
)  ->  ( x  .+  y )  e.  B
)
ismndd.a  |-  ( (
ph  /\  ( x  e.  B  /\  y  e.  B  /\  z  e.  B ) )  -> 
( ( x  .+  y )  .+  z
)  =  ( x 
.+  ( y  .+  z ) ) )
ismndd.z  |-  ( ph  ->  .0.  e.  B )
ismndd.i  |-  ( (
ph  /\  x  e.  B )  ->  (  .0.  .+  x )  =  x )
ismndd.j  |-  ( (
ph  /\  x  e.  B )  ->  (
x  .+  .0.  )  =  x )
Assertion
Ref Expression
ismndd  |-  ( ph  ->  G  e.  Mnd )
Distinct variable groups:    x, y,
z, B    x, G, y, z    ph, x, y, z    x,  .0.
Allowed substitution hints:    .+ ( x, y, z)    .0. ( y, z)

Proof of Theorem ismndd
Dummy variable  u is distinct from all other variables.
StepHypRef Expression
1 ismndd.c . . . . . 6  |-  ( (
ph  /\  x  e.  B  /\  y  e.  B
)  ->  ( x  .+  y )  e.  B
)
213adant3r3 1164 . . . . 5  |-  ( (
ph  /\  ( x  e.  B  /\  y  e.  B  /\  z  e.  B ) )  -> 
( x  .+  y
)  e.  B )
3 ismndd.a . . . . 5  |-  ( (
ph  /\  ( x  e.  B  /\  y  e.  B  /\  z  e.  B ) )  -> 
( ( x  .+  y )  .+  z
)  =  ( x 
.+  ( y  .+  z ) ) )
42, 3jca 519 . . . 4  |-  ( (
ph  /\  ( x  e.  B  /\  y  e.  B  /\  z  e.  B ) )  -> 
( ( x  .+  y )  e.  B  /\  ( ( x  .+  y )  .+  z
)  =  ( x 
.+  ( y  .+  z ) ) ) )
54ralrimivvva 2743 . . 3  |-  ( ph  ->  A. x  e.  B  A. y  e.  B  A. z  e.  B  ( ( x  .+  y )  e.  B  /\  ( ( x  .+  y )  .+  z
)  =  ( x 
.+  ( y  .+  z ) ) ) )
6 ismndd.b . . . 4  |-  ( ph  ->  B  =  ( Base `  G ) )
7 ismndd.p . . . . . . . . 9  |-  ( ph  ->  .+  =  ( +g  `  G ) )
87oveqd 6038 . . . . . . . 8  |-  ( ph  ->  ( x  .+  y
)  =  ( x ( +g  `  G
) y ) )
98, 6eleq12d 2456 . . . . . . 7  |-  ( ph  ->  ( ( x  .+  y )  e.  B  <->  ( x ( +g  `  G
) y )  e.  ( Base `  G
) ) )
10 eqidd 2389 . . . . . . . . 9  |-  ( ph  ->  z  =  z )
117, 8, 10oveq123d 6042 . . . . . . . 8  |-  ( ph  ->  ( ( x  .+  y )  .+  z
)  =  ( ( x ( +g  `  G
) y ) ( +g  `  G ) z ) )
12 eqidd 2389 . . . . . . . . 9  |-  ( ph  ->  x  =  x )
137oveqd 6038 . . . . . . . . 9  |-  ( ph  ->  ( y  .+  z
)  =  ( y ( +g  `  G
) z ) )
147, 12, 13oveq123d 6042 . . . . . . . 8  |-  ( ph  ->  ( x  .+  (
y  .+  z )
)  =  ( x ( +g  `  G
) ( y ( +g  `  G ) z ) ) )
1511, 14eqeq12d 2402 . . . . . . 7  |-  ( ph  ->  ( ( ( x 
.+  y )  .+  z )  =  ( x  .+  ( y 
.+  z ) )  <-> 
( ( x ( +g  `  G ) y ) ( +g  `  G ) z )  =  ( x ( +g  `  G ) ( y ( +g  `  G ) z ) ) ) )
169, 15anbi12d 692 . . . . . 6  |-  ( ph  ->  ( ( ( x 
.+  y )  e.  B  /\  ( ( x  .+  y ) 
.+  z )  =  ( x  .+  (
y  .+  z )
) )  <->  ( (
x ( +g  `  G
) y )  e.  ( Base `  G
)  /\  ( (
x ( +g  `  G
) y ) ( +g  `  G ) z )  =  ( x ( +g  `  G
) ( y ( +g  `  G ) z ) ) ) ) )
176, 16raleqbidv 2860 . . . . 5  |-  ( ph  ->  ( A. z  e.  B  ( ( x 
.+  y )  e.  B  /\  ( ( x  .+  y ) 
.+  z )  =  ( x  .+  (
y  .+  z )
) )  <->  A. z  e.  ( Base `  G
) ( ( x ( +g  `  G
) y )  e.  ( Base `  G
)  /\  ( (
x ( +g  `  G
) y ) ( +g  `  G ) z )  =  ( x ( +g  `  G
) ( y ( +g  `  G ) z ) ) ) ) )
186, 17raleqbidv 2860 . . . 4  |-  ( ph  ->  ( A. y  e.  B  A. z  e.  B  ( ( x 
.+  y )  e.  B  /\  ( ( x  .+  y ) 
.+  z )  =  ( x  .+  (
y  .+  z )
) )  <->  A. y  e.  ( Base `  G
) A. z  e.  ( Base `  G
) ( ( x ( +g  `  G
) y )  e.  ( Base `  G
)  /\  ( (
x ( +g  `  G
) y ) ( +g  `  G ) z )  =  ( x ( +g  `  G
) ( y ( +g  `  G ) z ) ) ) ) )
196, 18raleqbidv 2860 . . 3  |-  ( ph  ->  ( A. x  e.  B  A. y  e.  B  A. z  e.  B  ( ( x 
.+  y )  e.  B  /\  ( ( x  .+  y ) 
.+  z )  =  ( x  .+  (
y  .+  z )
) )  <->  A. x  e.  ( Base `  G
) A. y  e.  ( Base `  G
) A. z  e.  ( Base `  G
) ( ( x ( +g  `  G
) y )  e.  ( Base `  G
)  /\  ( (
x ( +g  `  G
) y ) ( +g  `  G ) z )  =  ( x ( +g  `  G
) ( y ( +g  `  G ) z ) ) ) ) )
205, 19mpbid 202 . 2  |-  ( ph  ->  A. x  e.  (
Base `  G ) A. y  e.  ( Base `  G ) A. z  e.  ( Base `  G ) ( ( x ( +g  `  G
) y )  e.  ( Base `  G
)  /\  ( (
x ( +g  `  G
) y ) ( +g  `  G ) z )  =  ( x ( +g  `  G
) ( y ( +g  `  G ) z ) ) ) )
21 ismndd.z . . . 4  |-  ( ph  ->  .0.  e.  B )
2221, 6eleqtrd 2464 . . 3  |-  ( ph  ->  .0.  e.  ( Base `  G ) )
236eleq2d 2455 . . . . . 6  |-  ( ph  ->  ( x  e.  B  <->  x  e.  ( Base `  G
) ) )
2423biimpar 472 . . . . 5  |-  ( (
ph  /\  x  e.  ( Base `  G )
)  ->  x  e.  B )
257adantr 452 . . . . . . . 8  |-  ( (
ph  /\  x  e.  B )  ->  .+  =  ( +g  `  G ) )
2625oveqd 6038 . . . . . . 7  |-  ( (
ph  /\  x  e.  B )  ->  (  .0.  .+  x )  =  (  .0.  ( +g  `  G ) x ) )
27 ismndd.i . . . . . . 7  |-  ( (
ph  /\  x  e.  B )  ->  (  .0.  .+  x )  =  x )
2826, 27eqtr3d 2422 . . . . . 6  |-  ( (
ph  /\  x  e.  B )  ->  (  .0.  ( +g  `  G
) x )  =  x )
2925oveqd 6038 . . . . . . 7  |-  ( (
ph  /\  x  e.  B )  ->  (
x  .+  .0.  )  =  ( x ( +g  `  G )  .0.  ) )
30 ismndd.j . . . . . . 7  |-  ( (
ph  /\  x  e.  B )  ->  (
x  .+  .0.  )  =  x )
3129, 30eqtr3d 2422 . . . . . 6  |-  ( (
ph  /\  x  e.  B )  ->  (
x ( +g  `  G
)  .0.  )  =  x )
3228, 31jca 519 . . . . 5  |-  ( (
ph  /\  x  e.  B )  ->  (
(  .0.  ( +g  `  G ) x )  =  x  /\  (
x ( +g  `  G
)  .0.  )  =  x ) )
3324, 32syldan 457 . . . 4  |-  ( (
ph  /\  x  e.  ( Base `  G )
)  ->  ( (  .0.  ( +g  `  G
) x )  =  x  /\  ( x ( +g  `  G
)  .0.  )  =  x ) )
3433ralrimiva 2733 . . 3  |-  ( ph  ->  A. x  e.  (
Base `  G )
( (  .0.  ( +g  `  G ) x )  =  x  /\  ( x ( +g  `  G )  .0.  )  =  x ) )
35 oveq1 6028 . . . . . . 7  |-  ( u  =  .0.  ->  (
u ( +g  `  G
) x )  =  (  .0.  ( +g  `  G ) x ) )
3635eqeq1d 2396 . . . . . 6  |-  ( u  =  .0.  ->  (
( u ( +g  `  G ) x )  =  x  <->  (  .0.  ( +g  `  G ) x )  =  x ) )
37 oveq2 6029 . . . . . . 7  |-  ( u  =  .0.  ->  (
x ( +g  `  G
) u )  =  ( x ( +g  `  G )  .0.  )
)
3837eqeq1d 2396 . . . . . 6  |-  ( u  =  .0.  ->  (
( x ( +g  `  G ) u )  =  x  <->  ( x
( +g  `  G )  .0.  )  =  x ) )
3936, 38anbi12d 692 . . . . 5  |-  ( u  =  .0.  ->  (
( ( u ( +g  `  G ) x )  =  x  /\  ( x ( +g  `  G ) u )  =  x )  <->  ( (  .0.  ( +g  `  G
) x )  =  x  /\  ( x ( +g  `  G
)  .0.  )  =  x ) ) )
4039ralbidv 2670 . . . 4  |-  ( u  =  .0.  ->  ( A. x  e.  ( Base `  G ) ( ( u ( +g  `  G ) x )  =  x  /\  (
x ( +g  `  G
) u )  =  x )  <->  A. x  e.  ( Base `  G
) ( (  .0.  ( +g  `  G
) x )  =  x  /\  ( x ( +g  `  G
)  .0.  )  =  x ) ) )
4140rspcev 2996 . . 3  |-  ( (  .0.  e.  ( Base `  G )  /\  A. x  e.  ( Base `  G ) ( (  .0.  ( +g  `  G
) x )  =  x  /\  ( x ( +g  `  G
)  .0.  )  =  x ) )  ->  E. u  e.  ( Base `  G ) A. x  e.  ( Base `  G ) ( ( u ( +g  `  G
) x )  =  x  /\  ( x ( +g  `  G
) u )  =  x ) )
4222, 34, 41syl2anc 643 . 2  |-  ( ph  ->  E. u  e.  (
Base `  G ) A. x  e.  ( Base `  G ) ( ( u ( +g  `  G ) x )  =  x  /\  (
x ( +g  `  G
) u )  =  x ) )
43 eqid 2388 . . 3  |-  ( Base `  G )  =  (
Base `  G )
44 eqid 2388 . . 3  |-  ( +g  `  G )  =  ( +g  `  G )
4543, 44ismnd 14620 . 2  |-  ( G  e.  Mnd  <->  ( A. x  e.  ( Base `  G ) A. y  e.  ( Base `  G
) A. z  e.  ( Base `  G
) ( ( x ( +g  `  G
) y )  e.  ( Base `  G
)  /\  ( (
x ( +g  `  G
) y ) ( +g  `  G ) z )  =  ( x ( +g  `  G
) ( y ( +g  `  G ) z ) ) )  /\  E. u  e.  ( Base `  G
) A. x  e.  ( Base `  G
) ( ( u ( +g  `  G
) x )  =  x  /\  ( x ( +g  `  G
) u )  =  x ) ) )
4620, 42, 45sylanbrc 646 1  |-  ( ph  ->  G  e.  Mnd )
Colors of variables: wff set class
Syntax hints:    -> wi 4    /\ wa 359    /\ w3a 936    = wceq 1649    e. wcel 1717   A.wral 2650   E.wrex 2651   ` cfv 5395  (class class class)co 6021   Basecbs 13397   +g cplusg 13457   Mndcmnd 14612
This theorem is referenced by:  issubmnd  14652  prdsmndd  14656  imasmnd2  14660  frmdmnd  14732  isgrpde  14757  oppgmnd  15078  isrngd  15626  iscrngd  15627  xrsmcmn  16648  xrs1mnd  16660
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1552  ax-5 1563  ax-17 1623  ax-9 1661  ax-8 1682  ax-13 1719  ax-14 1721  ax-6 1736  ax-7 1741  ax-11 1753  ax-12 1939  ax-ext 2369  ax-nul 4280  ax-pow 4319
This theorem depends on definitions:  df-bi 178  df-or 360  df-an 361  df-3an 938  df-tru 1325  df-ex 1548  df-nf 1551  df-sb 1656  df-eu 2243  df-mo 2244  df-clab 2375  df-cleq 2381  df-clel 2384  df-nfc 2513  df-ne 2553  df-ral 2655  df-rex 2656  df-rab 2659  df-v 2902  df-sbc 3106  df-dif 3267  df-un 3269  df-in 3271  df-ss 3278  df-nul 3573  df-if 3684  df-sn 3764  df-pr 3765  df-op 3767  df-uni 3959  df-br 4155  df-iota 5359  df-fv 5403  df-ov 6024  df-mnd 14618
  Copyright terms: Public domain W3C validator