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

Theorem xporderlem 8142
Description: Lemma for lexicographical ordering theorems. (Contributed by Scott Fenton, 16-Mar-2011.)
Hypothesis
Ref Expression
xporderlem.1 𝑇 = {⟨𝑥, 𝑦⟩ ∣ ((𝑥 ∈ (𝐴 × 𝐵) ∧ 𝑦 ∈ (𝐴 × 𝐵)) ∧ ((1st ‘𝑥)𝑅(1st ‘𝑦) ∨ ((1st ‘𝑥) = (1st ‘𝑦) ∧ (2nd ‘𝑥)𝑆(2nd ‘𝑦))))}
Assertion
Ref Expression
xporderlem (⟨𝑎, 𝑏⟩𝑇⟨𝑐, 𝑑⟩ ↔ (((𝑎 ∈ 𝐴 ∧ 𝑐 ∈ 𝐴) ∧ (𝑏 ∈ 𝐵 ∧ 𝑑 ∈ 𝐵)) ∧ (𝑎𝑅𝑐 ∨ (𝑎 = 𝑐 ∧ 𝑏𝑆𝑑))))
Distinct variable groups:   𝑥,𝐴,𝑦   𝑥,𝐵,𝑦   𝑥,𝑅,𝑦   𝑥,𝑆,𝑦   𝑥,𝑎,𝑦   𝑥,𝑏,𝑦   𝑥,𝑐,𝑦   𝑥,𝑑,𝑦
Allowed substitution hints:   𝐴(𝑎, 𝑏, 𝑐, 𝑑)   𝐵(𝑎, 𝑏, 𝑐, 𝑑)   𝑅(𝑎, 𝑏, 𝑐, 𝑑)   𝑆(𝑎, 𝑏, 𝑐, 𝑑)   𝑇(𝑥, 𝑦, 𝑎, 𝑏, 𝑐, 𝑑)

