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

Theorem xpord2lem 8075
Description: Lemma for Cartesian product ordering. Calculate the value of the Cartesian product relation. (Contributed by Scott Fenton, 19-Aug-2024.)
Hypothesis
Ref Expression
xpord2.1 𝑇 = {⟨𝑥, 𝑦⟩ ∣ (𝑥 ∈ (𝐴 × 𝐵) ∧ 𝑦 ∈ (𝐴 × 𝐵) ∧ (((1st𝑥)𝑅(1st𝑦) ∨ (1st𝑥) = (1st𝑦)) ∧ ((2nd𝑥)𝑆(2nd𝑦) ∨ (2nd𝑥) = (2nd𝑦)) ∧ 𝑥𝑦))}
Assertion
Ref Expression
xpord2lem (⟨𝑎, 𝑏𝑇𝑐, 𝑑⟩ ↔ ((𝑎𝐴𝑏𝐵) ∧ (𝑐𝐴𝑑𝐵) ∧ ((𝑎𝑅𝑐𝑎 = 𝑐) ∧ (𝑏𝑆𝑑𝑏 = 𝑑) ∧ (𝑎𝑐𝑏𝑑))))
Distinct variable groups:   𝑥,𝐴,𝑦   𝑥,𝐵,𝑦   𝑥,𝑎,𝑦   𝑥,𝑏,𝑦   𝑥,𝑐,𝑦   𝑥,𝑑,𝑦   𝑥,𝑅,𝑦   𝑥,𝑆,𝑦
Allowed substitution hints:   𝐴(𝑎,𝑏,𝑐,𝑑)   𝐵(𝑎,𝑏,𝑐,𝑑)   𝑅(𝑎,𝑏,𝑐,𝑑)   𝑆(𝑎,𝑏,𝑐,𝑑)   𝑇(𝑥,𝑦,𝑎,𝑏,𝑐,𝑑)

