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

Theorem ismndd 18996
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 1400 . . . . . 6 (((𝜑 ∧ (𝑥 ∈ 𝐵 ∧ 𝑦 ∈ 𝐵)) ∧ 𝑧 ∈ 𝐵) → ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧)))
98ralrimiva 3158 . . . . 5 ((𝜑 ∧ (𝑥 ∈ 𝐵 ∧ 𝑦 ∈ 𝐵)) → ∀𝑧 ∈ 𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧)))
102, 9jca 521 . . . 4 ((𝜑 ∧ (𝑥 ∈ 𝐵 ∧ 𝑦 ∈ 𝐵)) → ((𝑥 + 𝑦) ∈ 𝐵 ∧ ∀𝑧 ∈ 𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧))))
1110ralrimivva 3209 . . 3 (𝜑 → ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ((𝑥 + 𝑦) ∈ 𝐵 ∧ ∀𝑧 ∈ 𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧))))
12 ismndd.b . . . 4 (𝜑 → 𝐵 = (Base‘𝐺))
13 ismndd.p . . . . . . . 8 (𝜑 → + = (+g‘𝐺))
1413oveqd 7468 . . . . . . 7 (𝜑 → (𝑥 + 𝑦) = (𝑥(+g‘𝐺)𝑦))
1514, 12eleq12d 2858 . . . . . 6 (𝜑 → ((𝑥 + 𝑦) ∈ 𝐵 ↔ (𝑥(+g‘𝐺)𝑦) ∈ (Base‘𝐺)))
16 eqidd 2764 . . . . . . . . 9 (𝜑 → 𝑧 = 𝑧)
1713, 14, 16oveq123d 7472 . . . . . . . 8 (𝜑 → ((𝑥 + 𝑦) + 𝑧) = ((𝑥(+g‘𝐺)𝑦)(+g‘𝐺)𝑧))
18 eqidd 2764 . . . . . . . . 9 (𝜑 → 𝑥 = 𝑥)
1913oveqd 7468 . . . . . . . . 9 (𝜑 → (𝑦 + 𝑧) = (𝑦(+g‘𝐺)𝑧))
2013, 18, 19oveq123d 7472 . . . . . . . 8 (𝜑 → (𝑥 + (𝑦 + 𝑧)) = (𝑥(+g‘𝐺)(𝑦(+g‘𝐺)𝑧)))
2117, 20eqeq12d 2779 . . . . . . 7 (𝜑 → (((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧)) ↔ ((𝑥(+g‘𝐺)𝑦)(+g‘𝐺)𝑧) = (𝑥(+g‘𝐺)(𝑦(+g‘𝐺)𝑧))))
2212, 21raleqbidv 3338 . . . . . 6 (𝜑 → (∀𝑧 ∈ 𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧)) ↔ ∀𝑧 ∈ (Base‘𝐺)((𝑥(+g‘𝐺)𝑦)(+g‘𝐺)𝑧) = (𝑥(+g‘𝐺)(𝑦(+g‘𝐺)𝑧))))
2315, 22anbi12d 644 . . . . 5 (𝜑 → (((𝑥 + 𝑦) ∈ 𝐵 ∧ ∀𝑧 ∈ 𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧))) ↔ ((𝑥(+g‘𝐺)𝑦) ∈ (Base‘𝐺) ∧ ∀𝑧 ∈ (Base‘𝐺)((𝑥(+g‘𝐺)𝑦)(+g‘𝐺)𝑧) = (𝑥(+g‘𝐺)(𝑦(+g‘𝐺)𝑧)))))
2412, 23raleqbidv 3338 . . . 4 (𝜑 → (∀𝑦 ∈ 𝐵 ((𝑥 + 𝑦) ∈ 𝐵 ∧ ∀𝑧 ∈ 𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧))) ↔ ∀𝑦 ∈ (Base‘𝐺)((𝑥(+g‘𝐺)𝑦) ∈ (Base‘𝐺) ∧ ∀𝑧 ∈ (Base‘𝐺)((𝑥(+g‘𝐺)𝑦)(+g‘𝐺)𝑧) = (𝑥(+g‘𝐺)(𝑦(+g‘𝐺)𝑧)))))
2512, 24raleqbidv 3338 . . 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 2866 . . 3 (𝜑 → 0 ∈ (Base‘𝐺))
2912eleq2d 2850 . . . . . 6 (𝜑 → (𝑥 ∈ 𝐵 ↔ 𝑥 ∈ (Base‘𝐺)))
3029biimpar 483 . . . . 5 ((𝜑 ∧ 𝑥 ∈ (Base‘𝐺)) → 𝑥 ∈ 𝐵)
3113adantr 486 . . . . . . . 8 ((𝜑 ∧ 𝑥 ∈ 𝐵) → + = (+g‘𝐺))
3231oveqd 7468 . . . . . . 7 ((𝜑 ∧ 𝑥 ∈ 𝐵) → ( 0 + 𝑥) = ( 0 (+g‘𝐺)𝑥))
33 ismndd.i . . . . . . 7 ((𝜑 ∧ 𝑥 ∈ 𝐵) → ( 0 + 𝑥) = 𝑥)
3432, 33eqtr3d 2800 . . . . . 6 ((𝜑 ∧ 𝑥 ∈ 𝐵) → ( 0 (+g‘𝐺)𝑥) = 𝑥)
3531oveqd 7468 . . . . . . 7 ((𝜑 ∧ 𝑥 ∈ 𝐵) → (𝑥 + 0 ) = (𝑥(+g‘𝐺) 0 ))
36 ismndd.j . . . . . . 7 ((𝜑 ∧ 𝑥 ∈ 𝐵) → (𝑥 + 0 ) = 𝑥)
3735, 36eqtr3d 2800 . . . . . 6 ((𝜑 ∧ 𝑥 ∈ 𝐵) → (𝑥(+g‘𝐺) 0 ) = 𝑥)
3834, 37jca 521 . . . . 5 ((𝜑 ∧ 𝑥 ∈ 𝐵) → (( 0 (+g‘𝐺)𝑥) = 𝑥 ∧ (𝑥(+g‘𝐺) 0 ) = 𝑥))
3930, 38syldan 603 . . . 4 ((𝜑 ∧ 𝑥 ∈ (Base‘𝐺)) → (( 0 (+g‘𝐺)𝑥) = 𝑥 ∧ (𝑥(+g‘𝐺) 0 ) = 𝑥))
4039ralrimiva 3158 . . 3 (𝜑 → ∀𝑥 ∈ (Base‘𝐺)(( 0 (+g‘𝐺)𝑥) = 𝑥 ∧ (𝑥(+g‘𝐺) 0 ) = 𝑥))
41 oveq1 7458 . . . . . 6 (𝑢 = 0 → (𝑢(+g‘𝐺)𝑥) = ( 0 (+g‘𝐺)𝑥))
4241eqeq1d 2765 . . . . 5 (𝑢 = 0 → ((𝑢(+g‘𝐺)𝑥) = 𝑥 ↔ ( 0 (+g‘𝐺)𝑥) = 𝑥))
4342ovanraleqv 7475 . . . 4 (𝑢 = 0 → (∀𝑥 ∈ (Base‘𝐺)((𝑢(+g‘𝐺)𝑥) = 𝑥 ∧ (𝑥(+g‘𝐺)𝑢) = 𝑥) ↔ ∀𝑥 ∈ (Base‘𝐺)(( 0 (+g‘𝐺)𝑥) = 𝑥 ∧ (𝑥(+g‘𝐺) 0 ) = 𝑥)))
4443rspcev 3580 . . 3 (( 0 ∈ (Base‘𝐺) ∧ ∀𝑥 ∈ (Base‘𝐺)(( 0 (+g‘𝐺)𝑥) = 𝑥 ∧ (𝑥(+g‘𝐺) 0 ) = 𝑥)) → ∃𝑢 ∈ (Base‘𝐺)∀𝑥 ∈ (Base‘𝐺)((𝑢(+g‘𝐺)𝑥) = 𝑥 ∧ (𝑥(+g‘𝐺)𝑢) = 𝑥))
4528, 40, 44syl2anc 596 . 2 (𝜑 → ∃𝑢 ∈ (Base‘𝐺)∀𝑥 ∈ (Base‘𝐺)((𝑢(+g‘𝐺)𝑥) = 𝑥 ∧ (𝑥(+g‘𝐺)𝑢) = 𝑥))
46 eqid 2763 . . 3 (Base‘𝐺) = (Base‘𝐺)
47 eqid 2763 . . 3 (+g‘𝐺) = (+g‘𝐺)
4846, 47ismnd 18976 . 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 2147  ∀wral 3080  ∃wrex 3090  ‘cfv 6566  (class class class)co 7451  Basecbs 17431  +gcplusg 17472  Mndcmnd 18973
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 1945  ax-6 2002  ax-7 2043  ax-8 2149  ax-9 2157  ax-ext 2735  ax-nul 5266  ax-pr 5398
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 2102  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-ne 2960  df-ral 3081  df-rex 3091  df-rab 3417  df-v 3456  df-sbc 3743  df-ss 3901  df-dif 4050  df-un 4154  df-nul 4282  df-if 4486  df-sn 4589  df-pr 4591  df-op 4841  df-uni 4873  df-br 5109  df-iota 6520  df-fv 6574  df-ov 7454  df-mgm 18866  df-sgrp 18958  df-mnd 18974
This theorem is used by:  issubmnd  19003  prdsmndd  19014  imasmnd2  19018  frmdmnd  19105  isgrpde  19218  oppgmnd  19619  isringd  20573  iscrngd  20574  xrsmcmn  21753  xrs1mnd  21800  rloccring  33931  idlsrgmnd  34150  bj-endmnd  38507  endmndlem  50460
  Copyright terms: Public domain W3C validator