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

Theorem isomnd 20064
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 6857 . . . . 5 (𝑚 = 𝑀 → (Base‘𝑚) ∈ V)
2 simpr 484 . . . . . . . . . . 11 ((𝑚 = 𝑀𝑣 = (Base‘𝑚)) → 𝑣 = (Base‘𝑚))
3 fveq2 6842 . . . . . . . . . . . 12 (𝑚 = 𝑀 → (Base‘𝑚) = (Base‘𝑀))
43adantr 480 . . . . . . . . . . 11 ((𝑚 = 𝑀𝑣 = (Base‘𝑚)) → (Base‘𝑚) = (Base‘𝑀))
52, 4eqtrd 2772 . . . . . . . . . 10 ((𝑚 = 𝑀𝑣 = (Base‘𝑚)) → 𝑣 = (Base‘𝑀))
6 isomnd.0 . . . . . . . . . 10 𝐵 = (Base‘𝑀)
75, 6eqtr4di 2790 . . . . . . . . 9 ((𝑚 = 𝑀𝑣 = (Base‘𝑚)) → 𝑣 = 𝐵)
8 raleq 3295 . . . . . . . . . . 11 (𝑣 = 𝐵 → (∀𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)) ↔ ∀𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))))
98raleqbi1dv 3310 . . . . . . . . . 10 (𝑣 = 𝐵 → (∀𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)) ↔ ∀𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))))
109raleqbi1dv 3310 . . . . . . . . 9 (𝑣 = 𝐵 → (∀𝑎𝑣𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)) ↔ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))))
117, 10syl 17 . . . . . . . 8 ((𝑚 = 𝑀𝑣 = (Base‘𝑚)) → (∀𝑎𝑣𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)) ↔ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))))
1211anbi2d 631 . . . . . . 7 ((𝑚 = 𝑀𝑣 = (Base‘𝑚)) → ((𝑚 ∈ Toset ∧ ∀𝑎𝑣𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))) ↔ (𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)))))
1312sbcbidv 3798 . . . . . 6 ((𝑚 = 𝑀𝑣 = (Base‘𝑚)) → ([(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝑣𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))) ↔ [(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)))))
1413sbcbidv 3798 . . . . 5 ((𝑚 = 𝑀𝑣 = (Base‘𝑚)) → ([(+g𝑚) / 𝑝][(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝑣𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))) ↔ [(+g𝑚) / 𝑝][(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)))))
151, 14sbcied 3786 . . . 4 (𝑚 = 𝑀 → ([(Base‘𝑚) / 𝑣][(+g𝑚) / 𝑝][(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝑣𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))) ↔ [(+g𝑚) / 𝑝][(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)))))
16 fvexd 6857 . . . . 5 (𝑚 = 𝑀 → (+g𝑚) ∈ V)
17 simpr 484 . . . . . . . . . . . . . 14 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → 𝑝 = (+g𝑚))
18 fveq2 6842 . . . . . . . . . . . . . . 15 (𝑚 = 𝑀 → (+g𝑚) = (+g𝑀))
1918adantr 480 . . . . . . . . . . . . . 14 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → (+g𝑚) = (+g𝑀))
2017, 19eqtrd 2772 . . . . . . . . . . . . 13 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → 𝑝 = (+g𝑀))
21 isomnd.1 . . . . . . . . . . . . 13 + = (+g𝑀)
2220, 21eqtr4di 2790 . . . . . . . . . . . 12 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → 𝑝 = + )
2322oveqd 7385 . . . . . . . . . . 11 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → (𝑎𝑝𝑐) = (𝑎 + 𝑐))
2422oveqd 7385 . . . . . . . . . . 11 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → (𝑏𝑝𝑐) = (𝑏 + 𝑐))
2523, 24breq12d 5113 . . . . . . . . . 10 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → ((𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐) ↔ (𝑎 + 𝑐)𝑙(𝑏 + 𝑐)))
2625imbi2d 340 . . . . . . . . 9 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → ((𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)) ↔ (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐))))
2726ralbidv 3161 . . . . . . . 8 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → (∀𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)) ↔ ∀𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐))))
28272ralbidv 3202 . . . . . . 7 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → (∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)) ↔ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐))))
2928anbi2d 631 . . . . . 6 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → ((𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))) ↔ (𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐)))))
3029sbcbidv 3798 . . . . 5 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → ([(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))) ↔ [(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐)))))
3116, 30sbcied 3786 . . . 4 (𝑚 = 𝑀 → ([(+g𝑚) / 𝑝][(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))) ↔ [(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐)))))
32 fvexd 6857 . . . . . 6 (𝑚 = 𝑀 → (le‘𝑚) ∈ V)
33 simpr 484 . . . . . . . . . . . . 13 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → 𝑙 = (le‘𝑚))
34 simpl 482 . . . . . . . . . . . . . 14 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → 𝑚 = 𝑀)
3534fveq2d 6846 . . . . . . . . . . . . 13 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → (le‘𝑚) = (le‘𝑀))
3633, 35eqtrd 2772 . . . . . . . . . . . 12 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → 𝑙 = (le‘𝑀))
37 isomnd.2 . . . . . . . . . . . 12 = (le‘𝑀)
3836, 37eqtr4di 2790 . . . . . . . . . . 11 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → 𝑙 = )
3938breqd 5111 . . . . . . . . . 10 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → (𝑎𝑙𝑏𝑎 𝑏))
4038breqd 5111 . . . . . . . . . 10 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → ((𝑎 + 𝑐)𝑙(𝑏 + 𝑐) ↔ (𝑎 + 𝑐) (𝑏 + 𝑐)))
4139, 40imbi12d 344 . . . . . . . . 9 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → ((𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐)) ↔ (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐))))
4241ralbidv 3161 . . . . . . . 8 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → (∀𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐)) ↔ ∀𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐))))
43422ralbidv 3202 . . . . . . 7 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → (∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐)) ↔ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐))))
4443anbi2d 631 . . . . . 6 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → ((𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐))) ↔ (𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐)))))
4532, 44sbcied 3786 . . . . 5 (𝑚 = 𝑀 → ([(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐))) ↔ (𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐)))))
46 eleq1 2825 . . . . . 6 (𝑚 = 𝑀 → (𝑚 ∈ Toset ↔ 𝑀 ∈ Toset))
4746anbi1d 632 . . . . 5 (𝑚 = 𝑀 → ((𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐))) ↔ (𝑀 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐)))))
4845, 47bitrd 279 . . . 4 (𝑚 = 𝑀 → ([(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐))) ↔ (𝑀 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐)))))
4915, 31, 483bitrd 305 . . 3 (𝑚 = 𝑀 → ([(Base‘𝑚) / 𝑣][(+g𝑚) / 𝑝][(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝑣𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))) ↔ (𝑀 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐)))))
50 df-omnd 20062 . . 3 oMnd = {𝑚 ∈ Mnd ∣ [(Base‘𝑚) / 𝑣][(+g𝑚) / 𝑝][(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝑣𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)))}
5149, 50elrab2 3651 . 2 (𝑀 ∈ oMnd ↔ (𝑀 ∈ Mnd ∧ (𝑀 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐)))))
52 3anass 1095 . 2 ((𝑀 ∈ Mnd ∧ 𝑀 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐))) ↔ (𝑀 ∈ Mnd ∧ (𝑀 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐)))))
5351, 52bitr4i 278 1 (𝑀 ∈ oMnd ↔ (𝑀 ∈ Mnd ∧ 𝑀 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐))))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395  w3a 1087   = wceq 1542  wcel 2114  wral 3052  Vcvv 3442  [wsbc 3742   class class class wbr 5100  cfv 6500  (class class class)co 7368  Basecbs 17148  +gcplusg 17189  lecple 17196  Tosetctos 18349  Mndcmnd 18671  oMndcomnd 20060
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 1969  ax-7 2010  ax-8 2116  ax-9 2124  ax-ext 2709  ax-nul 5253
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 849  df-3an 1089  df-tru 1545  df-fal 1555  df-ex 1782  df-sb 2069  df-clab 2716  df-cleq 2729  df-clel 2812  df-ne 2934  df-ral 3053  df-rex 3063  df-rab 3402  df-v 3444  df-sbc 3743  df-dif 3906  df-un 3908  df-ss 3920  df-nul 4288  df-if 4482  df-sn 4583  df-pr 4585  df-op 4589  df-uni 4866  df-br 5101  df-iota 6456  df-fv 6508  df-ov 7371  df-omnd 20062
This theorem is referenced by:  omndmnd  20067  omndtos  20068  omndadd  20069  submomnd  20073  xrge0omnd  21412  zsoring  28417  reofld  33435
  Copyright terms: Public domain W3C validator