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

Theorem ismndd 17710
Description: Deduce a monoid from its properties. (Contributed by Mario Carneiro, 6-Jan-2015.)
Hypotheses
Ref Expression
ismndd.b (𝜑𝐵 = (Base‘𝐺))
ismndd.p (𝜑+ = (+g𝐺))
ismndd.c ((𝜑𝑥𝐵𝑦𝐵) → (𝑥 + 𝑦) ∈ 𝐵)
ismndd.a ((𝜑 ∧ (𝑥𝐵𝑦𝐵𝑧𝐵)) → ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧)))
ismndd.z (𝜑0𝐵)
ismndd.i ((𝜑𝑥𝐵) → ( 0 + 𝑥) = 𝑥)
ismndd.j ((𝜑𝑥𝐵) → (𝑥 + 0 ) = 𝑥)
Assertion
Ref Expression
ismndd (𝜑𝐺 ∈ Mnd)
Distinct variable groups:   𝑥,𝑦,𝑧,𝐵   𝑥,𝐺,𝑦,𝑧   𝜑,𝑥,𝑦,𝑧   𝑥, 0
Allowed substitution hints:   + (𝑥,𝑦,𝑧)   0 (𝑦,𝑧)

Proof of Theorem ismndd
Dummy variable 𝑢 is distinct from all other variables.
StepHypRef Expression
1 ismndd.c . . . . . 6 ((𝜑𝑥𝐵𝑦𝐵) → (𝑥 + 𝑦) ∈ 𝐵)
213expb 1110 . . . . 5 ((𝜑 ∧ (𝑥𝐵𝑦𝐵)) → (𝑥 + 𝑦) ∈ 𝐵)
3 simpll 757 . . . . . . 7 (((𝜑 ∧ (𝑥𝐵𝑦𝐵)) ∧ 𝑧𝐵) → 𝜑)
4 simplrl 767 . . . . . . 7 (((𝜑 ∧ (𝑥𝐵𝑦𝐵)) ∧ 𝑧𝐵) → 𝑥𝐵)
5 simplrr 768 . . . . . . 7 (((𝜑 ∧ (𝑥𝐵𝑦𝐵)) ∧ 𝑧𝐵) → 𝑦𝐵)
6 simpr 479 . . . . . . 7 (((𝜑 ∧ (𝑥𝐵𝑦𝐵)) ∧ 𝑧𝐵) → 𝑧𝐵)
7 ismndd.a . . . . . . 7 ((𝜑 ∧ (𝑥𝐵𝑦𝐵𝑧𝐵)) → ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧)))
83, 4, 5, 6, 7syl13anc 1440 . . . . . 6 (((𝜑 ∧ (𝑥𝐵𝑦𝐵)) ∧ 𝑧𝐵) → ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧)))
98ralrimiva 3148 . . . . 5 ((𝜑 ∧ (𝑥𝐵𝑦𝐵)) → ∀𝑧𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧)))
102, 9jca 507 . . . 4 ((𝜑 ∧ (𝑥𝐵𝑦𝐵)) → ((𝑥 + 𝑦) ∈ 𝐵 ∧ ∀𝑧𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧))))
1110ralrimivva 3153 . . 3 (𝜑 → ∀𝑥𝐵𝑦𝐵 ((𝑥 + 𝑦) ∈ 𝐵 ∧ ∀𝑧𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧))))
12 ismndd.b . . . 4 (𝜑𝐵 = (Base‘𝐺))
13 ismndd.p . . . . . . . 8 (𝜑+ = (+g𝐺))
1413oveqd 6941 . . . . . . 7 (𝜑 → (𝑥 + 𝑦) = (𝑥(+g𝐺)𝑦))
1514, 12eleq12d 2853 . . . . . 6 (𝜑 → ((𝑥 + 𝑦) ∈ 𝐵 ↔ (𝑥(+g𝐺)𝑦) ∈ (Base‘𝐺)))
16 eqidd 2779 . . . . . . . . 9 (𝜑𝑧 = 𝑧)
1713, 14, 16oveq123d 6945 . . . . . . . 8 (𝜑 → ((𝑥 + 𝑦) + 𝑧) = ((𝑥(+g𝐺)𝑦)(+g𝐺)𝑧))
18 eqidd 2779 . . . . . . . . 9 (𝜑𝑥 = 𝑥)
1913oveqd 6941 . . . . . . . . 9 (𝜑 → (𝑦 + 𝑧) = (𝑦(+g𝐺)𝑧))
2013, 18, 19oveq123d 6945 . . . . . . . 8 (𝜑 → (𝑥 + (𝑦 + 𝑧)) = (𝑥(+g𝐺)(𝑦(+g𝐺)𝑧)))
2117, 20eqeq12d 2793 . . . . . . 7 (𝜑 → (((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧)) ↔ ((𝑥(+g𝐺)𝑦)(+g𝐺)𝑧) = (𝑥(+g𝐺)(𝑦(+g𝐺)𝑧))))
2212, 21raleqbidv 3326 . . . . . 6 (𝜑 → (∀𝑧𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧)) ↔ ∀𝑧 ∈ (Base‘𝐺)((𝑥(+g𝐺)𝑦)(+g𝐺)𝑧) = (𝑥(+g𝐺)(𝑦(+g𝐺)𝑧))))
2315, 22anbi12d 624 . . . . 5 (𝜑 → (((𝑥 + 𝑦) ∈ 𝐵 ∧ ∀𝑧𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧))) ↔ ((𝑥(+g𝐺)𝑦) ∈ (Base‘𝐺) ∧ ∀𝑧 ∈ (Base‘𝐺)((𝑥(+g𝐺)𝑦)(+g𝐺)𝑧) = (𝑥(+g𝐺)(𝑦(+g𝐺)𝑧)))))
2412, 23raleqbidv 3326 . . . 4 (𝜑 → (∀𝑦𝐵 ((𝑥 + 𝑦) ∈ 𝐵 ∧ ∀𝑧𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧))) ↔ ∀𝑦 ∈ (Base‘𝐺)((𝑥(+g𝐺)𝑦) ∈ (Base‘𝐺) ∧ ∀𝑧 ∈ (Base‘𝐺)((𝑥(+g𝐺)𝑦)(+g𝐺)𝑧) = (𝑥(+g𝐺)(𝑦(+g𝐺)𝑧)))))
2512, 24raleqbidv 3326 . . 3 (𝜑 → (∀𝑥𝐵𝑦𝐵 ((𝑥 + 𝑦) ∈ 𝐵 ∧ ∀𝑧𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧))) ↔ ∀𝑥 ∈ (Base‘𝐺)∀𝑦 ∈ (Base‘𝐺)((𝑥(+g𝐺)𝑦) ∈ (Base‘𝐺) ∧ ∀𝑧 ∈ (Base‘𝐺)((𝑥(+g𝐺)𝑦)(+g𝐺)𝑧) = (𝑥(+g𝐺)(𝑦(+g𝐺)𝑧)))))
2611, 25mpbid 224 . 2 (𝜑 → ∀𝑥 ∈ (Base‘𝐺)∀𝑦 ∈ (Base‘𝐺)((𝑥(+g𝐺)𝑦) ∈ (Base‘𝐺) ∧ ∀𝑧 ∈ (Base‘𝐺)((𝑥(+g𝐺)𝑦)(+g𝐺)𝑧) = (𝑥(+g𝐺)(𝑦(+g𝐺)𝑧))))
27 ismndd.z . . . 4 (𝜑0𝐵)
2827, 12eleqtrd 2861 . . 3 (𝜑0 ∈ (Base‘𝐺))
2912eleq2d 2845 . . . . . 6 (𝜑 → (𝑥𝐵𝑥 ∈ (Base‘𝐺)))
3029biimpar 471 . . . . 5 ((𝜑𝑥 ∈ (Base‘𝐺)) → 𝑥𝐵)
3113adantr 474 . . . . . . . 8 ((𝜑𝑥𝐵) → + = (+g𝐺))
3231oveqd 6941 . . . . . . 7 ((𝜑𝑥𝐵) → ( 0 + 𝑥) = ( 0 (+g𝐺)𝑥))
33 ismndd.i . . . . . . 7 ((𝜑𝑥𝐵) → ( 0 + 𝑥) = 𝑥)
3432, 33eqtr3d 2816 . . . . . 6 ((𝜑𝑥𝐵) → ( 0 (+g𝐺)𝑥) = 𝑥)
3531oveqd 6941 . . . . . . 7 ((𝜑𝑥𝐵) → (𝑥 + 0 ) = (𝑥(+g𝐺) 0 ))
36 ismndd.j . . . . . . 7 ((𝜑𝑥𝐵) → (𝑥 + 0 ) = 𝑥)
3735, 36eqtr3d 2816 . . . . . 6 ((𝜑𝑥𝐵) → (𝑥(+g𝐺) 0 ) = 𝑥)
3834, 37jca 507 . . . . 5 ((𝜑𝑥𝐵) → (( 0 (+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺) 0 ) = 𝑥))
3930, 38syldan 585 . . . 4 ((𝜑𝑥 ∈ (Base‘𝐺)) → (( 0 (+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺) 0 ) = 𝑥))
4039ralrimiva 3148 . . 3 (𝜑 → ∀𝑥 ∈ (Base‘𝐺)(( 0 (+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺) 0 ) = 𝑥))
41 oveq1 6931 . . . . . 6 (𝑢 = 0 → (𝑢(+g𝐺)𝑥) = ( 0 (+g𝐺)𝑥))
4241eqeq1d 2780 . . . . 5 (𝑢 = 0 → ((𝑢(+g𝐺)𝑥) = 𝑥 ↔ ( 0 (+g𝐺)𝑥) = 𝑥))
4342ovanraleqv 6948 . . . 4 (𝑢 = 0 → (∀𝑥 ∈ (Base‘𝐺)((𝑢(+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺)𝑢) = 𝑥) ↔ ∀𝑥 ∈ (Base‘𝐺)(( 0 (+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺) 0 ) = 𝑥)))
4443rspcev 3511 . . 3 (( 0 ∈ (Base‘𝐺) ∧ ∀𝑥 ∈ (Base‘𝐺)(( 0 (+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺) 0 ) = 𝑥)) → ∃𝑢 ∈ (Base‘𝐺)∀𝑥 ∈ (Base‘𝐺)((𝑢(+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺)𝑢) = 𝑥))
4528, 40, 44syl2anc 579 . 2 (𝜑 → ∃𝑢 ∈ (Base‘𝐺)∀𝑥 ∈ (Base‘𝐺)((𝑢(+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺)𝑢) = 𝑥))
46 eqid 2778 . . 3 (Base‘𝐺) = (Base‘𝐺)
47 eqid 2778 . . 3 (+g𝐺) = (+g𝐺)
4846, 47ismnd 17694 . 2 (𝐺 ∈ Mnd ↔ (∀𝑥 ∈ (Base‘𝐺)∀𝑦 ∈ (Base‘𝐺)((𝑥(+g𝐺)𝑦) ∈ (Base‘𝐺) ∧ ∀𝑧 ∈ (Base‘𝐺)((𝑥(+g𝐺)𝑦)(+g𝐺)𝑧) = (𝑥(+g𝐺)(𝑦(+g𝐺)𝑧))) ∧ ∃𝑢 ∈ (Base‘𝐺)∀𝑥 ∈ (Base‘𝐺)((𝑢(+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺)𝑢) = 𝑥)))
4926, 45, 48sylanbrc 578 1 (𝜑𝐺 ∈ Mnd)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 386  w3a 1071   = wceq 1601  wcel 2107  wral 3090  wrex 3091  cfv 6137  (class class class)co 6924  Basecbs 16266  +gcplusg 16349  Mndcmnd 17691
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1839  ax-4 1853  ax-5 1953  ax-6 2021  ax-7 2055  ax-8 2109  ax-9 2116  ax-10 2135  ax-11 2150  ax-12 2163  ax-13 2334  ax-ext 2754  ax-nul 5027  ax-pow 5079
This theorem depends on definitions:  df-bi 199  df-an 387  df-or 837  df-3an 1073  df-tru 1605  df-ex 1824  df-nf 1828  df-sb 2012  df-mo 2551  df-eu 2587  df-clab 2764  df-cleq 2770  df-clel 2774  df-nfc 2921  df-ne 2970  df-ral 3095  df-rex 3096  df-rab 3099  df-v 3400  df-sbc 3653  df-dif 3795  df-un 3797  df-in 3799  df-ss 3806  df-nul 4142  df-if 4308  df-sn 4399  df-pr 4401  df-op 4405  df-uni 4674  df-br 4889  df-iota 6101  df-fv 6145  df-ov 6927  df-mgm 17639  df-sgrp 17681  df-mnd 17692
This theorem is referenced by:  issubmnd  17715  prdsmndd  17720  imasmnd2  17724  frmdmnd  17794  isgrpde  17841  oppgmnd  18178  isringd  18983  iscrngd  18984  xrsmcmn  20176  xrs1mnd  20191
  Copyright terms: Public domain W3C validator