Proof of Theorem xpord2lem
StepHypRef Expression
1 opex 5407 . 2 𝑎, 𝑏⟩ ∈ V
2 opex 5407 . 2 𝑐, 𝑑⟩ ∈ V
3 eleq1 2816 . . . 4 (𝑥 = ⟨𝑎, 𝑏⟩ → (𝑥 ∈ (𝐴 × 𝐵) ↔ ⟨𝑎, 𝑏⟩ ∈ (𝐴 × 𝐵)))
4 opelxp 5655 . . . 4 (⟨𝑎, 𝑏⟩ ∈ (𝐴 × 𝐵) ↔ (𝑎𝐴𝑏𝐵))
53, 4bitrdi 287 . . 3 (𝑥 = ⟨𝑎, 𝑏⟩ → (𝑥 ∈ (𝐴 × 𝐵) ↔ (𝑎𝐴𝑏𝐵)))
6 vex 3440 . . . . . . 7 𝑎 ∈ V
7 vex 3440 . . . . . . 7 𝑏 ∈ V
86, 7op1std 7934 . . . . . 6 (𝑥 = ⟨𝑎, 𝑏⟩ → (1st𝑥) = 𝑎)
98breq1d 5102 . . . . 5 (𝑥 = ⟨𝑎, 𝑏⟩ → ((1st𝑥)𝑅(1st𝑦) ↔ 𝑎𝑅(1st𝑦)))
108eqeq1d 2731 . . . . 5 (𝑥 = ⟨𝑎, 𝑏⟩ → ((1st𝑥) = (1st𝑦) ↔ 𝑎 = (1st𝑦)))
119, 10orbi12d 918 . . . 4 (𝑥 = ⟨𝑎, 𝑏⟩ → (((1st𝑥)𝑅(1st𝑦) ∨ (1st𝑥) = (1st𝑦)) ↔ (𝑎𝑅(1st𝑦) ∨ 𝑎 = (1st𝑦))))
126, 7op2ndd 7935 . . . . . 6 (𝑥 = ⟨𝑎, 𝑏⟩ → (2nd𝑥) = 𝑏)
1312breq1d 5102 . . . . 5 (𝑥 = ⟨𝑎, 𝑏⟩ → ((2nd𝑥)𝑆(2nd𝑦) ↔ 𝑏𝑆(2nd𝑦)))
1412eqeq1d 2731 . . . . 5 (𝑥 = ⟨𝑎, 𝑏⟩ → ((2nd𝑥) = (2nd𝑦) ↔ 𝑏 = (2nd𝑦)))
1513, 14orbi12d 918 . . . 4 (𝑥 = ⟨𝑎, 𝑏⟩ → (((2nd𝑥)𝑆(2nd𝑦) ∨ (2nd𝑥) = (2nd𝑦)) ↔ (𝑏𝑆(2nd𝑦) ∨ 𝑏 = (2nd𝑦))))
16 neeq1 2987 . . . 4 (𝑥 = ⟨𝑎, 𝑏⟩ → (𝑥𝑦 ↔ ⟨𝑎, 𝑏⟩ ≠ 𝑦))
1711, 15, 163anbi123d 1438 . . 3 (𝑥 = ⟨𝑎, 𝑏⟩ → ((((1st𝑥)𝑅(1st𝑦) ∨ (1st𝑥) = (1st𝑦)) ∧ ((2nd𝑥)𝑆(2nd𝑦) ∨ (2nd𝑥) = (2nd𝑦)) ∧ 𝑥𝑦) ↔ ((𝑎𝑅(1st𝑦) ∨ 𝑎 = (1st𝑦)) ∧ (𝑏𝑆(2nd𝑦) ∨ 𝑏 = (2nd𝑦)) ∧ ⟨𝑎, 𝑏⟩ ≠ 𝑦)))
185, 173anbi13d 1440 . 2 (𝑥 = ⟨𝑎, 𝑏⟩ → ((𝑥 ∈ (𝐴 × 𝐵) ∧ 𝑦 ∈ (𝐴 × 𝐵) ∧ (((1st𝑥)𝑅(1st𝑦) ∨ (1st𝑥) = (1st𝑦)) ∧ ((2nd𝑥)𝑆(2nd𝑦) ∨ (2nd𝑥) = (2nd𝑦)) ∧ 𝑥𝑦)) ↔ ((𝑎𝐴𝑏𝐵) ∧ 𝑦 ∈ (𝐴 × 𝐵) ∧ ((𝑎𝑅(1st𝑦) ∨ 𝑎 = (1st𝑦)) ∧ (𝑏𝑆(2nd𝑦) ∨ 𝑏 = (2nd𝑦)) ∧ ⟨𝑎, 𝑏⟩ ≠ 𝑦))))
19 eleq1 2816 . . . 4 (𝑦 = ⟨𝑐, 𝑑⟩ → (𝑦 ∈ (𝐴 × 𝐵) ↔ ⟨𝑐, 𝑑⟩ ∈ (𝐴 × 𝐵)))
20 opelxp 5655 . . . 4 (⟨𝑐, 𝑑⟩ ∈ (𝐴 × 𝐵) ↔ (𝑐𝐴𝑑𝐵))
2119, 20bitrdi 287 . . 3 (𝑦 = ⟨𝑐, 𝑑⟩ → (𝑦 ∈ (𝐴 × 𝐵) ↔ (𝑐𝐴𝑑𝐵)))
22 vex 3440 . . . . . . 7 𝑐 ∈ V
23 vex 3440 . . . . . . 7 𝑑 ∈ V
2422, 23op1std 7934 . . . . . 6 (𝑦 = ⟨𝑐, 𝑑⟩ → (1st𝑦) = 𝑐)
2524breq2d 5104 . . . . 5 (𝑦 = ⟨𝑐, 𝑑⟩ → (𝑎𝑅(1st𝑦) ↔ 𝑎𝑅𝑐))
2624eqeq2d 2740 . . . . 5 (𝑦 = ⟨𝑐, 𝑑⟩ → (𝑎 = (1st𝑦) ↔ 𝑎 = 𝑐))
2725, 26orbi12d 918 . . . 4 (𝑦 = ⟨𝑐, 𝑑⟩ → ((𝑎𝑅(1st𝑦) ∨ 𝑎 = (1st𝑦)) ↔ (𝑎𝑅𝑐𝑎 = 𝑐)))
2822, 23op2ndd 7935 . . . . . 6 (𝑦 = ⟨𝑐, 𝑑⟩ → (2nd𝑦) = 𝑑)
2928breq2d 5104 . . . . 5 (𝑦 = ⟨𝑐, 𝑑⟩ → (𝑏𝑆(2nd𝑦) ↔ 𝑏𝑆𝑑))
3028eqeq2d 2740 . . . . 5 (𝑦 = ⟨𝑐, 𝑑⟩ → (𝑏 = (2nd𝑦) ↔ 𝑏 = 𝑑))
3129, 30orbi12d 918 . . . 4 (𝑦 = ⟨𝑐, 𝑑⟩ → ((𝑏𝑆(2nd𝑦) ∨ 𝑏 = (2nd𝑦)) ↔ (𝑏𝑆𝑑𝑏 = 𝑑)))
32 neeq2 2988 . . . . 5 (𝑦 = ⟨𝑐, 𝑑⟩ → (⟨𝑎, 𝑏⟩ ≠ 𝑦 ↔ ⟨𝑎, 𝑏⟩ ≠ ⟨𝑐, 𝑑⟩))
336, 7opthne 5425 . . . . 5 (⟨𝑎, 𝑏⟩ ≠ ⟨𝑐, 𝑑⟩ ↔ (𝑎𝑐𝑏𝑑))
3432, 33bitrdi 287 . . . 4 (𝑦 = ⟨𝑐, 𝑑⟩ → (⟨𝑎, 𝑏⟩ ≠ 𝑦 ↔ (𝑎𝑐𝑏𝑑)))
3527, 31, 343anbi123d 1438 . . 3 (𝑦 = ⟨𝑐, 𝑑⟩ → (((𝑎𝑅(1st𝑦) ∨ 𝑎 = (1st𝑦)) ∧ (𝑏𝑆(2nd𝑦) ∨ 𝑏 = (2nd𝑦)) ∧ ⟨𝑎, 𝑏⟩ ≠ 𝑦) ↔ ((𝑎𝑅𝑐𝑎 = 𝑐) ∧ (𝑏𝑆𝑑𝑏 = 𝑑) ∧ (𝑎𝑐𝑏𝑑))))
3621, 353anbi23d 1441 . 2 (𝑦 = ⟨𝑐, 𝑑⟩ → (((𝑎𝐴𝑏𝐵) ∧ 𝑦 ∈ (𝐴 × 𝐵) ∧ ((𝑎𝑅(1st𝑦) ∨ 𝑎 = (1st𝑦)) ∧ (𝑏𝑆(2nd𝑦) ∨ 𝑏 = (2nd𝑦)) ∧ ⟨𝑎, 𝑏⟩ ≠ 𝑦)) ↔ ((𝑎𝐴𝑏𝐵) ∧ (𝑐𝐴𝑑𝐵) ∧ ((𝑎𝑅𝑐𝑎 = 𝑐) ∧ (𝑏𝑆𝑑𝑏 = 𝑑) ∧ (𝑎𝑐𝑏𝑑)))))
37 xpord2.1 . 2 𝑇 = {⟨𝑥, 𝑦⟩ ∣ (𝑥 ∈ (𝐴 × 𝐵) ∧ 𝑦 ∈ (𝐴 × 𝐵) ∧ (((1st𝑥)𝑅(1st𝑦) ∨ (1st𝑥) = (1st𝑦)) ∧ ((2nd𝑥)𝑆(2nd𝑦) ∨ (2nd𝑥) = (2nd𝑦)) ∧ 𝑥𝑦))}
381, 2, 18, 36, 37brab 5486 1 (⟨𝑎, 𝑏𝑇𝑐, 𝑑⟩ ↔ ((𝑎𝐴𝑏𝐵) ∧ (𝑐𝐴𝑑𝐵) ∧ ((𝑎𝑅𝑐𝑎 = 𝑐) ∧ (𝑏𝑆𝑑𝑏 = 𝑑) ∧ (𝑎𝑐𝑏𝑑))))
Colors of variables: wff setvar class
Syntax hints:  wb 206  wa 395  wo 847  w3a 1086   = wceq 1540  wcel 2109  wne 2925  cop 4583   class class class wbr 5092  {copab 5154   × cxp 5617  cfv 6482  1st c1st 7922  2nd c2nd 7923
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1910  ax-6 1967  ax-7 2008  ax-8 2111  ax-9 2119  ax-10 2142  ax-11 2158  ax-12 2178  ax-ext 2701  ax-sep 5235  ax-nul 5245  ax-pr 5371  ax-un 7671
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3an 1088  df-tru 1543  df-fal 1553  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2533  df-eu 2562  df-clab 2708  df-cleq 2721  df-clel 2803  df-nfc 2878  df-ne 2926  df-ral 3045  df-rex 3054  df-rab 3395  df-v 3438  df-dif 3906  df-un 3908  df-in 3910  df-ss 3920  df-nul 4285  df-if 4477  df-sn 4578  df-pr 4580  df-op 4584  df-uni 4859  df-br 5093  df-opab 5155  df-mpt 5174  df-id 5514  df-xp 5625  df-rel 5626  df-cnv 5627  df-co 5628  df-dm 5629  df-rn 5630  df-iota 6438  df-fun 6484  df-fv 6490  df-1st 7924  df-2nd 7925
This theorem is referenced by:  poxp2  8076  frxp2  8077  xpord2pred  8078
  Copyright terms: Public domain W3C validator