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

Theorem iunfi 9242
Description: The finite union of finite sets is finite. Exercise 13 of [Enderton] p. 144. This is the indexed union version of unifi 9243. 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 3290 . . . 4 (𝑤 = ∅ → (∀𝑥𝑤 𝐵 ∈ Fin ↔ ∀𝑥 ∈ ∅ 𝐵 ∈ Fin))
2 iuneq1 4940 . . . . . 6 (𝑤 = ∅ → 𝑥𝑤 𝐵 = 𝑥 ∈ ∅ 𝐵)
3 0iun 4994 . . . . . 6 𝑥 ∈ ∅ 𝐵 = ∅
42, 3eqtrdi 2786 . . . . 5 (𝑤 = ∅ → 𝑥𝑤 𝐵 = ∅)
54eleq1d 2820 . . . 4 (𝑤 = ∅ → ( 𝑥𝑤 𝐵 ∈ Fin ↔ ∅ ∈ Fin))
61, 5imbi12d 344 . . 3 (𝑤 = ∅ → ((∀𝑥𝑤 𝐵 ∈ Fin → 𝑥𝑤 𝐵 ∈ Fin) ↔ (∀𝑥 ∈ ∅ 𝐵 ∈ Fin → ∅ ∈ Fin)))
7 raleq 3290 . . . 4 (𝑤 = 𝑦 → (∀𝑥𝑤 𝐵 ∈ Fin ↔ ∀𝑥𝑦 𝐵 ∈ Fin))
8 iuneq1 4940 . . . . 5 (𝑤 = 𝑦 𝑥𝑤 𝐵 = 𝑥𝑦 𝐵)
98eleq1d 2820 . . . 4 (𝑤 = 𝑦 → ( 𝑥𝑤 𝐵 ∈ Fin ↔ 𝑥𝑦 𝐵 ∈ Fin))
107, 9imbi12d 344 . . 3 (𝑤 = 𝑦 → ((∀𝑥𝑤 𝐵 ∈ Fin → 𝑥𝑤 𝐵 ∈ Fin) ↔ (∀𝑥𝑦 𝐵 ∈ Fin → 𝑥𝑦 𝐵 ∈ Fin)))
11 raleq 3290 . . . 4 (𝑤 = (𝑦 ∪ {𝑧}) → (∀𝑥𝑤 𝐵 ∈ Fin ↔ ∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin))
12 iuneq1 4940 . . . . 5 (𝑤 = (𝑦 ∪ {𝑧}) → 𝑥𝑤 𝐵 = 𝑥 ∈ (𝑦 ∪ {𝑧})𝐵)
1312eleq1d 2820 . . . 4 (𝑤 = (𝑦 ∪ {𝑧}) → ( 𝑥𝑤 𝐵 ∈ Fin ↔ 𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin))
1411, 13imbi12d 344 . . 3 (𝑤 = (𝑦 ∪ {𝑧}) → ((∀𝑥𝑤 𝐵 ∈ Fin → 𝑥𝑤 𝐵 ∈ Fin) ↔ (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → 𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin)))
15 raleq 3290 . . . 4 (𝑤 = 𝐴 → (∀𝑥𝑤 𝐵 ∈ Fin ↔ ∀𝑥𝐴 𝐵 ∈ Fin))
16 iuneq1 4940 . . . . 5 (𝑤 = 𝐴 𝑥𝑤 𝐵 = 𝑥𝐴 𝐵)
1716eleq1d 2820 . . . 4 (𝑤 = 𝐴 → ( 𝑥𝑤 𝐵 ∈ Fin ↔ 𝑥𝐴 𝐵 ∈ Fin))
1815, 17imbi12d 344 . . 3 (𝑤 = 𝐴 → ((∀𝑥𝑤 𝐵 ∈ Fin → 𝑥𝑤 𝐵 ∈ Fin) ↔ (∀𝑥𝐴 𝐵 ∈ Fin → 𝑥𝐴 𝐵 ∈ Fin)))
19 0fi 8978 . . . 4 ∅ ∈ Fin
2019a1i 11 . . 3 (∀𝑥 ∈ ∅ 𝐵 ∈ Fin → ∅ ∈ Fin)
21 ssun1 4109 . . . . . . 7 𝑦 ⊆ (𝑦 ∪ {𝑧})
22 ssralv 3985 . . . . . . 7 (𝑦 ⊆ (𝑦 ∪ {𝑧}) → (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → ∀𝑥𝑦 𝐵 ∈ Fin))
2321, 22ax-mp 5 . . . . . 6 (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → ∀𝑥𝑦 𝐵 ∈ Fin)
2423imim1i 63 . . . . 5 ((∀𝑥𝑦 𝐵 ∈ Fin → 𝑥𝑦 𝐵 ∈ Fin) → (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → 𝑥𝑦 𝐵 ∈ Fin))
25 iunxun 5025 . . . . . . 7 𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 = ( 𝑥𝑦 𝐵 𝑥 ∈ {𝑧}𝐵)
26 nfcv 2897 . . . . . . . . . . 11 𝑦𝐵
27 nfcsb1v 3857 . . . . . . . . . . 11 𝑥𝑦 / 𝑥𝐵
28 csbeq1a 3847 . . . . . . . . . . 11 (𝑥 = 𝑦𝐵 = 𝑦 / 𝑥𝐵)
2926, 27, 28cbviun 4966 . . . . . . . . . 10 𝑥 ∈ {𝑧}𝐵 = 𝑦 ∈ {𝑧}𝑦 / 𝑥𝐵
30 vex 3431 . . . . . . . . . . 11 𝑧 ∈ V
31 csbeq1 3836 . . . . . . . . . . 11 (𝑦 = 𝑧𝑦 / 𝑥𝐵 = 𝑧 / 𝑥𝐵)
3230, 31iunxsn 5022 . . . . . . . . . 10 𝑦 ∈ {𝑧}𝑦 / 𝑥𝐵 = 𝑧 / 𝑥𝐵
3329, 32eqtri 2758 . . . . . . . . 9 𝑥 ∈ {𝑧}𝐵 = 𝑧 / 𝑥𝐵
34 ssun2 4110 . . . . . . . . . . 11 {𝑧} ⊆ (𝑦 ∪ {𝑧})
35 vsnid 4597 . . . . . . . . . . 11 𝑧 ∈ {𝑧}
3634, 35sselii 3914 . . . . . . . . . 10 𝑧 ∈ (𝑦 ∪ {𝑧})
37 nfcsb1v 3857 . . . . . . . . . . . 12 𝑥𝑧 / 𝑥𝐵
3837nfel1 2913 . . . . . . . . . . 11 𝑥𝑧 / 𝑥𝐵 ∈ Fin
39 csbeq1a 3847 . . . . . . . . . . . 12 (𝑥 = 𝑧𝐵 = 𝑧 / 𝑥𝐵)
4039eleq1d 2820 . . . . . . . . . . 11 (𝑥 = 𝑧 → (𝐵 ∈ Fin ↔ 𝑧 / 𝑥𝐵 ∈ Fin))
4138, 40rspc 3550 . . . . . . . . . 10 (𝑧 ∈ (𝑦 ∪ {𝑧}) → (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → 𝑧 / 𝑥𝐵 ∈ Fin))
4236, 41ax-mp 5 . . . . . . . . 9 (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → 𝑧 / 𝑥𝐵 ∈ Fin)
4333, 42eqeltrid 2839 . . . . . . . 8 (∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin → 𝑥 ∈ {𝑧}𝐵 ∈ Fin)
44 unfi 9094 . . . . . . . 8 (( 𝑥𝑦 𝐵 ∈ Fin ∧ 𝑥 ∈ {𝑧}𝐵 ∈ Fin) → ( 𝑥𝑦 𝐵 𝑥 ∈ {𝑧}𝐵) ∈ Fin)
4543, 44sylan2 594 . . . . . . 7 (( 𝑥𝑦 𝐵 ∈ Fin ∧ ∀𝑥 ∈ (𝑦 ∪ {𝑧})𝐵 ∈ Fin) → ( 𝑥𝑦 𝐵 𝑥 ∈ {𝑧}𝐵) ∈ Fin)
4625, 45eqeltrid 2839 . . . . . 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 9088 . 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 3049  csb 3833  cun 3883  wss 3885  c0 4263  {csn 4557   ciun 4923  Fincfn 8882
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 2184  ax-ext 2707  ax-sep 5220  ax-nul 5230  ax-pr 5364  ax-un 7678
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 2538  df-eu 2568  df-clab 2714  df-cleq 2727  df-clel 2810  df-nfc 2884  df-ne 2931  df-ral 3050  df-rex 3060  df-reu 3341  df-rab 3388  df-v 3429  df-sbc 3726  df-csb 3834  df-dif 3888  df-un 3890  df-in 3892  df-ss 3902  df-pss 3905  df-nul 4264  df-if 4457  df-pw 4533  df-sn 4558  df-pr 4560  df-op 4564  df-uni 4841  df-iun 4925  df-br 5075  df-opab 5137  df-tr 5182  df-id 5515  df-eprel 5520  df-po 5528  df-so 5529  df-fr 5573  df-we 5575  df-xp 5626  df-rel 5627  df-cnv 5628  df-co 5629  df-dm 5630  df-rn 5631  df-res 5632  df-ima 5633  df-ord 6315  df-on 6316  df-lim 6317  df-suc 6318  df-iota 6443  df-fun 6489  df-fn 6490  df-f 6491  df-f1 6492  df-fo 6493  df-f1o 6494  df-fv 6495  df-om 7807  df-en 8883  df-fin 8886
This theorem is referenced by:  unifi  9243  infssuni  9245  ixpfi  9248  ackbij1lem9  10138  ackbij1lem10  10139  fsuppmapnn0fiublem  13941  fsuppmapnn0fiub  13942  fsum2dlem  15721  fsumcom2  15725  fsumiun  15773  hashiun  15774  hash2iun  15775  ackbijnn  15782  fprod2dlem  15934  fprodcom2  15938  chnfi  18589  ablfaclem3  20053  pmatcoe1fsupp  22654  locfincmp  23479  txcmplem2  23595  alexsubALTlem3  24002  aannenlem1  26282  fsumvma  27164  numedglnl  29201  rabrexfi  32564  fsumiunle  32890  psrmonprod  33684  fedgmullem1  33761  fldextrspunlsplem  33805  poimirlem30  37959  fiphp3d  43235  hbt  43546  cnrefiisplem  46245
  Copyright terms: Public domain W3C validator