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

Theorem isomnd 20096
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 6849 . . . . 5 (𝑚 = 𝑀 → (Base‘𝑚) ∈ V)
2 simpr 485 . . . . . . . . . . 11 ((𝑚 = 𝑀𝑣 = (Base‘𝑚)) → 𝑣 = (Base‘𝑚))
3 fveq2 6834 . . . . . . . . . . . 12 (𝑚 = 𝑀 → (Base‘𝑚) = (Base‘𝑀))
43adantr 481 . . . . . . . . . . 11 ((𝑚 = 𝑀𝑣 = (Base‘𝑚)) → (Base‘𝑚) = (Base‘𝑀))
52, 4eqtrd 2775 . . . . . . . . . 10 ((𝑚 = 𝑀𝑣 = (Base‘𝑚)) → 𝑣 = (Base‘𝑀))
6 isomnd.0 . . . . . . . . . 10 𝐵 = (Base‘𝑀)
75, 6eqtr4di 2793 . . . . . . . . 9 ((𝑚 = 𝑀𝑣 = (Base‘𝑚)) → 𝑣 = 𝐵)
8 raleq 3295 . . . . . . . . . . 11 (𝑣 = 𝐵 → (∀𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)) ↔ ∀𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))))
98raleqbi1dv 3308 . . . . . . . . . 10 (𝑣 = 𝐵 → (∀𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)) ↔ ∀𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))))
109raleqbi1dv 3308 . . . . . . . . 9 (𝑣 = 𝐵 → (∀𝑎𝑣𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)) ↔ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))))
117, 10syl 17 . . . . . . . 8 ((𝑚 = 𝑀𝑣 = (Base‘𝑚)) → (∀𝑎𝑣𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)) ↔ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))))
1211anbi2d 636 . . . . . . 7 ((𝑚 = 𝑀𝑣 = (Base‘𝑚)) → ((𝑚 ∈ Toset ∧ ∀𝑎𝑣𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))) ↔ (𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)))))
1312sbcbidv 3785 . . . . . 6 ((𝑚 = 𝑀𝑣 = (Base‘𝑚)) → ([(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝑣𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))) ↔ [(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)))))
1413sbcbidv 3785 . . . . 5 ((𝑚 = 𝑀𝑣 = (Base‘𝑚)) → ([(+g𝑚) / 𝑝][(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝑣𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))) ↔ [(+g𝑚) / 𝑝][(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)))))
151, 14sbcied 3773 . . . 4 (𝑚 = 𝑀 → ([(Base‘𝑚) / 𝑣][(+g𝑚) / 𝑝][(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝑣𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))) ↔ [(+g𝑚) / 𝑝][(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)))))
16 fvexd 6849 . . . . 5 (𝑚 = 𝑀 → (+g𝑚) ∈ V)
17 simpr 485 . . . . . . . . . . . . . 14 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → 𝑝 = (+g𝑚))
18 fveq2 6834 . . . . . . . . . . . . . . 15 (𝑚 = 𝑀 → (+g𝑚) = (+g𝑀))
1918adantr 481 . . . . . . . . . . . . . 14 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → (+g𝑚) = (+g𝑀))
2017, 19eqtrd 2775 . . . . . . . . . . . . 13 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → 𝑝 = (+g𝑀))
21 isomnd.1 . . . . . . . . . . . . 13 + = (+g𝑀)
2220, 21eqtr4di 2793 . . . . . . . . . . . 12 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → 𝑝 = + )
2322oveqd 7380 . . . . . . . . . . 11 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → (𝑎𝑝𝑐) = (𝑎 + 𝑐))
2422oveqd 7380 . . . . . . . . . . 11 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → (𝑏𝑝𝑐) = (𝑏 + 𝑐))
2523, 24breq12d 5092 . . . . . . . . . 10 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → ((𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐) ↔ (𝑎 + 𝑐)𝑙(𝑏 + 𝑐)))
2625imbi2d 341 . . . . . . . . 9 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → ((𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)) ↔ (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐))))
2726ralbidv 3163 . . . . . . . 8 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → (∀𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)) ↔ ∀𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐))))
28272ralbidv 3204 . . . . . . 7 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → (∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)) ↔ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐))))
2928anbi2d 636 . . . . . 6 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → ((𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))) ↔ (𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐)))))
3029sbcbidv 3785 . . . . 5 ((𝑚 = 𝑀𝑝 = (+g𝑚)) → ([(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))) ↔ [(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐)))))
3116, 30sbcied 3773 . . . 4 (𝑚 = 𝑀 → ([(+g𝑚) / 𝑝][(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))) ↔ [(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐)))))
32 fvexd 6849 . . . . . 6 (𝑚 = 𝑀 → (le‘𝑚) ∈ V)
33 simpr 485 . . . . . . . . . . . . 13 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → 𝑙 = (le‘𝑚))
34 simpl 483 . . . . . . . . . . . . . 14 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → 𝑚 = 𝑀)
3534fveq2d 6838 . . . . . . . . . . . . 13 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → (le‘𝑚) = (le‘𝑀))
3633, 35eqtrd 2775 . . . . . . . . . . . 12 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → 𝑙 = (le‘𝑀))
37 isomnd.2 . . . . . . . . . . . 12 = (le‘𝑀)
3836, 37eqtr4di 2793 . . . . . . . . . . 11 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → 𝑙 = )
3938breqd 5090 . . . . . . . . . 10 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → (𝑎𝑙𝑏𝑎 𝑏))
4038breqd 5090 . . . . . . . . . 10 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → ((𝑎 + 𝑐)𝑙(𝑏 + 𝑐) ↔ (𝑎 + 𝑐) (𝑏 + 𝑐)))
4139, 40imbi12d 345 . . . . . . . . 9 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → ((𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐)) ↔ (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐))))
4241ralbidv 3163 . . . . . . . 8 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → (∀𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐)) ↔ ∀𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐))))
43422ralbidv 3204 . . . . . . 7 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → (∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐)) ↔ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐))))
4443anbi2d 636 . . . . . 6 ((𝑚 = 𝑀𝑙 = (le‘𝑚)) → ((𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐))) ↔ (𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐)))))
4532, 44sbcied 3773 . . . . 5 (𝑚 = 𝑀 → ([(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐))) ↔ (𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐)))))
46 eleq1 2828 . . . . . 6 (𝑚 = 𝑀 → (𝑚 ∈ Toset ↔ 𝑀 ∈ Toset))
4746anbi1d 637 . . . . 5 (𝑚 = 𝑀 → ((𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐))) ↔ (𝑀 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐)))))
4845, 47bitrd 280 . . . 4 (𝑚 = 𝑀 → ([(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎𝑙𝑏 → (𝑎 + 𝑐)𝑙(𝑏 + 𝑐))) ↔ (𝑀 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐)))))
4915, 31, 483bitrd 306 . . 3 (𝑚 = 𝑀 → ([(Base‘𝑚) / 𝑣][(+g𝑚) / 𝑝][(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝑣𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐))) ↔ (𝑀 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐)))))
50 df-omnd 20094 . . 3 oMnd = {𝑚 ∈ Mnd ∣ [(Base‘𝑚) / 𝑣][(+g𝑚) / 𝑝][(le‘𝑚) / 𝑙](𝑚 ∈ Toset ∧ ∀𝑎𝑣𝑏𝑣𝑐𝑣 (𝑎𝑙𝑏 → (𝑎𝑝𝑐)𝑙(𝑏𝑝𝑐)))}
5149, 50elrab2 3639 . 2 (𝑀 ∈ oMnd ↔ (𝑀 ∈ Mnd ∧ (𝑀 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐)))))
52 3anass 1100 . 2 ((𝑀 ∈ Mnd ∧ 𝑀 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐))) ↔ (𝑀 ∈ Mnd ∧ (𝑀 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐)))))
5351, 52bitr4i 279 1 (𝑀 ∈ oMnd ↔ (𝑀 ∈ Mnd ∧ 𝑀 ∈ Toset ∧ ∀𝑎𝐵𝑏𝐵𝑐𝐵 (𝑎 𝑏 → (𝑎 + 𝑐) (𝑏 + 𝑐))))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 207  wa 396  w3a 1092   = wceq 1547  wcel 2119  wral 3054  Vcvv 3432  [wsbc 3730   class class class wbr 5079  cfv 6492  (class class class)co 7363  Basecbs 17177  +gcplusg 17218  lecple 17225  Tosetctos 18378  Mndcmnd 18700  oMndcomnd 20092
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1802  ax-4 1816  ax-5 1917  ax-6 1974  ax-7 2015  ax-8 2121  ax-9 2129  ax-ext 2712  ax-nul 5235
This theorem depends on definitions:  df-bi 208  df-an 397  df-or 854  df-3an 1094  df-tru 1550  df-fal 1560  df-ex 1787  df-sb 2074  df-clab 2719  df-cleq 2732  df-clel 2815  df-ne 2936  df-ral 3055  df-rex 3065  df-rab 3393  df-v 3434  df-sbc 3731  df-dif 3893  df-un 3895  df-ss 3907  df-nul 4269  df-if 4462  df-sn 4563  df-pr 4565  df-op 4569  df-uni 4846  df-br 5080  df-iota 6448  df-fv 6500  df-ov 7366  df-omnd 20094
This theorem is referenced by:  omndmnd  20099  omndtos  20100  omndadd  20101  submomnd  20105  xrge0omnd  21427  zsoring  28426  reofld  33433
  Copyright terms: Public domain W3C validator