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

Theorem isomnd 20256
Description: A (left) ordered monoid is a monoid with a total ordering compatible with its operation. (Contributed by Thierry Arnoux, 30-Jan-2018.)
Hypotheses
Ref Expression
isomnd.0 𝐵 = (Base‘𝑀)
isomnd.1 + = (+g𝑀)
isomnd.2 = (le‘𝑀)
Assertion
Ref Expression
isomnd (𝑀 ∈ oMnd ↔ (𝑀 ∈ Mnd ∧ 𝑀 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐))))
Distinct variable groups:   𝑎,𝑏,𝑐,𝐵   𝑀,𝑎,𝑏,𝑐
Allowed substitution hints:   + (𝑎, 𝑏, 𝑐)   (𝑎, 𝑏, 𝑐)

Proof of Theorem isomnd
Dummy variables 𝑙 𝑚 𝑝 𝑣 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 fvexd 6897 . . . . 5 (𝑚 = 𝑀 → (Base‘𝑚) ∈ V)
2 simpr 490 . . . . . . . . . . 11 ((𝑚 = 𝑀𝑣 = (Base‘𝑚)) → 𝑣 = (Base‘𝑚))
3 fveq2 6882 . . . . . . . . . . . 12 (𝑚 = 𝑀 → (Base‘𝑚) = (Base‘𝑀))
43adantr 486 . . . . . . . . . . 11 ((𝑚 = 𝑀𝑣 = (Base‘𝑚)) → (Base‘𝑚) = (Base‘𝑀))
52, 4eqtrd 2797 . . . . . . . . . 10 ((𝑚 = 𝑀𝑣 = (Base‘𝑚)) → 𝑣 = (Base‘𝑀))
6 isomnd.0 . . . . . . . . . 10 𝐵 = (Base‘𝑀)
75, 6eqtr4di 2815 . . . . . . . . 9 ((𝑚 = 𝑀𝑣 = (Base‘𝑚)) → 𝑣 = 𝐵)
8 raleq 3318 . . . . . . . . . . 11 (𝑣 = 𝐵 → (∀𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)) ↔ ∀𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))))
98raleqbi1dv 3331 . . . . . . . . . 10 (𝑣 = 𝐵 → (∀𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)) ↔ ∀𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))))
109raleqbi1dv 3331 . . . . . . . . 9 (𝑣 = 𝐵 → (∀𝑎𝑣𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)) ↔ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))))
117, 10syl 18 . . . . . . . 8 ((𝑚 = 𝑀𝑣 = (Base‘𝑚)) → (∀𝑎𝑣𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)) ↔ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))))
1211anbi2d 642 . . . . . . 7 ((𝑚 = 𝑀𝑣 = (Base‘𝑚)) → ((𝑚 ∈ Toset ∧ ∀𝑎𝑣𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))) ↔ (𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)))))
1312sbcbidv 3797 . . . . . 6 ((𝑚 = 𝑀𝑣 = (Base‘𝑚)) → ([(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝑣𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))) ↔ [(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)))))
1413sbcbidv 3797 . . . . 5 ((𝑚 = 𝑀𝑣 = (Base‘𝑚)) → ([(+g𝑚) / 𝑝][(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝑣𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))) ↔ [(+g𝑚) / 𝑝][(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)))))
151, 14sbcied 3785 . . . 4 (𝑚 = 𝑀 → ([(Base‘𝑚) / 𝑣][(+g𝑚) / 𝑝][(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝑣𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))) ↔ [(+g𝑚) / 𝑝][(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)))))
16 fvexd 6897 . . . . 5 (𝑚 = 𝑀 → (+g𝑚) ∈ V)
17 simpr 490 . . . . . . . . . . . . . 14 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → 𝑝 = (+g𝑚))
18 fveq2 6882 . . . . . . . . . . . . . . 15 (𝑚 = 𝑀 → (+g𝑚) = (+g𝑀))
1918adantr 486 . . . . . . . . . . . . . 14 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → (+g𝑚) = (+g𝑀))
2017, 19eqtrd 2797 . . . . . . . . . . . . 13 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → 𝑝 = (+g𝑀))
21 isomnd.1 . . . . . . . . . . . . 13 + = (+g𝑀)
2220, 21eqtr4di 2815 . . . . . . . . . . . 12 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → 𝑝 = + )
2322oveqd 7434 . . . . . . . . . . 11 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → (𝑎𝑝𝑐) = (𝑎 + 𝑐))
2422oveqd 7434 . . . . . . . . . . 11 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → (𝑏𝑝𝑐) = (𝑏 + 𝑐))
2523, 24breq12d 5120 . . . . . . . . . 10 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → ((𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐) ↔ (𝑎 + 𝑐)𝑙(𝑏 + 𝑐)))
2625imbi2d 343 . . . . . . . . 9 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → ((𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)) ↔ (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐))))
2726ralbidv 3187 . . . . . . . 8 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → (∀𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)) ↔ ∀𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐))))
28272ralbidv 3228 . . . . . . 7 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → (∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)) ↔ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐))))
2928anbi2d 642 . . . . . 6 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → ((𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))) ↔ (𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐)))))
3029sbcbidv 3797 . . . . 5 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → ([(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))) ↔ [(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐)))))
3116, 30sbcied 3785 . . . 4 (𝑚 = 𝑀 → ([(+g𝑚) / 𝑝][(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))) ↔ [(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐)))))
32 fvexd 6897 . . . . . 6 (𝑚 = 𝑀 → (le‘𝑚) ∈ V)
33 simpr 490 . . . . . . . . . . . . 13 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → 𝑙 = (le‘𝑚))
34 simpl 488 . . . . . . . . . . . . . 14 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → 𝑚 = 𝑀)
3534fveq2d 6886 . . . . . . . . . . . . 13 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → (le‘𝑚) = (le‘𝑀))
3633, 35eqtrd 2797 . . . . . . . . . . . 12 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → 𝑙 = (le‘𝑀))
37 isomnd.2 . . . . . . . . . . . 12 = (le‘𝑀)
3836, 37eqtr4di 2815 . . . . . . . . . . 11 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → 𝑙 = )
3938breqd 5118 . . . . . . . . . 10 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → (𝑎𝑙𝑏𝑎 𝑏))
4038breqd 5118 . . . . . . . . . 10 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → ((𝑎 + 𝑐)𝑙(𝑏 + 𝑐) ↔ (𝑎 + 𝑐) (𝑏 + 𝑐)))
4139, 40imbi12d 347 . . . . . . . . 9 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → ((𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐)) ↔ (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐))))
4241ralbidv 3187 . . . . . . . 8 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → (∀𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐)) ↔ ∀𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐))))
43422ralbidv 3228 . . . . . . 7 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → (∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐)) ↔ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐))))
4443anbi2d 642 . . . . . 6 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → ((𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐))) ↔ (𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐)))))
4532, 44sbcied 3785 . . . . 5 (𝑚 = 𝑀 → ([(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐))) ↔ (𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐)))))
46 eleq1 2850 . . . . . 6 (𝑚 = 𝑀 → (𝑚 ∈ Toset ↔ 𝑀 ∈ Toset))
4746anbi1d 643 . . . . 5 (𝑚 = 𝑀 → ((𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐))) ↔ (𝑀 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐)))))
4845, 47bitrd 282 . . . 4 (𝑚 = 𝑀 → ([(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐))) ↔ (𝑀 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐)))))
4915, 31, 483bitrd 308 . . 3 (𝑚 = 𝑀 → ([(Base‘𝑚) / 𝑣][(+g𝑚) / 𝑝][(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝑣𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))) ↔ (𝑀 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐)))))
50 df-omnd 20254 . . 3 oMnd = {𝑚 ∈ Mnd ∣ [(Base‘𝑚) / 𝑣][(+g𝑚) / 𝑝][(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝑣𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)))}
5149, 50elrab2 3652 . 2 (𝑀 ∈ oMnd ↔ (𝑀 ∈ Mnd ∧ (𝑀 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐)))))
52 3anass 1111 . 2 ((𝑀 ∈ Mnd ∧ 𝑀 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐))) ↔ (𝑀 ∈ Mnd ∧ (𝑀 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐)))))
5351, 52bitr4i 281 1 (𝑀 ∈ oMnd ↔ (𝑀 ∈ Mnd ∧ 𝑀 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐))))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wb 209  wa 401  w3a 1103   = wceq 1570  wcel 2145  wral 3078  Vcvv 3453  [wsbc 3742   class class class wbr 5107  cfv 6537  (class class class)co 7417  Basecbs 17307  +gcplusg 17348  lecple 17355  Tosetctos 18508  Mndcmnd 18842  oMndcomnd 20252
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 2734  ax-nul 5267
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-clab 2741  df-cleq 2754  df-clel 2837  df-ne 2958  df-ral 3079  df-rex 3089  df-rab 3415  df-v 3455  df-sbc 3743  df-dif 3905  df-un 3907  df-ss 3919  df-nul 4283  df-if 4486  df-sn 4588  df-pr 4590  df-op 4594  df-uni 4871  df-br 5108  df-iota 6493  df-fv 6545  df-ov 7420  df-omnd 20254
This theorem is used by:  omndmnd  20259  omndtos  20260  omndadd  20261  submomnd  20265  xrge0omnd  21664  zsoring  28682  reofld  33791
  Copyright terms: Public domain W3C validator