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

Theorem xpfi 8386
Description: The Cartesian product of two finite sets is finite. (Contributed by Jeff Madsen, 2-Sep-2009.) (Revised by Mario Carneiro, 12-Mar-2015.)
Assertion
Ref Expression
xpfi ((𝐴 ∈ Fin ∧ 𝐵 ∈ Fin) → (𝐴 × 𝐵) ∈ Fin)

Proof of Theorem xpfi
Dummy variables 𝑤 𝑥 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 xpeq1 5263 . . . . 5 (𝑥 = ∅ → (𝑥 × 𝐵) = (∅ × 𝐵))
21eleq1d 2834 . . . 4 (𝑥 = ∅ → ((𝑥 × 𝐵) ∈ Fin ↔ (∅ × 𝐵) ∈ Fin))
32imbi2d 329 . . 3 (𝑥 = ∅ → ((𝐵 ∈ Fin → (𝑥 × 𝐵) ∈ Fin) ↔ (𝐵 ∈ Fin → (∅ × 𝐵) ∈ Fin)))
4 xpeq1 5263 . . . . 5 (𝑥 = (𝑦 ∖ {𝑧}) → (𝑥 × 𝐵) = ((𝑦 ∖ {𝑧}) × 𝐵))
54eleq1d 2834 . . . 4 (𝑥 = (𝑦 ∖ {𝑧}) → ((𝑥 × 𝐵) ∈ Fin ↔ ((𝑦 ∖ {𝑧}) × 𝐵) ∈ Fin))
65imbi2d 329 . . 3 (𝑥 = (𝑦 ∖ {𝑧}) → ((𝐵 ∈ Fin → (𝑥 × 𝐵) ∈ Fin) ↔ (𝐵 ∈ Fin → ((𝑦 ∖ {𝑧}) × 𝐵) ∈ Fin)))
7 xpeq1 5263 . . . . 5 (𝑥 = 𝑦 → (𝑥 × 𝐵) = (𝑦 × 𝐵))
87eleq1d 2834 . . . 4 (𝑥 = 𝑦 → ((𝑥 × 𝐵) ∈ Fin ↔ (𝑦 × 𝐵) ∈ Fin))
98imbi2d 329 . . 3 (𝑥 = 𝑦 → ((𝐵 ∈ Fin → (𝑥 × 𝐵) ∈ Fin) ↔ (𝐵 ∈ Fin → (𝑦 × 𝐵) ∈ Fin)))
10 xpeq1 5263 . . . . 5 (𝑥 = 𝐴 → (𝑥 × 𝐵) = (𝐴 × 𝐵))
1110eleq1d 2834 . . . 4 (𝑥 = 𝐴 → ((𝑥 × 𝐵) ∈ Fin ↔ (𝐴 × 𝐵) ∈ Fin))
1211imbi2d 329 . . 3 (𝑥 = 𝐴 → ((𝐵 ∈ Fin → (𝑥 × 𝐵) ∈ Fin) ↔ (𝐵 ∈ Fin → (𝐴 × 𝐵) ∈ Fin)))
13 0xp 5339 . . . . 5 (∅ × 𝐵) = ∅
14 0fin 8343 . . . . 5 ∅ ∈ Fin
1513, 14eqeltri 2845 . . . 4 (∅ × 𝐵) ∈ Fin
1615a1i 11 . . 3 (𝐵 ∈ Fin → (∅ × 𝐵) ∈ Fin)
17 neq0 4075 . . . . . . 7 𝑦 = ∅ ↔ ∃𝑤 𝑤𝑦)
18 sneq 4324 . . . . . . . . . . . . . . . 16 (𝑧 = 𝑤 → {𝑧} = {𝑤})
1918difeq2d 3877 . . . . . . . . . . . . . . 15 (𝑧 = 𝑤 → (𝑦 ∖ {𝑧}) = (𝑦 ∖ {𝑤}))
2019xpeq1d 5278 . . . . . . . . . . . . . 14 (𝑧 = 𝑤 → ((𝑦 ∖ {𝑧}) × 𝐵) = ((𝑦 ∖ {𝑤}) × 𝐵))
2120eleq1d 2834 . . . . . . . . . . . . 13 (𝑧 = 𝑤 → (((𝑦 ∖ {𝑧}) × 𝐵) ∈ Fin ↔ ((𝑦 ∖ {𝑤}) × 𝐵) ∈ Fin))
2221imbi2d 329 . . . . . . . . . . . 12 (𝑧 = 𝑤 → ((𝐵 ∈ Fin → ((𝑦 ∖ {𝑧}) × 𝐵) ∈ Fin) ↔ (𝐵 ∈ Fin → ((𝑦 ∖ {𝑤}) × 𝐵) ∈ Fin)))
2322rspcv 3454 . . . . . . . . . . 11 (𝑤𝑦 → (∀𝑧𝑦 (𝐵 ∈ Fin → ((𝑦 ∖ {𝑧}) × 𝐵) ∈ Fin) → (𝐵 ∈ Fin → ((𝑦 ∖ {𝑤}) × 𝐵) ∈ Fin)))
2423adantl 467 . . . . . . . . . 10 (((𝑦 ∈ Fin ∧ 𝐵 ∈ Fin) ∧ 𝑤𝑦) → (∀𝑧𝑦 (𝐵 ∈ Fin → ((𝑦 ∖ {𝑧}) × 𝐵) ∈ Fin) → (𝐵 ∈ Fin → ((𝑦 ∖ {𝑤}) × 𝐵) ∈ Fin)))
25 pm2.27 42 . . . . . . . . . . 11 (𝐵 ∈ Fin → ((𝐵 ∈ Fin → ((𝑦 ∖ {𝑤}) × 𝐵) ∈ Fin) → ((𝑦 ∖ {𝑤}) × 𝐵) ∈ Fin))
2625ad2antlr 698 . . . . . . . . . 10 (((𝑦 ∈ Fin ∧ 𝐵 ∈ Fin) ∧ 𝑤𝑦) → ((𝐵 ∈ Fin → ((𝑦 ∖ {𝑤}) × 𝐵) ∈ Fin) → ((𝑦 ∖ {𝑤}) × 𝐵) ∈ Fin))
27 snex 5036 . . . . . . . . . . . . . . 15 {𝑤} ∈ V
28 xpexg 7106 . . . . . . . . . . . . . . 15 (({𝑤} ∈ V ∧ 𝐵 ∈ Fin) → ({𝑤} × 𝐵) ∈ V)
2927, 28mpan 662 . . . . . . . . . . . . . 14 (𝐵 ∈ Fin → ({𝑤} × 𝐵) ∈ V)
30 id 22 . . . . . . . . . . . . . 14 (𝐵 ∈ Fin → 𝐵 ∈ Fin)
31 vex 3352 . . . . . . . . . . . . . . 15 𝑤 ∈ V
32 2ndconst 7416 . . . . . . . . . . . . . . 15 (𝑤 ∈ V → (2nd ↾ ({𝑤} × 𝐵)):({𝑤} × 𝐵)–1-1-onto𝐵)
3331, 32mp1i 13 . . . . . . . . . . . . . 14 (𝐵 ∈ Fin → (2nd ↾ ({𝑤} × 𝐵)):({𝑤} × 𝐵)–1-1-onto𝐵)
34 f1oen2g 8125 . . . . . . . . . . . . . 14 ((({𝑤} × 𝐵) ∈ V ∧ 𝐵 ∈ Fin ∧ (2nd ↾ ({𝑤} × 𝐵)):({𝑤} × 𝐵)–1-1-onto𝐵) → ({𝑤} × 𝐵) ≈ 𝐵)
3529, 30, 33, 34syl3anc 1475 . . . . . . . . . . . . 13 (𝐵 ∈ Fin → ({𝑤} × 𝐵) ≈ 𝐵)
36 enfii 8332 . . . . . . . . . . . . 13 ((𝐵 ∈ Fin ∧ ({𝑤} × 𝐵) ≈ 𝐵) → ({𝑤} × 𝐵) ∈ Fin)
3735, 36mpdan 659 . . . . . . . . . . . 12 (𝐵 ∈ Fin → ({𝑤} × 𝐵) ∈ Fin)
3837ad2antlr 698 . . . . . . . . . . 11 (((𝑦 ∈ Fin ∧ 𝐵 ∈ Fin) ∧ 𝑤𝑦) → ({𝑤} × 𝐵) ∈ Fin)
39 unfi 8382 . . . . . . . . . . . 12 ((((𝑦 ∖ {𝑤}) × 𝐵) ∈ Fin ∧ ({𝑤} × 𝐵) ∈ Fin) → (((𝑦 ∖ {𝑤}) × 𝐵) ∪ ({𝑤} × 𝐵)) ∈ Fin)
40 xpundir 5312 . . . . . . . . . . . . . . . 16 (((𝑦 ∖ {𝑤}) ∪ {𝑤}) × 𝐵) = (((𝑦 ∖ {𝑤}) × 𝐵) ∪ ({𝑤} × 𝐵))
41 difsnid 4474 . . . . . . . . . . . . . . . . 17 (𝑤𝑦 → ((𝑦 ∖ {𝑤}) ∪ {𝑤}) = 𝑦)
4241xpeq1d 5278 . . . . . . . . . . . . . . . 16 (𝑤𝑦 → (((𝑦 ∖ {𝑤}) ∪ {𝑤}) × 𝐵) = (𝑦 × 𝐵))
4340, 42syl5eqr 2818 . . . . . . . . . . . . . . 15 (𝑤𝑦 → (((𝑦 ∖ {𝑤}) × 𝐵) ∪ ({𝑤} × 𝐵)) = (𝑦 × 𝐵))
4443eleq1d 2834 . . . . . . . . . . . . . 14 (𝑤𝑦 → ((((𝑦 ∖ {𝑤}) × 𝐵) ∪ ({𝑤} × 𝐵)) ∈ Fin ↔ (𝑦 × 𝐵) ∈ Fin))
4544biimpd 219 . . . . . . . . . . . . 13 (𝑤𝑦 → ((((𝑦 ∖ {𝑤}) × 𝐵) ∪ ({𝑤} × 𝐵)) ∈ Fin → (𝑦 × 𝐵) ∈ Fin))
4645adantl 467 . . . . . . . . . . . 12 (((𝑦 ∈ Fin ∧ 𝐵 ∈ Fin) ∧ 𝑤𝑦) → ((((𝑦 ∖ {𝑤}) × 𝐵) ∪ ({𝑤} × 𝐵)) ∈ Fin → (𝑦 × 𝐵) ∈ Fin))
4739, 46syl5 34 . . . . . . . . . . 11 (((𝑦 ∈ Fin ∧ 𝐵 ∈ Fin) ∧ 𝑤𝑦) → ((((𝑦 ∖ {𝑤}) × 𝐵) ∈ Fin ∧ ({𝑤} × 𝐵) ∈ Fin) → (𝑦 × 𝐵) ∈ Fin))
4838, 47mpan2d 666 . . . . . . . . . 10 (((𝑦 ∈ Fin ∧ 𝐵 ∈ Fin) ∧ 𝑤𝑦) → (((𝑦 ∖ {𝑤}) × 𝐵) ∈ Fin → (𝑦 × 𝐵) ∈ Fin))
4924, 26, 483syld 60 . . . . . . . . 9 (((𝑦 ∈ Fin ∧ 𝐵 ∈ Fin) ∧ 𝑤𝑦) → (∀𝑧𝑦 (𝐵 ∈ Fin → ((𝑦 ∖ {𝑧}) × 𝐵) ∈ Fin) → (𝑦 × 𝐵) ∈ Fin))
5049ex 397 . . . . . . . 8 ((𝑦 ∈ Fin ∧ 𝐵 ∈ Fin) → (𝑤𝑦 → (∀𝑧𝑦 (𝐵 ∈ Fin → ((𝑦 ∖ {𝑧}) × 𝐵) ∈ Fin) → (𝑦 × 𝐵) ∈ Fin)))
5150exlimdv 2012 . . . . . . 7 ((𝑦 ∈ Fin ∧ 𝐵 ∈ Fin) → (∃𝑤 𝑤𝑦 → (∀𝑧𝑦 (𝐵 ∈ Fin → ((𝑦 ∖ {𝑧}) × 𝐵) ∈ Fin) → (𝑦 × 𝐵) ∈ Fin)))
5217, 51syl5bi 232 . . . . . 6 ((𝑦 ∈ Fin ∧ 𝐵 ∈ Fin) → (¬ 𝑦 = ∅ → (∀𝑧𝑦 (𝐵 ∈ Fin → ((𝑦 ∖ {𝑧}) × 𝐵) ∈ Fin) → (𝑦 × 𝐵) ∈ Fin)))
53 xpeq1 5263 . . . . . . . 8 (𝑦 = ∅ → (𝑦 × 𝐵) = (∅ × 𝐵))
5453, 15syl6eqel 2857 . . . . . . 7 (𝑦 = ∅ → (𝑦 × 𝐵) ∈ Fin)
5554a1d 25 . . . . . 6 (𝑦 = ∅ → (∀𝑧𝑦 (𝐵 ∈ Fin → ((𝑦 ∖ {𝑧}) × 𝐵) ∈ Fin) → (𝑦 × 𝐵) ∈ Fin))
5652, 55pm2.61d2 173 . . . . 5 ((𝑦 ∈ Fin ∧ 𝐵 ∈ Fin) → (∀𝑧𝑦 (𝐵 ∈ Fin → ((𝑦 ∖ {𝑧}) × 𝐵) ∈ Fin) → (𝑦 × 𝐵) ∈ Fin))
5756ex 397 . . . 4 (𝑦 ∈ Fin → (𝐵 ∈ Fin → (∀𝑧𝑦 (𝐵 ∈ Fin → ((𝑦 ∖ {𝑧}) × 𝐵) ∈ Fin) → (𝑦 × 𝐵) ∈ Fin)))
5857com23 86 . . 3 (𝑦 ∈ Fin → (∀𝑧𝑦 (𝐵 ∈ Fin → ((𝑦 ∖ {𝑧}) × 𝐵) ∈ Fin) → (𝐵 ∈ Fin → (𝑦 × 𝐵) ∈ Fin)))
593, 6, 9, 12, 16, 58findcard 8354 . 2 (𝐴 ∈ Fin → (𝐵 ∈ Fin → (𝐴 × 𝐵) ∈ Fin))
6059imp 393 1 ((𝐴 ∈ Fin ∧ 𝐵 ∈ Fin) → (𝐴 × 𝐵) ∈ Fin)
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wa 382   = wceq 1630  wex 1851  wcel 2144  wral 3060  Vcvv 3349  cdif 3718  cun 3719  c0 4061  {csn 4314   class class class wbr 4784   × cxp 5247  cres 5251  1-1-ontowf1o 6030  2nd c2nd 7313  cen 8105  Fincfn 8108
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1869  ax-4 1884  ax-5 1990  ax-6 2056  ax-7 2092  ax-8 2146  ax-9 2153  ax-10 2173  ax-11 2189  ax-12 2202  ax-13 2407  ax-ext 2750  ax-sep 4912  ax-nul 4920  ax-pow 4971  ax-pr 5034  ax-un 7095
This theorem depends on definitions:  df-bi 197  df-an 383  df-or 827  df-3or 1071  df-3an 1072  df-tru 1633  df-ex 1852  df-nf 1857  df-sb 2049  df-eu 2621  df-mo 2622  df-clab 2757  df-cleq 2763  df-clel 2766  df-nfc 2901  df-ne 2943  df-ral 3065  df-rex 3066  df-reu 3067  df-rab 3069  df-v 3351  df-sbc 3586  df-csb 3681  df-dif 3724  df-un 3726  df-in 3728  df-ss 3735  df-pss 3737  df-nul 4062  df-if 4224  df-pw 4297  df-sn 4315  df-pr 4317  df-tp 4319  df-op 4321  df-uni 4573  df-int 4610  df-iun 4654  df-br 4785  df-opab 4845  df-mpt 4862  df-tr 4885  df-id 5157  df-eprel 5162  df-po 5170  df-so 5171  df-fr 5208  df-we 5210  df-xp 5255  df-rel 5256  df-cnv 5257  df-co 5258  df-dm 5259  df-rn 5260  df-res 5261  df-ima 5262  df-pred 5823  df-ord 5869  df-on 5870  df-lim 5871  df-suc 5872  df-iota 5994  df-fun 6033  df-fn 6034  df-f 6035  df-f1 6036  df-fo 6037  df-f1o 6038  df-fv 6039  df-ov 6795  df-oprab 6796  df-mpt2 6797  df-om 7212  df-1st 7314  df-2nd 7315  df-wrecs 7558  df-recs 7620  df-rdg 7658  df-1o 7712  df-oadd 7716  df-er 7895  df-en 8109  df-fin 8112
This theorem is referenced by:  3xpfi  8387  mapfi  8417  fsuppxpfi  8447  infxpenlem  9035  ackbij1lem9  9251  ackbij1lem10  9252  hashxplem  13421  hashmap  13423  fsum2dlem  14708  fsumcom2  14712  ackbijnn  14766  fprod2dlem  14916  fprodcom2  14920  rexpen  15162  crth  15689  phimullem  15690  prmreclem3  15828  ablfaclem3  18693  gsumdixp  18816  gsumbagdiag  19590  psrass1lem  19591  evlslem2  19726  frlmbas3  20331  mamudm  20410  mamufacex  20411  mamures  20412  gsumcom3fi  20422  mamucl  20423  mamudi  20425  mamudir  20426  mamuvs1  20427  mamuvs2  20428  matsca2  20442  matbas2  20443  matplusg2  20449  matvsca2  20450  matplusgcell  20455  matsubgcell  20456  matvscacell  20458  matgsum  20459  mamumat1cl  20461  mattposcl  20476  mdetrsca  20626  mdetunilem9  20643  pmatcoe1fsupp  20725  tsmsxplem1  22175  tsmsxplem2  22176  tsmsxp  22177  i1fadd  23681  i1fmul  23682  itg1addlem4  23685  fsumdvdsmul  25141  fsumvma  25158  lgsquadlem1  25325  lgsquadlem2  25326  lgsquadlem3  25327  relfi  29747  fsumiunle  29909  sibfof  30736  hgt750lemb  31068  erdszelem10  31514  matunitlindflem2  33732  matunitlindf  33733  poimirlem26  33761  poimirlem27  33762  poimirlem28  33763  cntotbnd  33920  pellex  37918  fourierdlem42  40877  etransclem44  41006  etransclem45  41007  etransclem47  41009
  Copyright terms: Public domain W3C validator