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

Theorem ismndd 18939
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 3155 . . . . 5 ((𝜑 ∧ (𝑥 ∈ 𝐵 ∧ 𝑦 ∈ 𝐵)) → ∀𝑧 ∈ 𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧)))
102, 9jca 521 . . . 4 ((𝜑 ∧ (𝑥 ∈ 𝐵 ∧ 𝑦 ∈ 𝐵)) → ((𝑥 + 𝑦) ∈ 𝐵 ∧ ∀𝑧 ∈ 𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧))))
1110ralrimivva 3206 . . 3 (𝜑 → ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ((𝑥 + 𝑦) ∈ 𝐵 ∧ ∀𝑧 ∈ 𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧))))
12 ismndd.b . . . 4 (𝜑 → 𝐵 = (Base‘𝐺))
13 ismndd.p . . . . . . . 8 (𝜑 → + = (+g‘𝐺))
1413oveqd 7435 . . . . . . 7 (𝜑 → (𝑥 + 𝑦) = (𝑥(+g‘𝐺)𝑦))
1514, 12eleq12d 2855 . . . . . 6 (𝜑 → ((𝑥 + 𝑦) ∈ 𝐵 ↔ (𝑥(+g‘𝐺)𝑦) ∈ (Base‘𝐺)))
16 eqidd 2762 . . . . . . . . 9 (𝜑 → 𝑧 = 𝑧)
1713, 14, 16oveq123d 7439 . . . . . . . 8 (𝜑 → ((𝑥 + 𝑦) + 𝑧) = ((𝑥(+g‘𝐺)𝑦)(+g‘𝐺)𝑧))
18 eqidd 2762 . . . . . . . . 9 (𝜑 → 𝑥 = 𝑥)
1913oveqd 7435 . . . . . . . . 9 (𝜑 → (𝑦 + 𝑧) = (𝑦(+g‘𝐺)𝑧))
2013, 18, 19oveq123d 7439 . . . . . . . 8 (𝜑 → (𝑥 + (𝑦 + 𝑧)) = (𝑥(+g‘𝐺)(𝑦(+g‘𝐺)𝑧)))
2117, 20eqeq12d 2777 . . . . . . 7 (𝜑 → (((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧)) ↔ ((𝑥(+g‘𝐺)𝑦)(+g‘𝐺)𝑧) = (𝑥(+g‘𝐺)(𝑦(+g‘𝐺)𝑧))))
2212, 21raleqbidv 3335 . . . . . 6 (𝜑 → (∀𝑧 ∈ 𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧)) ↔ ∀𝑧 ∈ (Base‘𝐺)((𝑥(+g‘𝐺)𝑦)(+g‘𝐺)𝑧) = (𝑥(+g‘𝐺)(𝑦(+g‘𝐺)𝑧))))
2315, 22anbi12d 644 . . . . 5 (𝜑 → (((𝑥 + 𝑦) ∈ 𝐵 ∧ ∀𝑧 ∈ 𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧))) ↔ ((𝑥(+g‘𝐺)𝑦) ∈ (Base‘𝐺) ∧ ∀𝑧 ∈ (Base‘𝐺)((𝑥(+g‘𝐺)𝑦)(+g‘𝐺)𝑧) = (𝑥(+g‘𝐺)(𝑦(+g‘𝐺)𝑧)))))
2412, 23raleqbidv 3335 . . . 4 (𝜑 → (∀𝑦 ∈ 𝐵 ((𝑥 + 𝑦) ∈ 𝐵 ∧ ∀𝑧 ∈ 𝐵 ((𝑥 + 𝑦) + 𝑧) = (𝑥 + (𝑦 + 𝑧))) ↔ ∀𝑦 ∈ (Base‘𝐺)((𝑥(+g‘𝐺)𝑦) ∈ (Base‘𝐺) ∧ ∀𝑧 ∈ (Base‘𝐺)((𝑥(+g‘𝐺)𝑦)(+g‘𝐺)𝑧) = (𝑥(+g‘𝐺)(𝑦(+g‘𝐺)𝑧)))))
2512, 24raleqbidv 3335 . . 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 2863 . . 3 (𝜑 → 0 ∈ (Base‘𝐺))
2912eleq2d 2847 . . . . . 6 (𝜑 → (𝑥 ∈ 𝐵 ↔ 𝑥 ∈ (Base‘𝐺)))
3029biimpar 483 . . . . 5 ((𝜑 ∧ 𝑥 ∈ (Base‘𝐺)) → 𝑥 ∈ 𝐵)
3113adantr 486 . . . . . . . 8 ((𝜑 ∧ 𝑥 ∈ 𝐵) → + = (+g‘𝐺))
3231oveqd 7435 . . . . . . 7 ((𝜑 ∧ 𝑥 ∈ 𝐵) → ( 0 + 𝑥) = ( 0 (+g‘𝐺)𝑥))
33 ismndd.i . . . . . . 7 ((𝜑 ∧ 𝑥 ∈ 𝐵) → ( 0 + 𝑥) = 𝑥)
3432, 33eqtr3d 2798 . . . . . 6 ((𝜑 ∧ 𝑥 ∈ 𝐵) → ( 0 (+g‘𝐺)𝑥) = 𝑥)
3531oveqd 7435 . . . . . . 7 ((𝜑 ∧ 𝑥 ∈ 𝐵) → (𝑥 + 0 ) = (𝑥(+g‘𝐺) 0 ))
36 ismndd.j . . . . . . 7 ((𝜑 ∧ 𝑥 ∈ 𝐵) → (𝑥 + 0 ) = 𝑥)
3735, 36eqtr3d 2798 . . . . . 6 ((𝜑 ∧ 𝑥 ∈ 𝐵) → (𝑥(+g‘𝐺) 0 ) = 𝑥)
3834, 37jca 521 . . . . 5 ((𝜑 ∧ 𝑥 ∈ 𝐵) → (( 0 (+g‘𝐺)𝑥) = 𝑥 ∧ (𝑥(+g‘𝐺) 0 ) = 𝑥))
3930, 38syldan 603 . . . 4 ((𝜑 ∧ 𝑥 ∈ (Base‘𝐺)) → (( 0 (+g‘𝐺)𝑥) = 𝑥 ∧ (𝑥(+g‘𝐺) 0 ) = 𝑥))
4039ralrimiva 3155 . . 3 (𝜑 → ∀𝑥 ∈ (Base‘𝐺)(( 0 (+g‘𝐺)𝑥) = 𝑥 ∧ (𝑥(+g‘𝐺) 0 ) = 𝑥))
41 oveq1 7425 . . . . . 6 (𝑢 = 0 → (𝑢(+g‘𝐺)𝑥) = ( 0 (+g‘𝐺)𝑥))
4241eqeq1d 2763 . . . . 5 (𝑢 = 0 → ((𝑢(+g‘𝐺)𝑥) = 𝑥 ↔ ( 0 (+g‘𝐺)𝑥) = 𝑥))
4342ovanraleqv 7442 . . . 4 (𝑢 = 0 → (∀𝑥 ∈ (Base‘𝐺)((𝑢(+g‘𝐺)𝑥) = 𝑥 ∧ (𝑥(+g‘𝐺)𝑢) = 𝑥) ↔ ∀𝑥 ∈ (Base‘𝐺)(( 0 (+g‘𝐺)𝑥) = 𝑥 ∧ (𝑥(+g‘𝐺) 0 ) = 𝑥)))
4443rspcev 3577 . . 3 (( 0 ∈ (Base‘𝐺) ∧ ∀𝑥 ∈ (Base‘𝐺)(( 0 (+g‘𝐺)𝑥) = 𝑥 ∧ (𝑥(+g‘𝐺) 0 ) = 𝑥)) → ∃𝑢 ∈ (Base‘𝐺)∀𝑥 ∈ (Base‘𝐺)((𝑢(+g‘𝐺)𝑥) = 𝑥 ∧ (𝑥(+g‘𝐺)𝑢) = 𝑥))
4528, 40, 44syl2anc 596 . 2 (𝜑 → ∃𝑢 ∈ (Base‘𝐺)∀𝑥 ∈ (Base‘𝐺)((𝑢(+g‘𝐺)𝑥) = 𝑥 ∧ (𝑥(+g‘𝐺)𝑢) = 𝑥))
46 eqid 2761 . . 3 (Base‘𝐺) = (Base‘𝐺)
47 eqid 2761 . . 3 (+g‘𝐺) = (+g‘𝐺)
4846, 47ismnd 18919 . 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 2145  ∀wral 3077  ∃wrex 3087  ‘cfv 6537  (class class class)co 7418  Basecbs 17380  +gcplusg 17421  Mndcmnd 18916
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 2147  ax-9 2155  ax-ext 2733  ax-nul 5260  ax-pr 5391
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 2565  df-eu 2595  df-clab 2740  df-cleq 2753  df-clel 2836  df-ne 2957  df-ral 3078  df-rex 3088  df-rab 3414  df-v 3453  df-sbc 3740  df-dif 3902  df-un 3904  df-ss 3916  df-nul 4280  df-if 4483  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-br 5104  df-iota 6493  df-fv 6545  df-ov 7421  df-mgm 18809  df-sgrp 18901  df-mnd 18917
This theorem is used by:  issubmnd  18946  prdsmndd  18957  imasmnd2  18961  frmdmnd  19048  isgrpde  19161  oppgmnd  19561  isringd  20515  iscrngd  20516  xrsmcmn  21694  xrs1mnd  21739  rloccring  33825  idlsrgmnd  34039  bj-endmnd  38219  endmndlem  50092
  Copyright terms: Public domain W3C validator