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

Theorem iunfi 9300
Description: The finite union of finite sets is finite. Exercise 13 of [Enderton] p. 144. This is the indexed union version of unifi 9301. 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 3326 . . . 4 (𝑤 = ∅ → (∀𝑥𝑤 𝐵 ∈ Fin ↔ ∀𝑥 ∈ ∅ 𝐵 ∈ Fin))
2 iuneq1 4975 . . . . . 6 (𝑤 = ∅ → 𝑥𝑤 𝐵 = 𝑥 ∈ ∅ 𝐵)
3 0iun 5029 . . . . . 6 𝑥 ∈ ∅ 𝐵 = ∅
42, 3eqtrdi 2820 . . . . 5 (𝑤 = ∅ → 𝑥𝑤 𝐵 = ∅)
54eleq1d 2854 . . . 4 (𝑤 = ∅ → ( 𝑥𝑤 𝐵 ∈ Fin ↔ ∅ ∈ Fin))
61, 5imbi12d 347 . . 3 (𝑤 = ∅ → ((∀𝑥𝑤 𝐵 ∈ Fin → 𝑥𝑤 𝐵 ∈ Fin) ↔ (∀𝑥 ∈ ∅ 𝐵 ∈ Fin → ∅ ∈ Fin)))
7 raleq 3326 . . . 4 (𝑤 = 𝑦 → (∀𝑥𝑤 𝐵 ∈ Fin ↔ ∀𝑥𝑦 𝐵 ∈ Fin))
8 iuneq1 4975 . . . . 5 (𝑤 = 𝑦 𝑥𝑤 𝐵 = 𝑥𝑦 𝐵)
98eleq1d 2854 . . . 4 (𝑤 = 𝑦 → ( 𝑥𝑤 𝐵 ∈ Fin ↔ 𝑥𝑦 𝐵 ∈ Fin))
107, 9imbi12d 347 . . 3 (𝑤 = 𝑦 → ((∀𝑥𝑤 𝐵 ∈ Fin → 𝑥𝑤 𝐵 ∈ Fin) ↔ (∀𝑥𝑦 𝐵 ∈ Fin → 𝑥𝑦 𝐵 ∈ Fin)))
11 raleq 3326 . . . 4 (𝑤 = (𝑦 ∪ {𝑧}) → (∀𝑥𝑤 𝐵 ∈ Fin ↔ ∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin))
12 iuneq1 4975 . . . . 5 (𝑤 = (𝑦 ∪ {𝑧}) → 𝑥𝑤 𝐵 = 𝑥 ∈ (𝑦 ∪ {𝑧})𝐵)
1312eleq1d 2854 . . . 4 (𝑤 = (𝑦 ∪ {𝑧}) → ( 𝑥𝑤 𝐵 ∈ Fin ↔ 𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin))
1411, 13imbi12d 347 . . 3 (𝑤 = (𝑦 ∪ {𝑧}) → ((∀𝑥𝑤 𝐵 ∈ Fin → 𝑥𝑤 𝐵 ∈ Fin) ↔ (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → 𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin)))
15 raleq 3326 . . . 4 (𝑤 = 𝐴 → (∀𝑥𝑤 𝐵 ∈ Fin ↔ ∀𝑥𝐴 𝐵 ∈ Fin))
16 iuneq1 4975 . . . . 5 (𝑤 = 𝐴 𝑥𝑤 𝐵 = 𝑥𝐴 𝐵)
1716eleq1d 2854 . . . 4 (𝑤 = 𝐴 → ( 𝑥𝑤 𝐵 ∈ Fin ↔ 𝑥𝐴 𝐵 ∈ Fin))
1815, 17imbi12d 347 . . 3 (𝑤 = 𝐴 → ((∀𝑥𝑤 𝐵 ∈ Fin → 𝑥𝑤 𝐵 ∈ Fin) ↔ (∀𝑥𝐴 𝐵 ∈ Fin → 𝑥𝐴 𝐵 ∈ Fin)))
19 0fi 9039 . . . 4 ∅ ∈ Fin
2019a1i 11 . . 3 (∀𝑥 ∈ ∅ 𝐵 ∈ Fin → ∅ ∈ Fin)
21 ssun1 4137 . . . . . . 7 𝑦 ⊆ (𝑦 ∪ {𝑧})
22 ssralv 4012 . . . . . . 7 (𝑦 ⊆ (𝑦 ∪ {𝑧}) → (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → ∀𝑥𝑦 𝐵 ∈ Fin))
2321, 22ax-mp 5 . . . . . 6 (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → ∀𝑥𝑦 𝐵 ∈ Fin)
2423imim1i 64 . . . . 5 ((∀𝑥𝑦 𝐵 ∈ Fin → 𝑥𝑦 𝐵 ∈ Fin) → (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → 𝑥𝑦 𝐵 ∈ Fin))
25 iunxun 5062 . . . . . . 7 𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 = ( 𝑥𝑦 𝐵 𝑥 ∈ {𝑧}𝐵)
26 nfcv 2931 . . . . . . . . . . 11 𝑦𝐵
27 nfcsb1v 3883 . . . . . . . . . . 11 𝑥𝑦 / 𝑥𝐵
28 csbeq1a 3873 . . . . . . . . . . 11 (𝑥 = 𝑦𝐵 = 𝑦 / 𝑥𝐵)
2926, 27, 28cbviun 5001 . . . . . . . . . 10 𝑥 ∈ {𝑧}𝐵 = 𝑦 ∈ {𝑧}𝑦 / 𝑥𝐵
30 vex 3465 . . . . . . . . . . 11 𝑧 ∈ V
31 csbeq1 3862 . . . . . . . . . . 11 (𝑦 = 𝑧𝑦 / 𝑥𝐵 = 𝑧 / 𝑥𝐵)
3230, 31iunxsn 5059 . . . . . . . . . 10 𝑦 ∈ {𝑧}𝑦 / 𝑥𝐵 = 𝑧 / 𝑥𝐵
3329, 32eqtri 2792 . . . . . . . . 9 𝑥 ∈ {𝑧}𝐵 = 𝑧 / 𝑥𝐵
34 ssun2 4138 . . . . . . . . . . 11 {𝑧} ⊆ (𝑦 ∪ {𝑧})
35 vsnid 4632 . . . . . . . . . . 11 𝑧 ∈ {𝑧}
3634, 35sselii 3940 . . . . . . . . . 10 𝑧 ∈ (𝑦 ∪ {𝑧})
37 nfcsb1v 3883 . . . . . . . . . . . 12 𝑥𝑧 / 𝑥𝐵
3837nfel1 2947 . . . . . . . . . . 11 𝑥𝑧 / 𝑥𝐵 ∈ Fin
39 csbeq1a 3873 . . . . . . . . . . . 12 (𝑥 = 𝑧𝐵 = 𝑧 / 𝑥𝐵)
4039eleq1d 2854 . . . . . . . . . . 11 (𝑥 = 𝑧 → (𝐵 ∈ Fin ↔ 𝑧 / 𝑥𝐵 ∈ Fin))
4138, 40rspc 3576 . . . . . . . . . 10 (𝑧 ∈ (𝑦 ∪ {𝑧}) → (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → 𝑧 / 𝑥𝐵 ∈ Fin))
4236, 41ax-mp 5 . . . . . . . . 9 (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → 𝑧 / 𝑥𝐵 ∈ Fin)
4333, 42eqeltrid 2873 . . . . . . . 8 (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → 𝑥 ∈ {𝑧}𝐵 ∈ Fin)
44 unfi 9155 . . . . . . . 8 (( 𝑥𝑦 𝐵 ∈ Fin ∧ 𝑥 ∈ {𝑧}𝐵 ∈ Fin) → ( 𝑥𝑦 𝐵 𝑥 ∈ {𝑧}𝐵) ∈ Fin)
4543, 44sylan2 604 . . . . . . 7 (( 𝑥𝑦 𝐵 ∈ Fin ∧ ∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin) → ( 𝑥𝑦 𝐵 𝑥 ∈ {𝑧}𝐵) ∈ Fin)
4625, 45eqeltrid 2873 . . . . . 6 (( 𝑥𝑦 𝐵 ∈ Fin ∧ ∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin) → 𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin)
4746expcom 418 . . . . 5 (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → ( 𝑥𝑦 𝐵 ∈ Fin → 𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin))
4824, 47sylcom 31 . . . 4 ((∀𝑥𝑦 𝐵 ∈ Fin → 𝑥𝑦 𝐵 ∈ Fin) → (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → 𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin))
4948a1i 11 . . 3 (𝑦 ∈ Fin → ((∀𝑥𝑦 𝐵 ∈ Fin → 𝑥𝑦 𝐵 ∈ Fin) → (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → 𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin)))
506, 10, 14, 18, 20, 49findcard2 9149 . 2 (𝐴 ∈ Fin → (∀𝑥𝐴 𝐵 ∈ Fin → 𝑥𝐴 𝐵 ∈ Fin))
5150imp 411 1 ((𝐴 ∈ Fin ∧ ∀𝑥𝐴 𝐵 ∈ Fin) → 𝑥𝐴 𝐵 ∈ Fin)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 400   = wceq 1567  wcel 2149  wral 3085  csb 3859  cun 3909  wss 3911  c0 4292  {csn 4592   ciun 4958  Fincfn 8943
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1822  ax-4 1836  ax-5 1937  ax-6 1994  ax-7 2035  ax-8 2151  ax-9 2159  ax-10 2182  ax-11 2198  ax-12 2219  ax-ext 2741  ax-sep 5259  ax-nul 5271  ax-pr 5405  ax-un 7733
This theorem depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3or 1102  df-3an 1103  df-tru 1570  df-fal 1580  df-ex 1807  df-nf 1811  df-sb 2098  df-mo 2573  df-eu 2603  df-clab 2748  df-cleq 2761  df-clel 2844  df-nfc 2918  df-ne 2965  df-ral 3086  df-rex 3096  df-reu 3376  df-rab 3423  df-v 3463  df-sbc 3752  df-csb 3860  df-dif 3914  df-un 3916  df-in 3918  df-ss 3928  df-pss 3931  df-nul 4293  df-if 4491  df-pw 4567  df-sn 4593  df-pr 4595  df-op 4599  df-uni 4875  df-iun 4960  df-br 5112  df-opab 5176  df-tr 5221  df-id 5557  df-eprel 5562  df-po 5570  df-so 5571  df-fr 5615  df-we 5617  df-xp 5668  df-rel 5669  df-cnv 5670  df-co 5671  df-dm 5672  df-rn 5673  df-res 5674  df-ima 5675  df-ord 6364  df-on 6365  df-lim 6366  df-suc 6367  df-iota 6493  df-fun 6539  df-fn 6540  df-f 6541  df-f1 6542  df-fo 6543  df-f1o 6544  df-fv 6545  df-om 7863  df-en 8944  df-fin 8947
This theorem is referenced by:  unifi  9301  infssuni  9303  ixpfi  9306  ackbij1lem9  10210  ackbij1lem10  10211  fsuppmapnn0fiublem  14026  fsuppmapnn0fiub  14027  fsum2dlem  15821  fsumcom2  15825  fsumiun  15873  hashiun  15874  hash2iun  15875  ackbijnn  15882  fprod2dlem  16034  fprodcom2  16038  chnfi  18690  ablfaclem3  20159  pmatcoe1fsupp  22827  locfincmp  23652  txcmplem2  23768  alexsubALTlem3  24175  aannenlem1  26458  fsumvma  27343  numedglnl  29435  rabrexfi  32793  fsumiunle  33114  psrmonprod  33887  fedgmullem1  33964  fldextrspunlsplem  34008  poimirlem30  38224  fiphp3d  43473  hbt  43784  cnrefiisplem  46470
  Copyright terms: Public domain W3C validator