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

Theorem ismndd 17933
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 1117 . . . . 5 ((𝜑 ∧ (𝑥𝐵𝑦𝐵)) → (𝑥 + 𝑦) ∈ 𝐵)
3 simpll 766 . . . . . . 7 (((𝜑 ∧ (𝑥𝐵𝑦𝐵)) ∧ 𝑧𝐵) → 𝜑)
4 simplrl 776 . . . . . . 7 (((𝜑 ∧ (𝑥𝐵𝑦𝐵)) ∧ 𝑧𝐵) → 𝑥𝐵)
5 simplrr 777 . . . . . . 7 (((𝜑 ∧ (𝑥𝐵𝑦𝐵)) ∧ 𝑧𝐵) → 𝑦𝐵)
6 simpr 488 . . . . . . 7 (((𝜑 ∧ (𝑥𝐵𝑦𝐵)) ∧ 𝑧𝐵) → 𝑧𝐵)
7 ismndd.a . . . . . . 7 ((𝜑 ∧ (𝑥𝐵𝑦𝐵𝑧𝐵)) → ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧)))
83, 4, 5, 6, 7syl13anc 1369 . . . . . 6 (((𝜑 ∧ (𝑥𝐵𝑦𝐵)) ∧ 𝑧𝐵) → ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧)))
98ralrimiva 3177 . . . . 5 ((𝜑 ∧ (𝑥𝐵𝑦𝐵)) → ∀𝑧𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧)))
102, 9jca 515 . . . 4 ((𝜑 ∧ (𝑥𝐵𝑦𝐵)) → ((𝑥 + 𝑦) ∈ 𝐵 ∧ ∀𝑧𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧))))
1110ralrimivva 3186 . . 3 (𝜑 → ∀𝑥𝐵𝑦𝐵 ((𝑥 + 𝑦) ∈ 𝐵 ∧ ∀𝑧𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧))))
12 ismndd.b . . . 4 (𝜑𝐵 = (Base‘𝐺))
13 ismndd.p . . . . . . . 8 (𝜑+ = (+g𝐺))
1413oveqd 7166 . . . . . . 7 (𝜑 → (𝑥 + 𝑦) = (𝑥(+g𝐺)𝑦))
1514, 12eleq12d 2910 . . . . . 6 (𝜑 → ((𝑥 + 𝑦) ∈ 𝐵 ↔ (𝑥(+g𝐺)𝑦) ∈ (Base‘𝐺)))
16 eqidd 2825 . . . . . . . . 9 (𝜑𝑧 = 𝑧)
1713, 14, 16oveq123d 7170 . . . . . . . 8 (𝜑 → ((𝑥 + 𝑦) + 𝑧) = ((𝑥(+g𝐺)𝑦)(+g𝐺)𝑧))
18 eqidd 2825 . . . . . . . . 9 (𝜑𝑥 = 𝑥)
1913oveqd 7166 . . . . . . . . 9 (𝜑 → (𝑦 + 𝑧) = (𝑦(+g𝐺)𝑧))
2013, 18, 19oveq123d 7170 . . . . . . . 8 (𝜑 → (𝑥 + (𝑦 + 𝑧)) = (𝑥(+g𝐺)(𝑦(+g𝐺)𝑧)))
2117, 20eqeq12d 2840 . . . . . . 7 (𝜑 → (((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧)) ↔ ((𝑥(+g𝐺)𝑦)(+g𝐺)𝑧) = (𝑥(+g𝐺)(𝑦(+g𝐺)𝑧))))
2212, 21raleqbidv 3392 . . . . . 6 (𝜑 → (∀𝑧𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧)) ↔ ∀𝑧 ∈ (Base‘𝐺)((𝑥(+g𝐺)𝑦)(+g𝐺)𝑧) = (𝑥(+g𝐺)(𝑦(+g𝐺)𝑧))))
2315, 22anbi12d 633 . . . . 5 (𝜑 → (((𝑥 + 𝑦) ∈ 𝐵 ∧ ∀𝑧𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧))) ↔ ((𝑥(+g𝐺)𝑦) ∈ (Base‘𝐺) ∧ ∀𝑧 ∈ (Base‘𝐺)((𝑥(+g𝐺)𝑦)(+g𝐺)𝑧) = (𝑥(+g𝐺)(𝑦(+g𝐺)𝑧)))))
2412, 23raleqbidv 3392 . . . 4 (𝜑 → (∀𝑦𝐵 ((𝑥 + 𝑦) ∈ 𝐵 ∧ ∀𝑧𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧))) ↔ ∀𝑦 ∈ (Base‘𝐺)((𝑥(+g𝐺)𝑦) ∈ (Base‘𝐺) ∧ ∀𝑧 ∈ (Base‘𝐺)((𝑥(+g𝐺)𝑦)(+g𝐺)𝑧) = (𝑥(+g𝐺)(𝑦(+g𝐺)𝑧)))))
2512, 24raleqbidv 3392 . . 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 2918 . . 3 (𝜑0 ∈ (Base‘𝐺))
2912eleq2d 2901 . . . . . 6 (𝜑 → (𝑥𝐵𝑥 ∈ (Base‘𝐺)))
3029biimpar 481 . . . . 5 ((𝜑𝑥 ∈ (Base‘𝐺)) → 𝑥𝐵)
3113adantr 484 . . . . . . . 8 ((𝜑𝑥𝐵) → + = (+g𝐺))
3231oveqd 7166 . . . . . . 7 ((𝜑𝑥𝐵) → ( 0 + 𝑥) = ( 0 (+g𝐺)𝑥))
33 ismndd.i . . . . . . 7 ((𝜑𝑥𝐵) → ( 0 + 𝑥) = 𝑥)
3432, 33eqtr3d 2861 . . . . . 6 ((𝜑𝑥𝐵) → ( 0 (+g𝐺)𝑥) = 𝑥)
3531oveqd 7166 . . . . . . 7 ((𝜑𝑥𝐵) → (𝑥 + 0 ) = (𝑥(+g𝐺) 0 ))
36 ismndd.j . . . . . . 7 ((𝜑𝑥𝐵) → (𝑥 + 0 ) = 𝑥)
3735, 36eqtr3d 2861 . . . . . 6 ((𝜑𝑥𝐵) → (𝑥(+g𝐺) 0 ) = 𝑥)
3834, 37jca 515 . . . . 5 ((𝜑𝑥𝐵) → (( 0 (+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺) 0 ) = 𝑥))
3930, 38syldan 594 . . . 4 ((𝜑𝑥 ∈ (Base‘𝐺)) → (( 0 (+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺) 0 ) = 𝑥))
4039ralrimiva 3177 . . 3 (𝜑 → ∀𝑥 ∈ (Base‘𝐺)(( 0 (+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺) 0 ) = 𝑥))
41 oveq1 7156 . . . . . 6 (𝑢 = 0 → (𝑢(+g𝐺)𝑥) = ( 0 (+g𝐺)𝑥))
4241eqeq1d 2826 . . . . 5 (𝑢 = 0 → ((𝑢(+g𝐺)𝑥) = 𝑥 ↔ ( 0 (+g𝐺)𝑥) = 𝑥))
4342ovanraleqv 7173 . . . 4 (𝑢 = 0 → (∀𝑥 ∈ (Base‘𝐺)((𝑢(+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺)𝑢) = 𝑥) ↔ ∀𝑥 ∈ (Base‘𝐺)(( 0 (+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺) 0 ) = 𝑥)))
4443rspcev 3609 . . 3 (( 0 ∈ (Base‘𝐺) ∧ ∀𝑥 ∈ (Base‘𝐺)(( 0 (+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺) 0 ) = 𝑥)) → ∃𝑢 ∈ (Base‘𝐺)∀𝑥 ∈ (Base‘𝐺)((𝑢(+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺)𝑢) = 𝑥))
4528, 40, 44syl2anc 587 . 2 (𝜑 → ∃𝑢 ∈ (Base‘𝐺)∀𝑥 ∈ (Base‘𝐺)((𝑢(+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺)𝑢) = 𝑥))
46 eqid 2824 . . 3 (Base‘𝐺) = (Base‘𝐺)
47 eqid 2824 . . 3 (+g𝐺) = (+g𝐺)
4846, 47ismnd 17914 . 2 (𝐺 ∈ Mnd ↔ (∀𝑥 ∈ (Base‘𝐺)∀𝑦 ∈ (Base‘𝐺)((𝑥(+g𝐺)𝑦) ∈ (Base‘𝐺) ∧ ∀𝑧 ∈ (Base‘𝐺)((𝑥(+g𝐺)𝑦)(+g𝐺)𝑧) = (𝑥(+g𝐺)(𝑦(+g𝐺)𝑧))) ∧ ∃𝑢 ∈ (Base‘𝐺)∀𝑥 ∈ (Base‘𝐺)((𝑢(+g𝐺)𝑥) = 𝑥 ∧ (𝑥(+g𝐺)𝑢) = 𝑥)))
4926, 45, 48sylanbrc 586 1 (𝜑𝐺 ∈ Mnd)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 399  w3a 1084   = wceq 1538  wcel 2115  wral 3133  wrex 3134  cfv 6343  (class class class)co 7149  Basecbs 16483  +gcplusg 16565  Mndcmnd 17911
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1912  ax-6 1971  ax-7 2016  ax-8 2117  ax-9 2125  ax-10 2146  ax-11 2162  ax-12 2179  ax-ext 2796  ax-nul 5196  ax-pow 5253
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 845  df-3an 1086  df-tru 1541  df-ex 1782  df-nf 1786  df-sb 2071  df-mo 2624  df-eu 2655  df-clab 2803  df-cleq 2817  df-clel 2896  df-nfc 2964  df-ne 3015  df-ral 3138  df-rex 3139  df-rab 3142  df-v 3482  df-sbc 3759  df-dif 3922  df-un 3924  df-in 3926  df-ss 3936  df-nul 4277  df-if 4451  df-sn 4551  df-pr 4553  df-op 4557  df-uni 4825  df-br 5053  df-iota 6302  df-fv 6351  df-ov 7152  df-mgm 17852  df-sgrp 17901  df-mnd 17912
This theorem is referenced by:  issubmnd  17938  prdsmndd  17944  imasmnd2  17948  frmdmnd  18024  isgrpde  18124  oppgmnd  18482  isringd  19338  iscrngd  19339  xrsmcmn  20170  xrs1mnd  20185  idlsrgmnd  31038  bj-endmnd  34680
  Copyright terms: Public domain W3C validator