Proof of Theorem xporderlem
StepHypRef Expression
1 df-br 5103 . . 3 (⟨𝑎, 𝑏⟩𝑇⟨𝑐, 𝑑⟩ ↔ ⟨⟨𝑎, 𝑏⟩, ⟨𝑐, 𝑑⟩⟩ ∈ 𝑇)
2 xporderlem.1 . . . 4 𝑇 = {⟨𝑥, 𝑦⟩ ∣ ((𝑥 ∈ (𝐴 × 𝐵) ∧ 𝑦 ∈ (𝐴 × 𝐵)) ∧ ((1st ‘𝑥)𝑅(1st ‘𝑦) ∨ ((1st ‘𝑥) = (1st ‘𝑦) ∧ (2nd ‘𝑥)𝑆(2nd ‘𝑦))))}
32eleq2i 2852 . . 3 (⟨⟨𝑎, 𝑏⟩, ⟨𝑐, 𝑑⟩⟩ ∈ 𝑇 ↔ ⟨⟨𝑎, 𝑏⟩, ⟨𝑐, 𝑑⟩⟩ ∈ {⟨𝑥, 𝑦⟩ ∣ ((𝑥 ∈ (𝐴 × 𝐵) ∧ 𝑦 ∈ (𝐴 × 𝐵)) ∧ ((1st ‘𝑥)𝑅(1st ‘𝑦) ∨ ((1st ‘𝑥) = (1st ‘𝑦) ∧ (2nd ‘𝑥)𝑆(2nd ‘𝑦))))})
41, 3bitri 278 . 2 (⟨𝑎, 𝑏⟩𝑇⟨𝑐, 𝑑⟩ ↔ ⟨⟨𝑎, 𝑏⟩, ⟨𝑐, 𝑑⟩⟩ ∈ {⟨𝑥, 𝑦⟩ ∣ ((𝑥 ∈ (𝐴 × 𝐵) ∧ 𝑦 ∈ (𝐴 × 𝐵)) ∧ ((1st ‘𝑥)𝑅(1st ‘𝑦) ∨ ((1st ‘𝑥) = (1st ‘𝑦) ∧ (2nd ‘𝑥)𝑆(2nd ‘𝑦))))})
5 opex 5431 . . 3 ⟨𝑎, 𝑏⟩ ∈ V
6 opex 5431 . . 3 ⟨𝑐, 𝑑⟩ ∈ V
7 eleq1 2848 . . . . . 6 (𝑥 = ⟨𝑎, 𝑏⟩ → (𝑥 ∈ (𝐴 × 𝐵) ↔ ⟨𝑎, 𝑏⟩ ∈ (𝐴 × 𝐵)))
8 opelxp 5686 . . . . . 6 (⟨𝑎, 𝑏⟩ ∈ (𝐴 × 𝐵) ↔ (𝑎 ∈ 𝐴 ∧ 𝑏 ∈ 𝐵))
97, 8bitrdi 290 . . . . 5 (𝑥 = ⟨𝑎, 𝑏⟩ → (𝑥 ∈ (𝐴 × 𝐵) ↔ (𝑎 ∈ 𝐴 ∧ 𝑏 ∈ 𝐵)))
109anbi1d 643 . . . 4 (𝑥 = ⟨𝑎, 𝑏⟩ → ((𝑥 ∈ (𝐴 × 𝐵) ∧ 𝑦 ∈ (𝐴 × 𝐵)) ↔ ((𝑎 ∈ 𝐴 ∧ 𝑏 ∈ 𝐵) ∧ 𝑦 ∈ (𝐴 × 𝐵))))
11 vex 3454 . . . . . . 7 𝑎 ∈ V
12 vex 3454 . . . . . . 7 𝑏 ∈ V
1311, 12op1std 8012 . . . . . 6 (𝑥 = ⟨𝑎, 𝑏⟩ → (1st ‘𝑥) = 𝑎)
1413breq1d 5112 . . . . 5 (𝑥 = ⟨𝑎, 𝑏⟩ → ((1st ‘𝑥)𝑅(1st ‘𝑦) ↔ 𝑎𝑅(1st ‘𝑦)))
1513eqeq1d 2762 . . . . . 6 (𝑥 = ⟨𝑎, 𝑏⟩ → ((1st ‘𝑥) = (1st ‘𝑦) ↔ 𝑎 = (1st ‘𝑦)))
1611, 12op2ndd 8013 . . . . . . 7 (𝑥 = ⟨𝑎, 𝑏⟩ → (2nd ‘𝑥) = 𝑏)
1716breq1d 5112 . . . . . 6 (𝑥 = ⟨𝑎, 𝑏⟩ → ((2nd ‘𝑥)𝑆(2nd ‘𝑦) ↔ 𝑏𝑆(2nd ‘𝑦)))
1815, 17anbi12d 644 . . . . 5 (𝑥 = ⟨𝑎, 𝑏⟩ → (((1st ‘𝑥) = (1st ‘𝑦) ∧ (2nd ‘𝑥)𝑆(2nd ‘𝑦)) ↔ (𝑎 = (1st ‘𝑦) ∧ 𝑏𝑆(2nd ‘𝑦))))
1914, 18orbi12d 932 . . . 4 (𝑥 = ⟨𝑎, 𝑏⟩ → (((1st ‘𝑥)𝑅(1st ‘𝑦) ∨ ((1st ‘𝑥) = (1st ‘𝑦) ∧ (2nd ‘𝑥)𝑆(2nd ‘𝑦))) ↔ (𝑎𝑅(1st ‘𝑦) ∨ (𝑎 = (1st ‘𝑦) ∧ 𝑏𝑆(2nd ‘𝑦)))))
2010, 19anbi12d 644 . . 3 (𝑥 = ⟨𝑎, 𝑏⟩ → (((𝑥 ∈ (𝐴 × 𝐵) ∧ 𝑦 ∈ (𝐴 × 𝐵)) ∧ ((1st ‘𝑥)𝑅(1st ‘𝑦) ∨ ((1st ‘𝑥) = (1st ‘𝑦) ∧ (2nd ‘𝑥)𝑆(2nd ‘𝑦)))) ↔ (((𝑎 ∈ 𝐴 ∧ 𝑏 ∈ 𝐵) ∧ 𝑦 ∈ (𝐴 × 𝐵)) ∧ (𝑎𝑅(1st ‘𝑦) ∨ (𝑎 = (1st ‘𝑦) ∧ 𝑏𝑆(2nd ‘𝑦))))))
21 eleq1 2848 . . . . . 6 (𝑦 = ⟨𝑐, 𝑑⟩ → (𝑦 ∈ (𝐴 × 𝐵) ↔ ⟨𝑐, 𝑑⟩ ∈ (𝐴 × 𝐵)))
22 opelxp 5686 . . . . . 6 (⟨𝑐, 𝑑⟩ ∈ (𝐴 × 𝐵) ↔ (𝑐 ∈ 𝐴 ∧ 𝑑 ∈ 𝐵))
2321, 22bitrdi 290 . . . . 5 (𝑦 = ⟨𝑐, 𝑑⟩ → (𝑦 ∈ (𝐴 × 𝐵) ↔ (𝑐 ∈ 𝐴 ∧ 𝑑 ∈ 𝐵)))
2423anbi2d 642 . . . 4 (𝑦 = ⟨𝑐, 𝑑⟩ → (((𝑎 ∈ 𝐴 ∧ 𝑏 ∈ 𝐵) ∧ 𝑦 ∈ (𝐴 × 𝐵)) ↔ ((𝑎 ∈ 𝐴 ∧ 𝑏 ∈ 𝐵) ∧ (𝑐 ∈ 𝐴 ∧ 𝑑 ∈ 𝐵))))
25 vex 3454 . . . . . . 7 𝑐 ∈ V
26 vex 3454 . . . . . . 7 𝑑 ∈ V
2725, 26op1std 8012 . . . . . 6 (𝑦 = ⟨𝑐, 𝑑⟩ → (1st ‘𝑦) = 𝑐)
2827breq2d 5114 . . . . 5 (𝑦 = ⟨𝑐, 𝑑⟩ → (𝑎𝑅(1st ‘𝑦) ↔ 𝑎𝑅𝑐))
2927eqeq2d 2771 . . . . . 6 (𝑦 = ⟨𝑐, 𝑑⟩ → (𝑎 = (1st ‘𝑦) ↔ 𝑎 = 𝑐))
3025, 26op2ndd 8013 . . . . . . 7 (𝑦 = ⟨𝑐, 𝑑⟩ → (2nd ‘𝑦) = 𝑑)
3130breq2d 5114 . . . . . 6 (𝑦 = ⟨𝑐, 𝑑⟩ → (𝑏𝑆(2nd ‘𝑦) ↔ 𝑏𝑆𝑑))
3229, 31anbi12d 644 . . . . 5 (𝑦 = ⟨𝑐, 𝑑⟩ → ((𝑎 = (1st ‘𝑦) ∧ 𝑏𝑆(2nd ‘𝑦)) ↔ (𝑎 = 𝑐 ∧ 𝑏𝑆𝑑)))
3328, 32orbi12d 932 . . . 4 (𝑦 = ⟨𝑐, 𝑑⟩ → ((𝑎𝑅(1st ‘𝑦) ∨ (𝑎 = (1st ‘𝑦) ∧ 𝑏𝑆(2nd ‘𝑦))) ↔ (𝑎𝑅𝑐 ∨ (𝑎 = 𝑐 ∧ 𝑏𝑆𝑑))))
3424, 33anbi12d 644 . . 3 (𝑦 = ⟨𝑐, 𝑑⟩ → ((((𝑎 ∈ 𝐴 ∧ 𝑏 ∈ 𝐵) ∧ 𝑦 ∈ (𝐴 × 𝐵)) ∧ (𝑎𝑅(1st ‘𝑦) ∨ (𝑎 = (1st ‘𝑦) ∧ 𝑏𝑆(2nd ‘𝑦)))) ↔ (((𝑎 ∈ 𝐴 ∧ 𝑏 ∈ 𝐵) ∧ (𝑐 ∈ 𝐴 ∧ 𝑑 ∈ 𝐵)) ∧ (𝑎𝑅𝑐 ∨ (𝑎 = 𝑐 ∧ 𝑏𝑆𝑑)))))
355, 6, 20, 34opelopab 5516 . 2 (⟨⟨𝑎, 𝑏⟩, ⟨𝑐, 𝑑⟩⟩ ∈ {⟨𝑥, 𝑦⟩ ∣ ((𝑥 ∈ (𝐴 × 𝐵) ∧ 𝑦 ∈ (𝐴 × 𝐵)) ∧ ((1st ‘𝑥)𝑅(1st ‘𝑦) ∨ ((1st ‘𝑥) = (1st ‘𝑦) ∧ (2nd ‘𝑥)𝑆(2nd ‘𝑦))))} ↔ (((𝑎 ∈ 𝐴 ∧ 𝑏 ∈ 𝐵) ∧ (𝑐 ∈ 𝐴 ∧ 𝑑 ∈ 𝐵)) ∧ (𝑎𝑅𝑐 ∨ (𝑎 = 𝑐 ∧ 𝑏𝑆𝑑))))
36 an4 669 . . 3 (((𝑎 ∈ 𝐴 ∧ 𝑏 ∈ 𝐵) ∧ (𝑐 ∈ 𝐴 ∧ 𝑑 ∈ 𝐵)) ↔ ((𝑎 ∈ 𝐴 ∧ 𝑐 ∈ 𝐴) ∧ (𝑏 ∈ 𝐵 ∧ 𝑑 ∈ 𝐵)))
3736anbi1i 636 . 2 ((((𝑎 ∈ 𝐴 ∧ 𝑏 ∈ 𝐵) ∧ (𝑐 ∈ 𝐴 ∧ 𝑑 ∈ 𝐵)) ∧ (𝑎𝑅𝑐 ∨ (𝑎 = 𝑐 ∧ 𝑏𝑆𝑑))) ↔ (((𝑎 ∈ 𝐴 ∧ 𝑐 ∈ 𝐴) ∧ (𝑏 ∈ 𝐵 ∧ 𝑑 ∈ 𝐵)) ∧ (𝑎𝑅𝑐 ∨ (𝑎 = 𝑐 ∧ 𝑏𝑆𝑑))))
384, 35, 373bitri 300 1 (⟨𝑎, 𝑏⟩𝑇⟨𝑐, 𝑑⟩ ↔ (((𝑎 ∈ 𝐴 ∧ 𝑐 ∈ 𝐴) ∧ (𝑏 ∈ 𝐵 ∧ 𝑑 ∈ 𝐵)) ∧ (𝑎𝑅𝑐 ∨ (𝑎 = 𝑐 ∧ 𝑏𝑆𝑑))))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   ↔ wb 209   ∧ wa 401   ∨ wo 861   = wceq 1569   ∈ wcel 2144  ⟨cop 4834   class class class wbr 5102  {copab 5166   × cxp 5648  ‘cfv 6539  1st c1st 8000  2nd c2nd 8001
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1827  ax-4 1841  ax-5 1942  ax-6 1999  ax-7 2040  ax-8 2146  ax-9 2154  ax-10 2177  ax-11 2193  ax-12 2212  ax-ext 2732  ax-sep 5248  ax-nul 5259  ax-pr 5390  ax-un 7752
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1572  df-fal 1582  df-ex 1812  df-nf 1816  df-sb 2099  df-mo 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-ral 3077  df-rex 3087  df-rab 3413  df-v 3452  df-ss 3896  df-dif 4047  df-in 4091  df-un 4151  df-nul 4279  df-if 4482  df-sn 4585  df-pr 4587  df-op 4835  df-uni 4867  df-br 5103  df-opab 5167  df-mpt 5186  df-id 5545  df-xp 5656  df-rel 5657  df-cnv 5658  df-co 5659  df-dm 5660  df-rn 5661  df-iota 6494  df-fun 6541  df-fv 6547  df-1st 8002  df-2nd 8003
This theorem is used by:  poxp  8143  soxp  8144
  Copyright terms: Public domain W3C validator