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

Theorem tx2ndc 23791
Description: The topological product of two second-countable spaces is second-countable. (Contributed by Mario Carneiro, 21-Mar-2015.)
Assertion
Ref Expression
tx2ndc ((𝑅 ∈ 2ndω ∧ 𝑆 ∈ 2ndω) → (𝑅 ×t 𝑆) ∈ 2ndω)

Proof of Theorem tx2ndc
Dummy variables 𝑠 𝑟 𝑥 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 is2ndc 23586 . 2 (𝑅 ∈ 2ndω ↔ ∃𝑟 ∈ TopBases (𝑟 ≼ ω ∧ (topGen‘𝑟) = 𝑅))
2 is2ndc 23586 . 2 (𝑆 ∈ 2ndω ↔ ∃𝑠 ∈ TopBases (𝑠 ≼ ω ∧ (topGen‘𝑠) = 𝑆))
3 reeanv 3244 . . 3 (∃𝑟 ∈ TopBases ∃𝑠 ∈ TopBases ((𝑟 ≼ ω ∧ (topGen‘𝑟) = 𝑅) ∧ (𝑠 ≼ ω ∧ (topGen‘𝑠) = 𝑆)) ↔ (∃𝑟 ∈ TopBases (𝑟 ≼ ω ∧ (topGen‘𝑟) = 𝑅) ∧ ∃𝑠 ∈ TopBases (𝑠 ≼ ω ∧ (topGen‘𝑠) = 𝑆)))
4 an4 668 . . . . 5 (((𝑟 ≼ ω ∧ (topGen‘𝑟) = 𝑅) ∧ (𝑠 ≼ ω ∧ (topGen‘𝑠) = 𝑆)) ↔ ((𝑟 ≼ ω ∧ 𝑠 ≼ ω) ∧ ((topGen‘𝑟) = 𝑅 ∧ (topGen‘𝑠) = 𝑆)))
5 txbasval 23746 . . . . . . . . . 10 ((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) → ((topGen‘𝑟) ×t (topGen‘𝑠)) = (𝑟 ×t 𝑠))
6 eqid 2770 . . . . . . . . . . 11 ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) = ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦))
76txval 23704 . . . . . . . . . 10 ((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) → (𝑟 ×t 𝑠) = (topGen‘ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦))))
85, 7eqtrd 2805 . . . . . . . . 9 ((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) → ((topGen‘𝑟) ×t (topGen‘𝑠)) = (topGen‘ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦))))
98adantr 485 . . . . . . . 8 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → ((topGen‘𝑟) ×t (topGen‘𝑠)) = (topGen‘ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦))))
106txbas 23707 . . . . . . . . . 10 ((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) → ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ∈ TopBases)
1110adantr 485 . . . . . . . . 9 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ∈ TopBases)
12 omelon 9618 . . . . . . . . . . . 12 ω ∈ On
13 vex 3466 . . . . . . . . . . . . . . . 16 𝑠 ∈ V
1413xpdom1 9067 . . . . . . . . . . . . . . 15 (𝑟 ≼ ω → (𝑟 × 𝑠) ≼ (ω × 𝑠))
15 omex 9615 . . . . . . . . . . . . . . . 16 ω ∈ V
1615xpdom2 9063 . . . . . . . . . . . . . . 15 (𝑠 ≼ ω → (ω × 𝑠) ≼ (ω × ω))
17 domtr 9007 . . . . . . . . . . . . . . 15 (((𝑟 × 𝑠) ≼ (ω × 𝑠) ∧ (ω × 𝑠) ≼ (ω × ω)) → (𝑟 × 𝑠) ≼ (ω × ω))
1814, 16, 17syl2an 607 . . . . . . . . . . . . . 14 ((𝑟 ≼ ω ∧ 𝑠 ≼ ω) → (𝑟 × 𝑠) ≼ (ω × ω))
1918adantl 486 . . . . . . . . . . . . 13 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → (𝑟 × 𝑠) ≼ (ω × ω))
20 xpomen 10002 . . . . . . . . . . . . 13 (ω × ω) ≈ ω
21 domentr 9013 . . . . . . . . . . . . 13 (((𝑟 × 𝑠) ≼ (ω × ω) ∧ (ω × ω) ≈ ω) → (𝑟 × 𝑠) ≼ ω)
2219, 20, 21sylancl 597 . . . . . . . . . . . 12 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → (𝑟 × 𝑠) ≼ ω)
23 ondomen 10024 . . . . . . . . . . . 12 ((ω ∈ On ∧ (𝑟 × 𝑠) ≼ ω) → (𝑟 × 𝑠) ∈ dom card)
2412, 22, 23sylancr 598 . . . . . . . . . . 11 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → (𝑟 × 𝑠) ∈ dom card)
25 eqid 2770 . . . . . . . . . . . . . 14 (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) = (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦))
26 vex 3466 . . . . . . . . . . . . . . 15 𝑥 ∈ V
27 vex 3466 . . . . . . . . . . . . . . 15 𝑦 ∈ V
2826, 27xpex 7755 . . . . . . . . . . . . . 14 (𝑥 × 𝑦) ∈ V
2925, 28fnmpoi 8070 . . . . . . . . . . . . 13 (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) Fn (𝑟 × 𝑠)
3029a1i 11 . . . . . . . . . . . 12 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) Fn (𝑟 × 𝑠))
31 dffn4 6802 . . . . . . . . . . . 12 ((𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) Fn (𝑟 × 𝑠) ↔ (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)):(𝑟 × 𝑠)–onto→ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)))
3230, 31sylib 221 . . . . . . . . . . 11 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)):(𝑟 × 𝑠)–onto→ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)))
33 fodomnum 10044 . . . . . . . . . . 11 ((𝑟 × 𝑠) ∈ dom card → ((𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)):(𝑟 × 𝑠)–onto→ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) → ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ≼ (𝑟 × 𝑠)))
3424, 32, 33sylc 66 . . . . . . . . . 10 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ≼ (𝑟 × 𝑠))
35 domtr 9007 . . . . . . . . . 10 ((ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ≼ (𝑟 × 𝑠) ∧ (𝑟 × 𝑠) ≼ ω) → ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ≼ ω)
3634, 22, 35syl2anc 595 . . . . . . . . 9 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ≼ ω)
37 2ndci 23588 . . . . . . . . 9 ((ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ∈ TopBases ∧ ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ≼ ω) → (topGen‘ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦))) ∈ 2ndω)
3811, 36, 37syl2anc 595 . . . . . . . 8 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → (topGen‘ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦))) ∈ 2ndω)
399, 38eqeltrd 2870 . . . . . . 7 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → ((topGen‘𝑟) ×t (topGen‘𝑠)) ∈ 2ndω)
40 oveq12 7423 . . . . . . . 8 (((topGen‘𝑟) = 𝑅 ∧ (topGen‘𝑠) = 𝑆) → ((topGen‘𝑟) ×t (topGen‘𝑠)) = (𝑅 ×t 𝑆))
4140eleq1d 2855 . . . . . . 7 (((topGen‘𝑟) = 𝑅 ∧ (topGen‘𝑠) = 𝑆) → (((topGen‘𝑟) ×t (topGen‘𝑠)) ∈ 2ndω ↔ (𝑅 ×t 𝑆) ∈ 2ndω))
4239, 41syl5ibcom 248 . . . . . 6 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → (((topGen‘𝑟) = 𝑅 ∧ (topGen‘𝑠) = 𝑆) → (𝑅 ×t 𝑆) ∈ 2ndω))
4342expimpd 458 . . . . 5 ((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) → (((𝑟 ≼ ω ∧ 𝑠 ≼ ω) ∧ ((topGen‘𝑟) = 𝑅 ∧ (topGen‘𝑠) = 𝑆)) → (𝑅 ×t 𝑆) ∈ 2ndω))
444, 43biimtrid 245 . . . 4 ((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) → (((𝑟 ≼ ω ∧ (topGen‘𝑟) = 𝑅) ∧ (𝑠 ≼ ω ∧ (topGen‘𝑠) = 𝑆)) → (𝑅 ×t 𝑆) ∈ 2ndω))
4544rexlimivv 3214 . . 3 (∃𝑟 ∈ TopBases ∃𝑠 ∈ TopBases ((𝑟 ≼ ω ∧ (topGen‘𝑟) = 𝑅) ∧ (𝑠 ≼ ω ∧ (topGen‘𝑠) = 𝑆)) → (𝑅 ×t 𝑆) ∈ 2ndω)
463, 45sylbir 238 . 2 ((∃𝑟 ∈ TopBases (𝑟 ≼ ω ∧ (topGen‘𝑟) = 𝑅) ∧ ∃𝑠 ∈ TopBases (𝑠 ≼ ω ∧ (topGen‘𝑠) = 𝑆)) → (𝑅 ×t 𝑆) ∈ 2ndω)
471, 2, 46syl2anb 609 1 ((𝑅 ∈ 2ndω ∧ 𝑆 ∈ 2ndω) → (𝑅 ×t 𝑆) ∈ 2ndω)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 400   = wceq 1568  wcel 2150  wrex 3096   class class class wbr 5114   × cxp 5663  dom cdm 5665  ran crn 5666  Oncon0 6364   Fn wfn 6535  ontowfo 6538  cfv 6540  (class class class)co 7414  cmpo 7416  ωcom 7865  cen 8943  cdom 8944  cardccrd 9924  topGenctg 17493  TopBasesctb 23085  2ndωc2ndc 23578   ×t ctx 23700
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1823  ax-4 1837  ax-5 1938  ax-6 1995  ax-7 2036  ax-8 2152  ax-9 2160  ax-10 2183  ax-11 2199  ax-12 2220  ax-ext 2742  ax-rep 5243  ax-sep 5262  ax-nul 5274  ax-pow 5340  ax-pr 5408  ax-un 7736  ax-inf2 9613
This theorem depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3or 1102  df-3an 1103  df-tru 1571  df-fal 1581  df-ex 1808  df-nf 1812  df-sb 2099  df-mo 2574  df-eu 2604  df-clab 2749  df-cleq 2762  df-clel 2845  df-nfc 2919  df-ne 2966  df-ral 3087  df-rex 3097  df-rmo 3376  df-reu 3377  df-rab 3424  df-v 3464  df-sbc 3753  df-csb 3862  df-dif 3916  df-un 3918  df-in 3920  df-ss 3930  df-pss 3933  df-nul 4295  df-if 4493  df-pw 4569  df-sn 4595  df-pr 4597  df-op 4601  df-uni 4878  df-int 4918  df-iun 4963  df-br 5115  df-opab 5179  df-mpt 5198  df-tr 5224  df-id 5560  df-eprel 5565  df-po 5573  df-so 5574  df-fr 5618  df-se 5619  df-we 5620  df-xp 5671  df-rel 5672  df-cnv 5673  df-co 5674  df-dm 5675  df-rn 5676  df-res 5677  df-ima 5678  df-pred 6306  df-ord 6367  df-on 6368  df-lim 6369  df-suc 6370  df-iota 6496  df-fun 6542  df-fn 6543  df-f 6544  df-f1 6545  df-fo 6546  df-f1o 6547  df-fv 6548  df-isom 6549  df-riota 7371  df-ov 7417  df-oprab 7418  df-mpo 7419  df-om 7866  df-1st 7989  df-2nd 7990  df-frecs 8281  df-wrecs 8312  df-recs 8361  df-rdg 8400  df-1o 8456  df-er 8697  df-map 8829  df-en 8947  df-dom 8948  df-sdom 8949  df-fin 8950  df-oi 9475  df-card 9928  df-acn 9931  df-topgen 17499  df-bases 23086  df-2ndc 23580  df-tx 23702
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator