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

Theorem xpsnen 8085
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 4938 . . 3 {𝐵} ∈ V
31, 2xpex 7004 . 2 (𝐴 × {𝐵}) ∈ V
4 elxp 5165 . . 3 (𝑦 ∈ (𝐴 × {𝐵}) ↔ ∃𝑥𝑧(𝑦 = ⟨𝑥, 𝑧⟩ ∧ (𝑥𝐴𝑧 ∈ {𝐵})))
5 inteq 4510 . . . . . . . 8 (𝑦 = ⟨𝑥, 𝑧⟩ → 𝑦 = 𝑥, 𝑧⟩)
65inteqd 4512 . . . . . . 7 (𝑦 = ⟨𝑥, 𝑧⟩ → 𝑦 = 𝑥, 𝑧⟩)
7 vex 3234 . . . . . . . 8 𝑥 ∈ V
8 vex 3234 . . . . . . . 8 𝑧 ∈ V
97, 8op1stb 4969 . . . . . . 7 𝑥, 𝑧⟩ = 𝑥
106, 9syl6eq 2701 . . . . . 6 (𝑦 = ⟨𝑥, 𝑧⟩ → 𝑦 = 𝑥)
1110, 7syl6eqel 2738 . . . . 5 (𝑦 = ⟨𝑥, 𝑧⟩ → 𝑦 ∈ V)
1211adantr 480 . . . 4 ((𝑦 = ⟨𝑥, 𝑧⟩ ∧ (𝑥𝐴𝑧 ∈ {𝐵})) → 𝑦 ∈ V)
1312exlimivv 1900 . . 3 (∃𝑥𝑧(𝑦 = ⟨𝑥, 𝑧⟩ ∧ (𝑥𝐴𝑧 ∈ {𝐵})) → 𝑦 ∈ V)
144, 13sylbi 207 . 2 (𝑦 ∈ (𝐴 × {𝐵}) → 𝑦 ∈ V)
15 opex 4962 . . 3 𝑥, 𝐵⟩ ∈ V
1615a1i 11 . 2 (𝑥𝐴 → ⟨𝑥, 𝐵⟩ ∈ V)
17 eqvisset 3242 . . . . 5 (𝑥 = 𝑦 𝑦 ∈ V)
18 ancom 465 . . . . . . . . . . 11 (((𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴) ∧ 𝑧 ∈ {𝐵}) ↔ (𝑧 ∈ {𝐵} ∧ (𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴)))
19 anass 682 . . . . . . . . . . 11 (((𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴) ∧ 𝑧 ∈ {𝐵}) ↔ (𝑦 = ⟨𝑥, 𝑧⟩ ∧ (𝑥𝐴𝑧 ∈ {𝐵})))
20 velsn 4226 . . . . . . . . . . . 12 (𝑧 ∈ {𝐵} ↔ 𝑧 = 𝐵)
2120anbi1i 731 . . . . . . . . . . 11 ((𝑧 ∈ {𝐵} ∧ (𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴)) ↔ (𝑧 = 𝐵 ∧ (𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴)))
2218, 19, 213bitr3i 290 . . . . . . . . . 10 ((𝑦 = ⟨𝑥, 𝑧⟩ ∧ (𝑥𝐴𝑧 ∈ {𝐵})) ↔ (𝑧 = 𝐵 ∧ (𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴)))
2322exbii 1814 . . . . . . . . 9 (∃𝑧(𝑦 = ⟨𝑥, 𝑧⟩ ∧ (𝑥𝐴𝑧 ∈ {𝐵})) ↔ ∃𝑧(𝑧 = 𝐵 ∧ (𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴)))
24 xpsnen.2 . . . . . . . . . 10 𝐵 ∈ V
25 opeq2 4434 . . . . . . . . . . . 12 (𝑧 = 𝐵 → ⟨𝑥, 𝑧⟩ = ⟨𝑥, 𝐵⟩)
2625eqeq2d 2661 . . . . . . . . . . 11 (𝑧 = 𝐵 → (𝑦 = ⟨𝑥, 𝑧⟩ ↔ 𝑦 = ⟨𝑥, 𝐵⟩))
2726anbi1d 741 . . . . . . . . . 10 (𝑧 = 𝐵 → ((𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴) ↔ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴)))
2824, 27ceqsexv 3273 . . . . . . . . 9 (∃𝑧(𝑧 = 𝐵 ∧ (𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴)) ↔ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴))
29 inteq 4510 . . . . . . . . . . . . . 14 (𝑦 = ⟨𝑥, 𝐵⟩ → 𝑦 = 𝑥, 𝐵⟩)
3029inteqd 4512 . . . . . . . . . . . . 13 (𝑦 = ⟨𝑥, 𝐵⟩ → 𝑦 = 𝑥, 𝐵⟩)
317, 24op1stb 4969 . . . . . . . . . . . . 13 𝑥, 𝐵⟩ = 𝑥
3230, 31syl6req 2702 . . . . . . . . . . . 12 (𝑦 = ⟨𝑥, 𝐵⟩ → 𝑥 = 𝑦)
3332pm4.71ri 666 . . . . . . . . . . 11 (𝑦 = ⟨𝑥, 𝐵⟩ ↔ (𝑥 = 𝑦𝑦 = ⟨𝑥, 𝐵⟩))
3433anbi1i 731 . . . . . . . . . 10 ((𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴) ↔ ((𝑥 = 𝑦𝑦 = ⟨𝑥, 𝐵⟩) ∧ 𝑥𝐴))
35 anass 682 . . . . . . . . . 10 (((𝑥 = 𝑦𝑦 = ⟨𝑥, 𝐵⟩) ∧ 𝑥𝐴) ↔ (𝑥 = 𝑦 ∧ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴)))
3634, 35bitri 264 . . . . . . . . 9 ((𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴) ↔ (𝑥 = 𝑦 ∧ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴)))
3723, 28, 363bitri 286 . . . . . . . 8 (∃𝑧(𝑦 = ⟨𝑥, 𝑧⟩ ∧ (𝑥𝐴𝑧 ∈ {𝐵})) ↔ (𝑥 = 𝑦 ∧ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴)))
3837exbii 1814 . . . . . . 7 (∃𝑥𝑧(𝑦 = ⟨𝑥, 𝑧⟩ ∧ (𝑥𝐴𝑧 ∈ {𝐵})) ↔ ∃𝑥(𝑥 = 𝑦 ∧ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴)))
394, 38bitri 264 . . . . . 6 (𝑦 ∈ (𝐴 × {𝐵}) ↔ ∃𝑥(𝑥 = 𝑦 ∧ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴)))
40 opeq1 4433 . . . . . . . . 9 (𝑥 = 𝑦 → ⟨𝑥, 𝐵⟩ = ⟨ 𝑦, 𝐵⟩)
4140eqeq2d 2661 . . . . . . . 8 (𝑥 = 𝑦 → (𝑦 = ⟨𝑥, 𝐵⟩ ↔ 𝑦 = ⟨ 𝑦, 𝐵⟩))
42 eleq1 2718 . . . . . . . 8 (𝑥 = 𝑦 → (𝑥𝐴 𝑦𝐴))
4341, 42anbi12d 747 . . . . . . 7 (𝑥 = 𝑦 → ((𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴) ↔ (𝑦 = ⟨ 𝑦, 𝐵⟩ ∧ 𝑦𝐴)))
4443ceqsexgv 3366 . . . . . 6 ( 𝑦 ∈ V → (∃𝑥(𝑥 = 𝑦 ∧ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴)) ↔ (𝑦 = ⟨ 𝑦, 𝐵⟩ ∧ 𝑦𝐴)))
4539, 44syl5bb 272 . . . . 5 ( 𝑦 ∈ V → (𝑦 ∈ (𝐴 × {𝐵}) ↔ (𝑦 = ⟨ 𝑦, 𝐵⟩ ∧ 𝑦𝐴)))
4617, 45syl 17 . . . 4 (𝑥 = 𝑦 → (𝑦 ∈ (𝐴 × {𝐵}) ↔ (𝑦 = ⟨ 𝑦, 𝐵⟩ ∧ 𝑦𝐴)))
4746pm5.32ri 671 . . 3 ((𝑦 ∈ (𝐴 × {𝐵}) ∧ 𝑥 = 𝑦) ↔ ((𝑦 = ⟨ 𝑦, 𝐵⟩ ∧ 𝑦𝐴) ∧ 𝑥 = 𝑦))
4832adantr 480 . . . . 5 ((𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴) → 𝑥 = 𝑦)
4948pm4.71i 665 . . . 4 ((𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴) ↔ ((𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴) ∧ 𝑥 = 𝑦))
5043pm5.32ri 671 . . . 4 (((𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴) ∧ 𝑥 = 𝑦) ↔ ((𝑦 = ⟨ 𝑦, 𝐵⟩ ∧ 𝑦𝐴) ∧ 𝑥 = 𝑦))
5149, 50bitr2i 265 . . 3 (((𝑦 = ⟨ 𝑦, 𝐵⟩ ∧ 𝑦𝐴) ∧ 𝑥 = 𝑦) ↔ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴))
52 ancom 465 . . 3 ((𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴) ↔ (𝑥𝐴𝑦 = ⟨𝑥, 𝐵⟩))
5347, 51, 523bitri 286 . 2 ((𝑦 ∈ (𝐴 × {𝐵}) ∧ 𝑥 = 𝑦) ↔ (𝑥𝐴𝑦 = ⟨𝑥, 𝐵⟩))
543, 1, 14, 16, 53en2i 8035 1 (𝐴 × {𝐵}) ≈ 𝐴
Colors of variables: wff setvar class
Syntax hints:  wb 196  wa 383   = wceq 1523  wex 1744  wcel 2030  Vcvv 3231  {csn 4210  cop 4216   cint 4507   class class class wbr 4685   × cxp 5141  cen 7994
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1762  ax-4 1777  ax-5 1879  ax-6 1945  ax-7 1981  ax-8 2032  ax-9 2039  ax-10 2059  ax-11 2074  ax-12 2087  ax-13 2282  ax-ext 2631  ax-sep 4814  ax-nul 4822  ax-pow 4873  ax-pr 4936  ax-un 6991
This theorem depends on definitions:  df-bi 197  df-or 384  df-an 385  df-3an 1056  df-tru 1526  df-ex 1745  df-nf 1750  df-sb 1938  df-eu 2502  df-mo 2503  df-clab 2638  df-cleq 2644  df-clel 2647  df-nfc 2782  df-ral 2946  df-rex 2947  df-rab 2950  df-v 3233  df-dif 3610  df-un 3612  df-in 3614  df-ss 3621  df-nul 3949  df-if 4120  df-pw 4193  df-sn 4211  df-pr 4213  df-op 4217  df-uni 4469  df-int 4508  df-br 4686  df-opab 4746  df-mpt 4763  df-id 5053  df-xp 5149  df-rel 5150  df-cnv 5151  df-co 5152  df-dm 5153  df-rn 5154  df-fun 5928  df-fn 5929  df-f 5930  df-f1 5931  df-fo 5932  df-f1o 5933  df-en 7998
This theorem is referenced by:  xpsneng  8086  endisj  8088  infxpenlem  8874  pm110.643  9037  hashxplem  13258  rexpen  15001  heiborlem3  33742
  Copyright terms: Public domain W3C validator