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

Theorem ismndd 18836
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 1138 . . . . 5 ((𝜑 ∧ (𝑥𝐵𝑦𝐵)) → (𝑥 + 𝑦) ∈ 𝐵)
3 simpll 779 . . . . . . 7 (((𝜑 ∧ (𝑥𝐵𝑦𝐵)) ∧ 𝑧𝐵) → 𝜑)
4 simplrl 789 . . . . . . 7 (((𝜑 ∧ (𝑥𝐵𝑦𝐵)) ∧ 𝑧𝐵) → 𝑥𝐵)
5 simplrr 790 . . . . . . 7 (((𝜑 ∧ (𝑥𝐵𝑦𝐵)) ∧ 𝑧𝐵) → 𝑦𝐵)
6 simpr 490 . . . . . . 7 (((𝜑 ∧ (𝑥𝐵𝑦𝐵)) ∧ 𝑧𝐵) → 𝑧𝐵)
7 ismndd.a . . . . . . 7 ((𝜑 ∧ (𝑥𝐵𝑦𝐵𝑧𝐵)) → ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧)))
83, 4, 5, 6, 7syl13anc 1399 . . . . . 6 (((𝜑 ∧ (𝑥𝐵𝑦𝐵)) ∧ 𝑧𝐵) → ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧)))
98ralrimiva 3159 . . . . 5 ((𝜑 ∧ (𝑥𝐵𝑦𝐵)) → ∀𝑧𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧)))
102, 9jca 521 . . . 4 ((𝜑 ∧ (𝑥𝐵𝑦𝐵)) → ((𝑥 + 𝑦) ∈ 𝐵 ∧ ∀𝑧𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧))))
1110ralrimivva 3210 . . 3 (𝜑 → ∀𝑥𝐵𝑦𝐵 ((𝑥 + 𝑦) ∈ 𝐵 ∧ ∀𝑧𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧))))
12 ismndd.b . . . 4 (𝜑𝐵 = (Base‘𝐺))
13 ismndd.p . . . . . . . 8 (𝜑+ = (+g𝐺))
1413oveqd 7433 . . . . . . 7 (𝜑 → (𝑥 + 𝑦) = (𝑥(+g𝐺)𝑦))
1514, 12eleq12d 2859 . . . . . 6 (𝜑 → ((𝑥 + 𝑦) ∈ 𝐵 ↔ (𝑥(+g𝐺)𝑦) ∈ (Base‘𝐺)))
16 eqidd 2766 . . . . . . . . 9 (𝜑𝑧 = 𝑧)
1713, 14, 16oveq123d 7437 . . . . . . . 8 (𝜑 → ((𝑥 + 𝑦) + 𝑧) = ((𝑥(+g𝐺)𝑦)(+g𝐺)𝑧))
18 eqidd 2766 . . . . . . . . 9 (𝜑𝑥 = 𝑥)
1913oveqd 7433 . . . . . . . . 9 (𝜑 → (𝑦 + 𝑧) = (𝑦(+g𝐺)𝑧))
2013, 18, 19oveq123d 7437 . . . . . . . 8 (𝜑 → (𝑥 + (𝑦 + 𝑧)) = (𝑥(+g𝐺)(𝑦(+g𝐺)𝑧)))
2117, 20eqeq12d 2781 . . . . . . 7 (𝜑 → (((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧)) ↔ ((𝑥(+g𝐺)𝑦)(+g𝐺)𝑧) = (𝑥(+g𝐺)(𝑦(+g𝐺)𝑧))))
2212, 21raleqbidv 3340 . . . . . 6 (𝜑 → (∀𝑧𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧)) ↔ ∀𝑧 ∈ (Base‘𝐺)((𝑥(+g𝐺)𝑦)(+g𝐺)𝑧) = (𝑥(+g𝐺)(𝑦(+g𝐺)𝑧))))
2315, 22anbi12d 644 . . . . 5 (𝜑 → (((𝑥 + 𝑦) ∈ 𝐵 ∧ ∀𝑧𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧))) ↔ ((𝑥(+g𝐺)𝑦) ∈ (Base‘𝐺) ∧ ∀𝑧 ∈ (Base‘𝐺)((𝑥(+g𝐺)𝑦)(+g𝐺)𝑧) = (𝑥(+g𝐺)(𝑦(+g𝐺)𝑧)))))
2412, 23raleqbidv 3340 . . . 4 (𝜑 → (∀𝑦𝐵 ((𝑥 + 𝑦) ∈ 𝐵 ∧ ∀𝑧𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧))) ↔ ∀𝑦 ∈ (Base‘𝐺)((𝑥(+g𝐺)𝑦) ∈ (Base‘𝐺) ∧ ∀𝑧 ∈ (Base‘𝐺)((𝑥(+g𝐺)𝑦)(+g𝐺)𝑧) = (𝑥(+g𝐺)(𝑦(+g𝐺)𝑧)))))
2512, 24raleqbidv 3340 . . 3 (𝜑 → (∀𝑥𝐵𝑦𝐵 ((𝑥 + 𝑦) ∈ 𝐵 ∧ ∀𝑧𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧))) ↔ ∀𝑥 ∈ (Base‘𝐺)∀𝑦 ∈ (Base‘𝐺)((𝑥(+g𝐺)𝑦) ∈ (Base‘𝐺) ∧ ∀𝑧 ∈ (Base‘𝐺)((𝑥(+g𝐺)𝑦)(+g𝐺)𝑧) = (𝑥(+g𝐺)(𝑦(+g𝐺)𝑧)))))
2611, 25mpbid 235 . 2 (𝜑 → ∀𝑥 ∈ (Base‘𝐺)∀𝑦 ∈ (Base‘𝐺)((𝑥(+g𝐺)𝑦) ∈ (Base‘𝐺) ∧ ∀𝑧 ∈ (Base‘𝐺)((𝑥(+g𝐺)𝑦)(+g𝐺)𝑧) = (𝑥(+g𝐺)(𝑦(+g𝐺)𝑧))))
27 ismndd.z . . . 4 (𝜑0𝐵)
2827, 12eleqtrd 2867 . . 3 (𝜑0 ∈ (Base‘𝐺))
2912eleq2d 2851 . . . . . 6 (𝜑 → (𝑥𝐵𝑥 ∈ (Base‘𝐺)))
3029biimpar 483 . . . . 5 ((𝜑𝑥 ∈ (Base‘𝐺)) → 𝑥𝐵)
3113adantr 486 . . . . . . . 8 ((𝜑𝑥𝐵) → + = (+g𝐺))
3231oveqd 7433 . . . . . . 7 ((𝜑𝑥𝐵) → ( 0 + 𝑥) = ( 0 (+g𝐺)𝑥))
33 ismndd.i . . . . . . 7 ((𝜑𝑥𝐵) → ( 0 + 𝑥) = 𝑥)
3432, 33eqtr3d 2802 . . . . . 6 ((𝜑𝑥𝐵) → ( 0 (+g𝐺)𝑥) = 𝑥)
3531oveqd 7433 . . . . . . 7 ((𝜑𝑥𝐵) → (𝑥 + 0 ) = (𝑥(+g𝐺) 0 ))
36 ismndd.j . . . . . . 7 ((𝜑𝑥𝐵) → (𝑥 + 0 ) = 𝑥)
3735, 36eqtr3d 2802 . . . . . 6 ((𝜑𝑥𝐵) → (𝑥(+g𝐺) 0 ) = 𝑥)
3834, 37jca 521 . . . . 5 ((𝜑𝑥𝐵) → (( 0 (+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺) 0 ) = 𝑥))
3930, 38syldan 603 . . . 4 ((𝜑𝑥 ∈ (Base‘𝐺)) → (( 0 (+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺) 0 ) = 𝑥))
4039ralrimiva 3159 . . 3 (𝜑 → ∀𝑥 ∈ (Base‘𝐺)(( 0 (+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺) 0 ) = 𝑥))
41 oveq1 7423 . . . . . 6 (𝑢 = 0 → (𝑢(+g𝐺)𝑥) = ( 0 (+g𝐺)𝑥))
4241eqeq1d 2767 . . . . 5 (𝑢 = 0 → ((𝑢(+g𝐺)𝑥) = 𝑥 ↔ ( 0 (+g𝐺)𝑥) = 𝑥))
4342ovanraleqv 7440 . . . 4 (𝑢 = 0 → (∀𝑥 ∈ (Base‘𝐺)((𝑢(+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺)𝑢) = 𝑥) ↔ ∀𝑥 ∈ (Base‘𝐺)(( 0 (+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺) 0 ) = 𝑥)))
4443rspcev 3583 . . 3 (( 0 ∈ (Base‘𝐺) ∧ ∀𝑥 ∈ (Base‘𝐺)(( 0 (+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺) 0 ) = 𝑥)) → ∃𝑢 ∈ (Base‘𝐺)∀𝑥 ∈ (Base‘𝐺)((𝑢(+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺)𝑢) = 𝑥))
4528, 40, 44syl2anc 596 . 2 (𝜑 → ∃𝑢 ∈ (Base‘𝐺)∀𝑥 ∈ (Base‘𝐺)((𝑢(+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺)𝑢) = 𝑥))
46 eqid 2765 . . 3 (Base‘𝐺) = (Base‘𝐺)
47 eqid 2765 . . 3 (+g𝐺) = (+g𝐺)
4846, 47ismnd 18817 . 2 (𝐺 ∈ Mnd ↔ (∀𝑥 ∈ (Base‘𝐺)∀𝑦 ∈ (Base‘𝐺)((𝑥(+g𝐺)𝑦) ∈ (Base‘𝐺) ∧ ∀𝑧 ∈ (Base‘𝐺)((𝑥(+g𝐺)𝑦)(+g𝐺)𝑧) = (𝑥(+g𝐺)(𝑦(+g𝐺)𝑧))) ∧ ∃𝑢 ∈ (Base‘𝐺)∀𝑥 ∈ (Base‘𝐺)((𝑢(+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺)𝑢) = 𝑥)))
4926, 45, 48sylanbrc 595 1 (𝜑𝐺 ∈ Mnd)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wa 401  w3a 1103   = wceq 1570  wcel 2146  wral 3081  wrex 3091  cfv 6540  (class class class)co 7416  Basecbs 17287  +gcplusg 17328  Mndcmnd 18814
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2148  ax-9 2156  ax-ext 2737  ax-nul 5271  ax-pr 5406
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-sb 2100  df-mo 2569  df-eu 2599  df-clab 2744  df-cleq 2757  df-clel 2840  df-ne 2961  df-ral 3082  df-rex 3092  df-rab 3419  df-v 3459  df-sbc 3747  df-dif 3909  df-un 3911  df-ss 3923  df-nul 4287  df-if 4490  df-sn 4592  df-pr 4594  df-op 4598  df-uni 4875  df-br 5112  df-iota 6496  df-fv 6548  df-ov 7419  df-mgm 18716  df-sgrp 18799  df-mnd 18815
This theorem is used by:  issubmnd  18841  prdsmndd  18852  imasmnd2  18856  frmdmnd  18942  isgrpde  19048  oppgmnd  19448  isringd  20400  iscrngd  20401  xrsmcmn  21575  xrs1mnd  21620  rloccring  33631  idlsrgmnd  33844  bj-endmnd  37995  endmndlem  49826
  Copyright terms: Public domain W3C validator