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

Theorem iunfi 9257
Description: The finite union of finite sets is finite. Exercise 13 of [Enderton] p. 144. This is the indexed union version of unifi 9258. Note that 𝐵 depends on 𝑥, i.e. can be thought of as 𝐵(𝑥). (Contributed by NM, 23-Mar-2006.) (Proof shortened by Mario Carneiro, 31-Aug-2015.)
Assertion
Ref Expression
iunfi ((𝐴 ∈ Fin ∧ ∀𝑥𝐴 𝐵 ∈ Fin) → 𝑥𝐴 𝐵 ∈ Fin)
Distinct variable group:   𝑥,𝐴
Allowed substitution hint:   𝐵(𝑥)

Proof of Theorem iunfi
Dummy variables 𝑤 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 raleq 3295 . . . 4 (𝑤 = ∅ → (∀𝑥𝑤 𝐵 ∈ Fin ↔ ∀𝑥 ∈ ∅ 𝐵 ∈ Fin))
2 iuneq1 4965 . . . . . 6 (𝑤 = ∅ → 𝑥𝑤 𝐵 = 𝑥 ∈ ∅ 𝐵)
3 0iun 5020 . . . . . 6 𝑥 ∈ ∅ 𝐵 = ∅
42, 3eqtrdi 2788 . . . . 5 (𝑤 = ∅ → 𝑥𝑤 𝐵 = ∅)
54eleq1d 2822 . . . 4 (𝑤 = ∅ → ( 𝑥𝑤 𝐵 ∈ Fin ↔ ∅ ∈ Fin))
61, 5imbi12d 344 . . 3 (𝑤 = ∅ → ((∀𝑥𝑤 𝐵 ∈ Fin → 𝑥𝑤 𝐵 ∈ Fin) ↔ (∀𝑥 ∈ ∅ 𝐵 ∈ Fin → ∅ ∈ Fin)))
7 raleq 3295 . . . 4 (𝑤 = 𝑦 → (∀𝑥𝑤 𝐵 ∈ Fin ↔ ∀𝑥𝑦 𝐵 ∈ Fin))
8 iuneq1 4965 . . . . 5 (𝑤 = 𝑦 𝑥𝑤 𝐵 = 𝑥𝑦 𝐵)
98eleq1d 2822 . . . 4 (𝑤 = 𝑦 → ( 𝑥𝑤 𝐵 ∈ Fin ↔ 𝑥𝑦 𝐵 ∈ Fin))
107, 9imbi12d 344 . . 3 (𝑤 = 𝑦 → ((∀𝑥𝑤 𝐵 ∈ Fin → 𝑥𝑤 𝐵 ∈ Fin) ↔ (∀𝑥𝑦 𝐵 ∈ Fin → 𝑥𝑦 𝐵 ∈ Fin)))
11 raleq 3295 . . . 4 (𝑤 = (𝑦 ∪ {𝑧}) → (∀𝑥𝑤 𝐵 ∈ Fin ↔ ∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin))
12 iuneq1 4965 . . . . 5 (𝑤 = (𝑦 ∪ {𝑧}) → 𝑥𝑤 𝐵 = 𝑥 ∈ (𝑦 ∪ {𝑧})𝐵)
1312eleq1d 2822 . . . 4 (𝑤 = (𝑦 ∪ {𝑧}) → ( 𝑥𝑤 𝐵 ∈ Fin ↔ 𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin))
1411, 13imbi12d 344 . . 3 (𝑤 = (𝑦 ∪ {𝑧}) → ((∀𝑥𝑤 𝐵 ∈ Fin → 𝑥𝑤 𝐵 ∈ Fin) ↔ (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → 𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin)))
15 raleq 3295 . . . 4 (𝑤 = 𝐴 → (∀𝑥𝑤 𝐵 ∈ Fin ↔ ∀𝑥𝐴 𝐵 ∈ Fin))
16 iuneq1 4965 . . . . 5 (𝑤 = 𝐴 𝑥𝑤 𝐵 = 𝑥𝐴 𝐵)
1716eleq1d 2822 . . . 4 (𝑤 = 𝐴 → ( 𝑥𝑤 𝐵 ∈ Fin ↔ 𝑥𝐴 𝐵 ∈ Fin))
1815, 17imbi12d 344 . . 3 (𝑤 = 𝐴 → ((∀𝑥𝑤 𝐵 ∈ Fin → 𝑥𝑤 𝐵 ∈ Fin) ↔ (∀𝑥𝐴 𝐵 ∈ Fin → 𝑥𝐴 𝐵 ∈ Fin)))
19 0fi 8993 . . . 4 ∅ ∈ Fin
2019a1i 11 . . 3 (∀𝑥 ∈ ∅ 𝐵 ∈ Fin → ∅ ∈ Fin)
21 ssun1 4132 . . . . . . 7 𝑦 ⊆ (𝑦 ∪ {𝑧})
22 ssralv 4004 . . . . . . 7 (𝑦 ⊆ (𝑦 ∪ {𝑧}) → (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → ∀𝑥𝑦 𝐵 ∈ Fin))
2321, 22ax-mp 5 . . . . . 6 (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → ∀𝑥𝑦 𝐵 ∈ Fin)
2423imim1i 63 . . . . 5 ((∀𝑥𝑦 𝐵 ∈ Fin → 𝑥𝑦 𝐵 ∈ Fin) → (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → 𝑥𝑦 𝐵 ∈ Fin))
25 iunxun 5051 . . . . . . 7 𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 = ( 𝑥𝑦 𝐵 𝑥 ∈ {𝑧}𝐵)
26 nfcv 2899 . . . . . . . . . . 11 𝑦𝐵
27 nfcsb1v 3875 . . . . . . . . . . 11 𝑥𝑦 / 𝑥𝐵
28 csbeq1a 3865 . . . . . . . . . . 11 (𝑥 = 𝑦𝐵 = 𝑦 / 𝑥𝐵)
2926, 27, 28cbviun 4992 . . . . . . . . . 10 𝑥 ∈ {𝑧}𝐵 = 𝑦 ∈ {𝑧}𝑦 / 𝑥𝐵
30 vex 3446 . . . . . . . . . . 11 𝑧 ∈ V
31 csbeq1 3854 . . . . . . . . . . 11 (𝑦 = 𝑧𝑦 / 𝑥𝐵 = 𝑧 / 𝑥𝐵)
3230, 31iunxsn 5048 . . . . . . . . . 10 𝑦 ∈ {𝑧}𝑦 / 𝑥𝐵 = 𝑧 / 𝑥𝐵
3329, 32eqtri 2760 . . . . . . . . 9 𝑥 ∈ {𝑧}𝐵 = 𝑧 / 𝑥𝐵
34 ssun2 4133 . . . . . . . . . . 11 {𝑧} ⊆ (𝑦 ∪ {𝑧})
35 vsnid 4622 . . . . . . . . . . 11 𝑧 ∈ {𝑧}
3634, 35sselii 3932 . . . . . . . . . 10 𝑧 ∈ (𝑦 ∪ {𝑧})
37 nfcsb1v 3875 . . . . . . . . . . . 12 𝑥𝑧 / 𝑥𝐵
3837nfel1 2916 . . . . . . . . . . 11 𝑥𝑧 / 𝑥𝐵 ∈ Fin
39 csbeq1a 3865 . . . . . . . . . . . 12 (𝑥 = 𝑧𝐵 = 𝑧 / 𝑥𝐵)
4039eleq1d 2822 . . . . . . . . . . 11 (𝑥 = 𝑧 → (𝐵 ∈ Fin ↔ 𝑧 / 𝑥𝐵 ∈ Fin))
4138, 40rspc 3566 . . . . . . . . . 10 (𝑧 ∈ (𝑦 ∪ {𝑧}) → (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → 𝑧 / 𝑥𝐵 ∈ Fin))
4236, 41ax-mp 5 . . . . . . . . 9 (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → 𝑧 / 𝑥𝐵 ∈ Fin)
4333, 42eqeltrid 2841 . . . . . . . 8 (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → 𝑥 ∈ {𝑧}𝐵 ∈ Fin)
44 unfi 9109 . . . . . . . 8 (( 𝑥𝑦 𝐵 ∈ Fin ∧ 𝑥 ∈ {𝑧}𝐵 ∈ Fin) → ( 𝑥𝑦 𝐵 𝑥 ∈ {𝑧}𝐵) ∈ Fin)
4543, 44sylan2 594 . . . . . . 7 (( 𝑥𝑦 𝐵 ∈ Fin ∧ ∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin) → ( 𝑥𝑦 𝐵 𝑥 ∈ {𝑧}𝐵) ∈ Fin)
4625, 45eqeltrid 2841 . . . . . 6 (( 𝑥𝑦 𝐵 ∈ Fin ∧ ∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin) → 𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin)
4746expcom 413 . . . . 5 (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → ( 𝑥𝑦 𝐵 ∈ Fin → 𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin))
4824, 47sylcom 30 . . . 4 ((∀𝑥𝑦 𝐵 ∈ Fin → 𝑥𝑦 𝐵 ∈ Fin) → (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → 𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin))
4948a1i 11 . . 3 (𝑦 ∈ Fin → ((∀𝑥𝑦 𝐵 ∈ Fin → 𝑥𝑦 𝐵 ∈ Fin) → (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → 𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin)))
506, 10, 14, 18, 20, 49findcard2 9103 . 2 (𝐴 ∈ Fin → (∀𝑥𝐴 𝐵 ∈ Fin → 𝑥𝐴 𝐵 ∈ Fin))
5150imp 406 1 ((𝐴 ∈ Fin ∧ ∀𝑥𝐴 𝐵 ∈ Fin) → 𝑥𝐴 𝐵 ∈ Fin)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 395   = wceq 1542  wcel 2114  wral 3052  csb 3851  cun 3901  wss 3903  c0 4287  {csn 4582   ciun 4948  Fincfn 8897
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1912  ax-6 1969  ax-7 2010  ax-8 2116  ax-9 2124  ax-10 2147  ax-11 2163  ax-12 2185  ax-ext 2709  ax-sep 5245  ax-nul 5255  ax-pr 5381  ax-un 7692
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 849  df-3or 1088  df-3an 1089  df-tru 1545  df-fal 1555  df-ex 1782  df-nf 1786  df-sb 2069  df-mo 2540  df-eu 2570  df-clab 2716  df-cleq 2729  df-clel 2812  df-nfc 2886  df-ne 2934  df-ral 3053  df-rex 3063  df-reu 3353  df-rab 3402  df-v 3444  df-sbc 3743  df-csb 3852  df-dif 3906  df-un 3908  df-in 3910  df-ss 3920  df-pss 3923  df-nul 4288  df-if 4482  df-pw 4558  df-sn 4583  df-pr 4585  df-op 4589  df-uni 4866  df-iun 4950  df-br 5101  df-opab 5163  df-tr 5208  df-id 5529  df-eprel 5534  df-po 5542  df-so 5543  df-fr 5587  df-we 5589  df-xp 5640  df-rel 5641  df-cnv 5642  df-co 5643  df-dm 5644  df-rn 5645  df-res 5646  df-ima 5647  df-ord 6330  df-on 6331  df-lim 6332  df-suc 6333  df-iota 6458  df-fun 6504  df-fn 6505  df-f 6506  df-f1 6507  df-fo 6508  df-f1o 6509  df-fv 6510  df-om 7821  df-en 8898  df-fin 8901
This theorem is referenced by:  unifi  9258  infssuni  9260  ixpfi  9263  ackbij1lem9  10151  ackbij1lem10  10152  fsuppmapnn0fiublem  13927  fsuppmapnn0fiub  13928  fsum2dlem  15707  fsumcom2  15711  fsumiun  15758  hashiun  15759  hash2iun  15760  ackbijnn  15765  fprod2dlem  15917  fprodcom2  15921  chnfi  18571  ablfaclem3  20035  pmatcoe1fsupp  22662  locfincmp  23487  txcmplem2  23603  alexsubALTlem3  24010  aannenlem1  26309  fsumvma  27197  numedglnl  29235  rabrexfi  32599  fsumiunle  32927  psrmonprod  33735  fedgmullem1  33813  fldextrspunlsplem  33857  poimirlem30  37930  fiphp3d  43205  hbt  43516  cnrefiisplem  46216
  Copyright terms: Public domain W3C validator