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

Theorem xpsnen 8251
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 5064 . . 3 {𝐵} ∈ V
31, 2xpex 7160 . 2 (𝐴 × {𝐵}) ∈ V
4 elxp 5300 . . 3 (𝑦 ∈ (𝐴 × {𝐵}) ↔ ∃𝑥𝑧(𝑦 = ⟨𝑥, 𝑧⟩ ∧ (𝑥𝐴𝑧 ∈ {𝐵})))
5 inteq 4636 . . . . . . . 8 (𝑦 = ⟨𝑥, 𝑧⟩ → 𝑦 = 𝑥, 𝑧⟩)
65inteqd 4638 . . . . . . 7 (𝑦 = ⟨𝑥, 𝑧⟩ → 𝑦 = 𝑥, 𝑧⟩)
7 vex 3353 . . . . . . . 8 𝑥 ∈ V
8 vex 3353 . . . . . . . 8 𝑧 ∈ V
97, 8op1stb 5095 . . . . . . 7 𝑥, 𝑧⟩ = 𝑥
106, 9syl6eq 2815 . . . . . 6 (𝑦 = ⟨𝑥, 𝑧⟩ → 𝑦 = 𝑥)
1110, 7syl6eqel 2852 . . . . 5 (𝑦 = ⟨𝑥, 𝑧⟩ → 𝑦 ∈ V)
1211adantr 472 . . . 4 ((𝑦 = ⟨𝑥, 𝑧⟩ ∧ (𝑥𝐴𝑧 ∈ {𝐵})) → 𝑦 ∈ V)
1312exlimivv 2027 . . 3 (∃𝑥𝑧(𝑦 = ⟨𝑥, 𝑧⟩ ∧ (𝑥𝐴𝑧 ∈ {𝐵})) → 𝑦 ∈ V)
144, 13sylbi 208 . 2 (𝑦 ∈ (𝐴 × {𝐵}) → 𝑦 ∈ V)
15 opex 5088 . . 3 𝑥, 𝐵⟩ ∈ V
1615a1i 11 . 2 (𝑥𝐴 → ⟨𝑥, 𝐵⟩ ∈ V)
17 eqvisset 3364 . . . . 5 (𝑥 = 𝑦 𝑦 ∈ V)
18 ancom 452 . . . . . . . . . . 11 (((𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴) ∧ 𝑧 ∈ {𝐵}) ↔ (𝑧 ∈ {𝐵} ∧ (𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴)))
19 anass 460 . . . . . . . . . . 11 (((𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴) ∧ 𝑧 ∈ {𝐵}) ↔ (𝑦 = ⟨𝑥, 𝑧⟩ ∧ (𝑥𝐴𝑧 ∈ {𝐵})))
20 velsn 4350 . . . . . . . . . . . 12 (𝑧 ∈ {𝐵} ↔ 𝑧 = 𝐵)
2120anbi1i 617 . . . . . . . . . . 11 ((𝑧 ∈ {𝐵} ∧ (𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴)) ↔ (𝑧 = 𝐵 ∧ (𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴)))
2218, 19, 213bitr3i 292 . . . . . . . . . 10 ((𝑦 = ⟨𝑥, 𝑧⟩ ∧ (𝑥𝐴𝑧 ∈ {𝐵})) ↔ (𝑧 = 𝐵 ∧ (𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴)))
2322exbii 1943 . . . . . . . . 9 (∃𝑧(𝑦 = ⟨𝑥, 𝑧⟩ ∧ (𝑥𝐴𝑧 ∈ {𝐵})) ↔ ∃𝑧(𝑧 = 𝐵 ∧ (𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴)))
24 xpsnen.2 . . . . . . . . . 10 𝐵 ∈ V
25 opeq2 4560 . . . . . . . . . . . 12 (𝑧 = 𝐵 → ⟨𝑥, 𝑧⟩ = ⟨𝑥, 𝐵⟩)
2625eqeq2d 2775 . . . . . . . . . . 11 (𝑧 = 𝐵 → (𝑦 = ⟨𝑥, 𝑧⟩ ↔ 𝑦 = ⟨𝑥, 𝐵⟩))
2726anbi1d 623 . . . . . . . . . 10 (𝑧 = 𝐵 → ((𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴) ↔ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴)))
2824, 27ceqsexv 3395 . . . . . . . . 9 (∃𝑧(𝑧 = 𝐵 ∧ (𝑦 = ⟨𝑥, 𝑧⟩ ∧ 𝑥𝐴)) ↔ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴))
29 inteq 4636 . . . . . . . . . . . . . 14 (𝑦 = ⟨𝑥, 𝐵⟩ → 𝑦 = 𝑥, 𝐵⟩)
3029inteqd 4638 . . . . . . . . . . . . 13 (𝑦 = ⟨𝑥, 𝐵⟩ → 𝑦 = 𝑥, 𝐵⟩)
317, 24op1stb 5095 . . . . . . . . . . . . 13 𝑥, 𝐵⟩ = 𝑥
3230, 31syl6req 2816 . . . . . . . . . . . 12 (𝑦 = ⟨𝑥, 𝐵⟩ → 𝑥 = 𝑦)
3332pm4.71ri 556 . . . . . . . . . . 11 (𝑦 = ⟨𝑥, 𝐵⟩ ↔ (𝑥 = 𝑦𝑦 = ⟨𝑥, 𝐵⟩))
3433anbi1i 617 . . . . . . . . . 10 ((𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴) ↔ ((𝑥 = 𝑦𝑦 = ⟨𝑥, 𝐵⟩) ∧ 𝑥𝐴))
35 anass 460 . . . . . . . . . 10 (((𝑥 = 𝑦𝑦 = ⟨𝑥, 𝐵⟩) ∧ 𝑥𝐴) ↔ (𝑥 = 𝑦 ∧ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴)))
3634, 35bitri 266 . . . . . . . . 9 ((𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴) ↔ (𝑥 = 𝑦 ∧ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴)))
3723, 28, 363bitri 288 . . . . . . . 8 (∃𝑧(𝑦 = ⟨𝑥, 𝑧⟩ ∧ (𝑥𝐴𝑧 ∈ {𝐵})) ↔ (𝑥 = 𝑦 ∧ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴)))
3837exbii 1943 . . . . . . 7 (∃𝑥𝑧(𝑦 = ⟨𝑥, 𝑧⟩ ∧ (𝑥𝐴𝑧 ∈ {𝐵})) ↔ ∃𝑥(𝑥 = 𝑦 ∧ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴)))
394, 38bitri 266 . . . . . 6 (𝑦 ∈ (𝐴 × {𝐵}) ↔ ∃𝑥(𝑥 = 𝑦 ∧ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴)))
40 opeq1 4559 . . . . . . . . 9 (𝑥 = 𝑦 → ⟨𝑥, 𝐵⟩ = ⟨ 𝑦, 𝐵⟩)
4140eqeq2d 2775 . . . . . . . 8 (𝑥 = 𝑦 → (𝑦 = ⟨𝑥, 𝐵⟩ ↔ 𝑦 = ⟨ 𝑦, 𝐵⟩))
42 eleq1 2832 . . . . . . . 8 (𝑥 = 𝑦 → (𝑥𝐴 𝑦𝐴))
4341, 42anbi12d 624 . . . . . . 7 (𝑥 = 𝑦 → ((𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴) ↔ (𝑦 = ⟨ 𝑦, 𝐵⟩ ∧ 𝑦𝐴)))
4443ceqsexgv 3488 . . . . . 6 ( 𝑦 ∈ V → (∃𝑥(𝑥 = 𝑦 ∧ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴)) ↔ (𝑦 = ⟨ 𝑦, 𝐵⟩ ∧ 𝑦𝐴)))
4539, 44syl5bb 274 . . . . 5 ( 𝑦 ∈ V → (𝑦 ∈ (𝐴 × {𝐵}) ↔ (𝑦 = ⟨ 𝑦, 𝐵⟩ ∧ 𝑦𝐴)))
4617, 45syl 17 . . . 4 (𝑥 = 𝑦 → (𝑦 ∈ (𝐴 × {𝐵}) ↔ (𝑦 = ⟨ 𝑦, 𝐵⟩ ∧ 𝑦𝐴)))
4746pm5.32ri 571 . . 3 ((𝑦 ∈ (𝐴 × {𝐵}) ∧ 𝑥 = 𝑦) ↔ ((𝑦 = ⟨ 𝑦, 𝐵⟩ ∧ 𝑦𝐴) ∧ 𝑥 = 𝑦))
4832adantr 472 . . . . 5 ((𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴) → 𝑥 = 𝑦)
4948pm4.71i 555 . . . 4 ((𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴) ↔ ((𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴) ∧ 𝑥 = 𝑦))
5043pm5.32ri 571 . . . 4 (((𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴) ∧ 𝑥 = 𝑦) ↔ ((𝑦 = ⟨ 𝑦, 𝐵⟩ ∧ 𝑦𝐴) ∧ 𝑥 = 𝑦))
5149, 50bitr2i 267 . . 3 (((𝑦 = ⟨ 𝑦, 𝐵⟩ ∧ 𝑦𝐴) ∧ 𝑥 = 𝑦) ↔ (𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴))
52 ancom 452 . . 3 ((𝑦 = ⟨𝑥, 𝐵⟩ ∧ 𝑥𝐴) ↔ (𝑥𝐴𝑦 = ⟨𝑥, 𝐵⟩))
5347, 51, 523bitri 288 . 2 ((𝑦 ∈ (𝐴 × {𝐵}) ∧ 𝑥 = 𝑦) ↔ (𝑥𝐴𝑦 = ⟨𝑥, 𝐵⟩))
543, 1, 14, 16, 53en2i 8198 1 (𝐴 × {𝐵}) ≈ 𝐴
Colors of variables: wff setvar class
Syntax hints:  wb 197  wa 384   = wceq 1652  wex 1874  wcel 2155  Vcvv 3350  {csn 4334  cop 4340   cint 4633   class class class wbr 4809   × cxp 5275  cen 8157
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1890  ax-4 1904  ax-5 2005  ax-6 2070  ax-7 2105  ax-8 2157  ax-9 2164  ax-10 2183  ax-11 2198  ax-12 2211  ax-13 2352  ax-ext 2743  ax-sep 4941  ax-nul 4949  ax-pow 5001  ax-pr 5062  ax-un 7147
This theorem depends on definitions:  df-bi 198  df-an 385  df-or 874  df-3an 1109  df-tru 1656  df-ex 1875  df-nf 1879  df-sb 2063  df-mo 2565  df-eu 2582  df-clab 2752  df-cleq 2758  df-clel 2761  df-nfc 2896  df-ral 3060  df-rex 3061  df-rab 3064  df-v 3352  df-dif 3735  df-un 3737  df-in 3739  df-ss 3746  df-nul 4080  df-if 4244  df-pw 4317  df-sn 4335  df-pr 4337  df-op 4341  df-uni 4595  df-int 4634  df-br 4810  df-opab 4872  df-mpt 4889  df-id 5185  df-xp 5283  df-rel 5284  df-cnv 5285  df-co 5286  df-dm 5287  df-rn 5288  df-fun 6070  df-fn 6071  df-f 6072  df-f1 6073  df-fo 6074  df-f1o 6075  df-en 8161
This theorem is referenced by:  xpsneng  8252  endisj  8254  infxpenlem  9087  pm110.643  9252  hashxplem  13421  rexpen  15241  heiborlem3  33966
  Copyright terms: Public domain W3C validator