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

Theorem iunfi 9288
Description: The finite union of finite sets is finite. Exercise 13 of [Enderton] p. 144. This is the indexed union version of unifi 9289. 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 3319 . . . 4 (𝑤 = ∅ → (∀𝑥𝑤 𝐵 ∈ Fin ↔ ∀𝑥 ∈ ∅ 𝐵 ∈ Fin))
2 iuneq1 4968 . . . . . 6 (𝑤 = ∅ → 𝑥𝑤 𝐵 = 𝑥 ∈ ∅ 𝐵)
3 0iun 5022 . . . . . 6 𝑥 ∈ ∅ 𝐵 = ∅
42, 3eqtrdi 2815 . . . . 5 (𝑤 = ∅ → 𝑥𝑤 𝐵 = ∅)
54eleq1d 2849 . . . 4 (𝑤 = ∅ → ( 𝑥𝑤 𝐵 ∈ Fin ↔ ∅ ∈ Fin))
61, 5imbi12d 346 . . 3 (𝑤 = ∅ → ((∀𝑥𝑤 𝐵 ∈ Fin → 𝑥𝑤 𝐵 ∈ Fin) ↔ (∀𝑥 ∈ ∅ 𝐵 ∈ Fin → ∅ ∈ Fin)))
7 raleq 3319 . . . 4 (𝑤 = 𝑦 → (∀𝑥𝑤 𝐵 ∈ Fin ↔ ∀𝑥𝑦 𝐵 ∈ Fin))
8 iuneq1 4968 . . . . 5 (𝑤 = 𝑦 𝑥𝑤 𝐵 = 𝑥𝑦 𝐵)
98eleq1d 2849 . . . 4 (𝑤 = 𝑦 → ( 𝑥𝑤 𝐵 ∈ Fin ↔ 𝑥𝑦 𝐵 ∈ Fin))
107, 9imbi12d 346 . . 3 (𝑤 = 𝑦 → ((∀𝑥𝑤 𝐵 ∈ Fin → 𝑥𝑤 𝐵 ∈ Fin) ↔ (∀𝑥𝑦 𝐵 ∈ Fin → 𝑥𝑦 𝐵 ∈ Fin)))
11 raleq 3319 . . . 4 (𝑤 = (𝑦 ∪ {𝑧}) → (∀𝑥𝑤 𝐵 ∈ Fin ↔ ∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin))
12 iuneq1 4968 . . . . 5 (𝑤 = (𝑦 ∪ {𝑧}) → 𝑥𝑤 𝐵 = 𝑥 ∈ (𝑦 ∪ {𝑧})𝐵)
1312eleq1d 2849 . . . 4 (𝑤 = (𝑦 ∪ {𝑧}) → ( 𝑥𝑤 𝐵 ∈ Fin ↔ 𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin))
1411, 13imbi12d 346 . . 3 (𝑤 = (𝑦 ∪ {𝑧}) → ((∀𝑥𝑤 𝐵 ∈ Fin → 𝑥𝑤 𝐵 ∈ Fin) ↔ (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → 𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin)))
15 raleq 3319 . . . 4 (𝑤 = 𝐴 → (∀𝑥𝑤 𝐵 ∈ Fin ↔ ∀𝑥𝐴 𝐵 ∈ Fin))
16 iuneq1 4968 . . . . 5 (𝑤 = 𝐴 𝑥𝑤 𝐵 = 𝑥𝐴 𝐵)
1716eleq1d 2849 . . . 4 (𝑤 = 𝐴 → ( 𝑥𝑤 𝐵 ∈ Fin ↔ 𝑥𝐴 𝐵 ∈ Fin))
1815, 17imbi12d 346 . . 3 (𝑤 = 𝐴 → ((∀𝑥𝑤 𝐵 ∈ Fin → 𝑥𝑤 𝐵 ∈ Fin) ↔ (∀𝑥𝐴 𝐵 ∈ Fin → 𝑥𝐴 𝐵 ∈ Fin)))
19 0fi 9025 . . . 4 ∅ ∈ Fin
2019a1i 11 . . 3 (∀𝑥 ∈ ∅ 𝐵 ∈ Fin → ∅ ∈ Fin)
21 ssun1 4132 . . . . . . 7 𝑦 ⊆ (𝑦 ∪ {𝑧})
22 ssralv 4007 . . . . . . 7 (𝑦 ⊆ (𝑦 ∪ {𝑧}) → (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → ∀𝑥𝑦 𝐵 ∈ Fin))
2321, 22ax-mp 5 . . . . . 6 (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → ∀𝑥𝑦 𝐵 ∈ Fin)
2423imim1i 63 . . . . 5 ((∀𝑥𝑦 𝐵 ∈ Fin → 𝑥𝑦 𝐵 ∈ Fin) → (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → 𝑥𝑦 𝐵 ∈ Fin))
25 iunxun 5053 . . . . . . 7 𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 = ( 𝑥𝑦 𝐵 𝑥 ∈ {𝑧}𝐵)
26 nfcv 2926 . . . . . . . . . . 11 𝑦𝐵
27 nfcsb1v 3878 . . . . . . . . . . 11 𝑥𝑦 / 𝑥𝐵
28 csbeq1a 3868 . . . . . . . . . . 11 (𝑥 = 𝑦𝐵 = 𝑦 / 𝑥𝐵)
2926, 27, 28cbviun 4994 . . . . . . . . . 10 𝑥 ∈ {𝑧}𝐵 = 𝑦 ∈ {𝑧}𝑦 / 𝑥𝐵
30 vex 3460 . . . . . . . . . . 11 𝑧 ∈ V
31 csbeq1 3857 . . . . . . . . . . 11 (𝑦 = 𝑧𝑦 / 𝑥𝐵 = 𝑧 / 𝑥𝐵)
3230, 31iunxsn 5050 . . . . . . . . . 10 𝑦 ∈ {𝑧}𝑦 / 𝑥𝐵 = 𝑧 / 𝑥𝐵
3329, 32eqtri 2787 . . . . . . . . 9 𝑥 ∈ {𝑧}𝐵 = 𝑧 / 𝑥𝐵
34 ssun2 4133 . . . . . . . . . . 11 {𝑧} ⊆ (𝑦 ∪ {𝑧})
35 vsnid 4624 . . . . . . . . . . 11 𝑧 ∈ {𝑧}
3634, 35sselii 3935 . . . . . . . . . 10 𝑧 ∈ (𝑦 ∪ {𝑧})
37 nfcsb1v 3878 . . . . . . . . . . . 12 𝑥𝑧 / 𝑥𝐵
3837nfel1 2942 . . . . . . . . . . 11 𝑥𝑧 / 𝑥𝐵 ∈ Fin
39 csbeq1a 3868 . . . . . . . . . . . 12 (𝑥 = 𝑧𝐵 = 𝑧 / 𝑥𝐵)
4039eleq1d 2849 . . . . . . . . . . 11 (𝑥 = 𝑧 → (𝐵 ∈ Fin ↔ 𝑧 / 𝑥𝐵 ∈ Fin))
4138, 40rspc 3571 . . . . . . . . . 10 (𝑧 ∈ (𝑦 ∪ {𝑧}) → (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → 𝑧 / 𝑥𝐵 ∈ Fin))
4236, 41ax-mp 5 . . . . . . . . 9 (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → 𝑧 / 𝑥𝐵 ∈ Fin)
4333, 42eqeltrid 2868 . . . . . . . 8 (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → 𝑥 ∈ {𝑧}𝐵 ∈ Fin)
44 unfi 9141 . . . . . . . 8 (( 𝑥𝑦 𝐵 ∈ Fin ∧ 𝑥 ∈ {𝑧}𝐵 ∈ Fin) → ( 𝑥𝑦 𝐵 𝑥 ∈ {𝑧}𝐵) ∈ Fin)
4543, 44sylan2 602 . . . . . . 7 (( 𝑥𝑦 𝐵 ∈ Fin ∧ ∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin) → ( 𝑥𝑦 𝐵 𝑥 ∈ {𝑧}𝐵) ∈ Fin)
4625, 45eqeltrid 2868 . . . . . 6 (( 𝑥𝑦 𝐵 ∈ Fin ∧ ∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin) → 𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin)
4746expcom 417 . . . . 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 9135 . 2 (𝐴 ∈ Fin → (∀𝑥𝐴 𝐵 ∈ Fin → 𝑥𝐴 𝐵 ∈ Fin))
5150imp 410 1 ((𝐴 ∈ Fin ∧ ∀𝑥𝐴 𝐵 ∈ Fin) → 𝑥𝐴 𝐵 ∈ Fin)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 399   = wceq 1562  wcel 2144  wral 3078  csb 3854  cun 3904  wss 3906  c0 4287  {csn 4584   ciun 4951  Fincfn 8929
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1817  ax-4 1831  ax-5 1932  ax-6 1989  ax-7 2030  ax-8 2146  ax-9 2154  ax-10 2177  ax-11 2193  ax-12 2214  ax-ext 2736  ax-sep 5248  ax-nul 5258  ax-pr 5392  ax-un 7720
This theorem depends on definitions:  df-bi 209  df-an 400  df-or 859  df-3or 1100  df-3an 1101  df-tru 1565  df-fal 1575  df-ex 1802  df-nf 1806  df-sb 2093  df-mo 2568  df-eu 2598  df-clab 2743  df-cleq 2756  df-clel 2839  df-nfc 2913  df-ne 2960  df-ral 3079  df-rex 3089  df-reu 3370  df-rab 3417  df-v 3458  df-sbc 3747  df-csb 3855  df-dif 3909  df-un 3911  df-in 3913  df-ss 3923  df-pss 3926  df-nul 4288  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-iun 4953  df-br 5103  df-opab 5165  df-tr 5210  df-id 5544  df-eprel 5549  df-po 5557  df-so 5558  df-fr 5602  df-we 5604  df-xp 5655  df-rel 5656  df-cnv 5657  df-co 5658  df-dm 5659  df-rn 5660  df-res 5661  df-ima 5662  df-ord 6351  df-on 6352  df-lim 6353  df-suc 6354  df-iota 6479  df-fun 6525  df-fn 6526  df-f 6527  df-f1 6528  df-fo 6529  df-f1o 6530  df-fv 6531  df-om 7849  df-en 8930  df-fin 8933
This theorem is referenced by:  unifi  9289  infssuni  9291  ixpfi  9294  ackbij1lem9  10185  ackbij1lem10  10186  fsuppmapnn0fiublem  14005  fsuppmapnn0fiub  14006  fsum2dlem  15799  fsumcom2  15803  fsumiun  15851  hashiun  15852  hash2iun  15853  ackbijnn  15860  fprod2dlem  16012  fprodcom2  16016  chnfi  18668  ablfaclem3  20131  pmatcoe1fsupp  22763  locfincmp  23588  txcmplem2  23704  alexsubALTlem3  24111  aannenlem1  26394  fsumvma  27279  numedglnl  29347  rabrexfi  32707  fsumiunle  33033  psrmonprod  33851  fedgmullem1  33928  fldextrspunlsplem  33972  poimirlem30  38154  fiphp3d  43401  hbt  43712  cnrefiisplem  46408
  Copyright terms: Public domain W3C validator