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

Theorem xpsnen 9121
Description: A set is equinumerous to its Cartesian product with a singleton. Proposition 4.22(c) of [Mendelson] p. 254. (Contributed by NM, 4-Jan-2004.) (Revised by Mario Carneiro, 15-Nov-2014.)
Hypotheses
Ref Expression
xpsnen.1 𝐴 ∈ V
xpsnen.2 𝐵 ∈ V
Assertion
Ref Expression
xpsnen (𝐴 × {𝐵}) ≈ 𝐴

Proof of Theorem xpsnen
Dummy variables 𝑥 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 xpsnen.1 . . 3 𝐴 ∈ V
2 snex 5451 . . 3 {𝐵} ∈ V
31, 2xpex 7788 . 2 (𝐴 × {𝐵}) ∈ V
4 elxp 5723 . . 3 (𝑦 ∈ (𝐴 × {𝐵}) ↔ ∃𝑥𝑧(𝑦 = ⟨𝑥, 𝑧⟩ ∧ (𝑥𝐴𝑧 ∈ {𝐵})))
5 inteq 4973 . . . . . . . 8 (𝑦 = ⟨𝑥, 𝑧⟩ → 𝑦 = 𝑥, 𝑧⟩)
65inteqd 4975 . . . . . . 7 (𝑦 = ⟨𝑥, 𝑧⟩ → 𝑦 = 𝑥, 𝑧⟩)
7 vex 3492 . . . . . . . 8 𝑥 ∈ V
8 vex 3492 . . . . . . . 8 𝑧 ∈ V
97, 8op1stb 5491 . . . . . . 7 𝑥, 𝑧⟩ = 𝑥
106, 9eqtrdi 2796 . . . . . 6 (𝑦 = ⟨𝑥, 𝑧⟩ → 𝑦 = 𝑥)
1110, 7eqeltrdi 2852 . . . . 5 (𝑦 = ⟨𝑥, 𝑧⟩ → 𝑦 ∈ V)
1211adantr 480 . . . 4 ((𝑦 = ⟨𝑥, 𝑧⟩ ∧ (𝑥𝐴𝑧 ∈ {𝐵})) → 𝑦 ∈ V)
1312exlimivv 1931 . . 3 (∃𝑥𝑧(𝑦 = ⟨𝑥, 𝑧⟩ ∧ (𝑥𝐴𝑧 ∈ {𝐵})) → 𝑦 ∈ V)
144, 13sylbi 217 . 2 (𝑦 ∈ (𝐴 × {𝐵}) → 𝑦 ∈ V)
15 opex 5484 . . 3 𝑥, 𝐵⟩ ∈ V
1615a1i 11 . 2 (𝑥𝐴 → ⟨𝑥, 𝐵⟩ ∈ V)
17 eqvisset 3508 . . . . 5 (𝑥 = 𝑦 𝑦 ∈ V)
18 ancom 460 . . . . . . . . . . 11 (((𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴) ∧ 𝑧 ∈ {𝐵}) ↔ (𝑧 ∈ {𝐵} ∧ (𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴)))
19 anass 468 . . . . . . . . . . 11 (((𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴) ∧ 𝑧 ∈ {𝐵}) ↔ (𝑦 = ⟨𝑥, 𝑧⟩ ∧ (𝑥𝐴𝑧 ∈ {𝐵})))
20 velsn 4664 . . . . . . . . . . . 12 (𝑧 ∈ {𝐵} ↔ 𝑧 = 𝐵)
2120anbi1i 623 . . . . . . . . . . 11 ((𝑧 ∈ {𝐵} ∧ (𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴)) ↔ (𝑧 = 𝐵 ∧ (𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴)))
2218, 19, 213bitr3i 301 . . . . . . . . . 10 ((𝑦 = ⟨𝑥, 𝑧⟩ ∧ (𝑥𝐴𝑧 ∈ {𝐵})) ↔ (𝑧 = 𝐵 ∧ (𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴)))
2322exbii 1846 . . . . . . . . 9 (∃𝑧(𝑦 = ⟨𝑥, 𝑧⟩ ∧ (𝑥𝐴𝑧 ∈ {𝐵})) ↔ ∃𝑧(𝑧 = 𝐵 ∧ (𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴)))
24 xpsnen.2 . . . . . . . . . 10 𝐵 ∈ V
25 opeq2 4898 . . . . . . . . . . . 12 (𝑧 = 𝐵 → ⟨𝑥, 𝑧⟩ = ⟨𝑥, 𝐵⟩)
2625eqeq2d 2751 . . . . . . . . . . 11 (𝑧 = 𝐵 → (𝑦 = ⟨𝑥, 𝑧⟩ ↔ 𝑦 = ⟨𝑥, 𝐵⟩))
2726anbi1d 630 . . . . . . . . . 10 (𝑧 = 𝐵 → ((𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴) ↔ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴)))
2824, 27ceqsexv 3542 . . . . . . . . 9 (∃𝑧(𝑧 = 𝐵 ∧ (𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴)) ↔ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴))
29 inteq 4973 . . . . . . . . . . . . . 14 (𝑦 = ⟨𝑥, 𝐵⟩ → 𝑦 = 𝑥, 𝐵⟩)
3029inteqd 4975 . . . . . . . . . . . . 13 (𝑦 = ⟨𝑥, 𝐵⟩ → 𝑦 = 𝑥, 𝐵⟩)
317, 24op1stb 5491 . . . . . . . . . . . . 13 𝑥, 𝐵⟩ = 𝑥
3230, 31eqtr2di 2797 . . . . . . . . . . . 12 (𝑦 = ⟨𝑥, 𝐵⟩ → 𝑥 = 𝑦)
3332pm4.71ri 560 . . . . . . . . . . 11 (𝑦 = ⟨𝑥, 𝐵⟩ ↔ (𝑥 = 𝑦𝑦 = ⟨𝑥, 𝐵⟩))
3433anbi1i 623 . . . . . . . . . 10 ((𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴) ↔ ((𝑥 = 𝑦𝑦 = ⟨𝑥, 𝐵⟩) ∧ 𝑥𝐴))
35 anass 468 . . . . . . . . . 10 (((𝑥 = 𝑦𝑦 = ⟨𝑥, 𝐵⟩) ∧ 𝑥𝐴) ↔ (𝑥 = 𝑦 ∧ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴)))
3634, 35bitri 275 . . . . . . . . 9 ((𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴) ↔ (𝑥 = 𝑦 ∧ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴)))
3723, 28, 363bitri 297 . . . . . . . 8 (∃𝑧(𝑦 = ⟨𝑥, 𝑧⟩ ∧ (𝑥𝐴𝑧 ∈ {𝐵})) ↔ (𝑥 = 𝑦 ∧ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴)))
3837exbii 1846 . . . . . . 7 (∃𝑥𝑧(𝑦 = ⟨𝑥, 𝑧⟩ ∧ (𝑥𝐴𝑧 ∈ {𝐵})) ↔ ∃𝑥(𝑥 = 𝑦 ∧ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴)))
394, 38bitri 275 . . . . . 6 (𝑦 ∈ (𝐴 × {𝐵}) ↔ ∃𝑥(𝑥 = 𝑦 ∧ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴)))
40 opeq1 4897 . . . . . . . . 9 (𝑥 = 𝑦 → ⟨𝑥, 𝐵⟩ = ⟨ 𝑦, 𝐵⟩)
4140eqeq2d 2751 . . . . . . . 8 (𝑥 = 𝑦 → (𝑦 = ⟨𝑥, 𝐵⟩ ↔ 𝑦 = ⟨ 𝑦, 𝐵⟩))
42 eleq1 2832 . . . . . . . 8 (𝑥 = 𝑦 → (𝑥𝐴 𝑦𝐴))
4341, 42anbi12d 631 . . . . . . 7 (𝑥 = 𝑦 → ((𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴) ↔ (𝑦 = ⟨ 𝑦, 𝐵⟩ ∧ 𝑦𝐴)))
4443ceqsexgv 3667 . . . . . 6 ( 𝑦 ∈ V → (∃𝑥(𝑥 = 𝑦 ∧ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴)) ↔ (𝑦 = ⟨ 𝑦, 𝐵⟩ ∧ 𝑦𝐴)))
4539, 44bitrid 283 . . . . 5 ( 𝑦 ∈ V → (𝑦 ∈ (𝐴 × {𝐵}) ↔ (𝑦 = ⟨ 𝑦, 𝐵⟩ ∧ 𝑦𝐴)))
4617, 45syl 17 . . . 4 (𝑥 = 𝑦 → (𝑦 ∈ (𝐴 × {𝐵}) ↔ (𝑦 = ⟨ 𝑦, 𝐵⟩ ∧ 𝑦𝐴)))
4746pm5.32ri 575 . . 3 ((𝑦 ∈ (𝐴 × {𝐵}) ∧ 𝑥 = 𝑦) ↔ ((𝑦 = ⟨ 𝑦, 𝐵⟩ ∧ 𝑦𝐴) ∧ 𝑥 = 𝑦))
4832adantr 480 . . . . 5 ((𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴) → 𝑥 = 𝑦)
4948pm4.71i 559 . . . 4 ((𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴) ↔ ((𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴) ∧ 𝑥 = 𝑦))
5043pm5.32ri 575 . . . 4 (((𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴) ∧ 𝑥 = 𝑦) ↔ ((𝑦 = ⟨ 𝑦, 𝐵⟩ ∧ 𝑦𝐴) ∧ 𝑥 = 𝑦))
5149, 50bitr2i 276 . . 3 (((𝑦 = ⟨ 𝑦, 𝐵⟩ ∧ 𝑦𝐴) ∧ 𝑥 = 𝑦) ↔ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴))
52 ancom 460 . . 3 ((𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴) ↔ (𝑥𝐴𝑦 = ⟨𝑥, 𝐵⟩))
5347, 51, 523bitri 297 . 2 ((𝑦 ∈ (𝐴 × {𝐵}) ∧ 𝑥 = 𝑦) ↔ (𝑥𝐴𝑦 = ⟨𝑥, 𝐵⟩))
543, 1, 14, 16, 53en2i 9050 1 (𝐴 × {𝐵}) ≈ 𝐴
Colors of variables: wff setvar class
Syntax hints:  wb 206  wa 395   = wceq 1537  wex 1777  wcel 2108  Vcvv 3488  {csn 4648  cop 4654   cint 4970   class class class wbr 5166   × cxp 5698  cen 9000
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1793  ax-4 1807  ax-5 1909  ax-6 1967  ax-7 2007  ax-8 2110  ax-9 2118  ax-10 2141  ax-11 2158  ax-12 2178  ax-ext 2711  ax-sep 5317  ax-nul 5324  ax-pow 5383  ax-pr 5447  ax-un 7770
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 847  df-3an 1089  df-tru 1540  df-fal 1550  df-ex 1778  df-nf 1782  df-sb 2065  df-mo 2543  df-eu 2572  df-clab 2718  df-cleq 2732  df-clel 2819  df-nfc 2895  df-ral 3068  df-rex 3077  df-rab 3444  df-v 3490  df-dif 3979  df-un 3981  df-in 3983  df-ss 3993  df-nul 4353  df-if 4549  df-pw 4624  df-sn 4649  df-pr 4651  df-op 4655  df-uni 4932  df-int 4971  df-br 5167  df-opab 5229  df-mpt 5250  df-id 5593  df-xp 5706  df-rel 5707  df-cnv 5708  df-co 5709  df-dm 5710  df-rn 5711  df-fun 6575  df-fn 6576  df-f 6577  df-f1 6578  df-fo 6579  df-f1o 6580  df-en 9004
This theorem is referenced by:  xpsneng  9122  endisj  9124  infxpenlem  10082  hashxplem  14482  rexpen  16276  heiborlem3  37773
  Copyright terms: Public domain W3C validator