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

Theorem tx2ndc 23819
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 23614 . 2 (𝑅 ∈ 2ndω ↔ ∃𝑟 ∈ TopBases (𝑟 ≼ ω ∧ (topGen‘𝑟) = 𝑅))
2 is2ndc 23614 . 2 (𝑆 ∈ 2ndω ↔ ∃𝑠 ∈ TopBases (𝑠 ≼ ω ∧ (topGen‘𝑠) = 𝑆))
3 reeanv 3236 . . 3 (∃𝑟 ∈ TopBases ∃𝑠 ∈ TopBases ((𝑟 ≼ ω ∧ (topGen‘𝑟) = 𝑅) ∧ (𝑠 ≼ ω ∧ (topGen‘𝑠) = 𝑆)) ↔ (∃𝑟 ∈ TopBases (𝑟 ≼ ω ∧ (topGen‘𝑟) = 𝑅) ∧ ∃𝑠 ∈ TopBases (𝑠 ≼ ω ∧ (topGen‘𝑠) = 𝑆)))
4 an4 668 . . . . 5 (((𝑟 ≼ ω ∧ (topGen‘𝑟) = 𝑅) ∧ (𝑠 ≼ ω ∧ (topGen‘𝑠) = 𝑆)) ↔ ((𝑟 ≼ ω ∧ 𝑠 ≼ ω) ∧ ((topGen‘𝑟) = 𝑅 ∧ (topGen‘𝑠) = 𝑆)))
5 txbasval 23774 . . . . . . . . . 10 ((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) → ((topGen‘𝑟) ×t (topGen‘𝑠)) = (𝑟 ×t 𝑠))
6 eqid 2762 . . . . . . . . . . 11 ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) = ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦))
76txval 23732 . . . . . . . . . 10 ((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) → (𝑟 ×t 𝑠) = (topGen‘ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦))))
85, 7eqtrd 2797 . . . . . . . . 9 ((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) → ((topGen‘𝑟) ×t (topGen‘𝑠)) = (topGen‘ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦))))
98adantr 485 . . . . . . . 8 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → ((topGen‘𝑟) ×t (topGen‘𝑠)) = (topGen‘ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦))))
106txbas 23735 . . . . . . . . . 10 ((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) → ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ∈ TopBases)
1110adantr 485 . . . . . . . . 9 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ∈ TopBases)
12 omelon 9613 . . . . . . . . . . . 12 ω ∈ On
13 vex 3458 . . . . . . . . . . . . . . . 16 𝑠 ∈ V
1413xpdom1 9062 . . . . . . . . . . . . . . 15 (𝑟 ≼ ω → (𝑟 × 𝑠) ≼ (ω × 𝑠))
15 omex 9610 . . . . . . . . . . . . . . . 16 ω ∈ V
1615xpdom2 9058 . . . . . . . . . . . . . . 15 (𝑠 ≼ ω → (ω × 𝑠) ≼ (ω × ω))
17 domtr 9002 . . . . . . . . . . . . . . 15 (((𝑟 × 𝑠) ≼ (ω × 𝑠) ∧ (ω × 𝑠) ≼ (ω × ω)) → (𝑟 × 𝑠) ≼ (ω × ω))
1814, 16, 17syl2an 607 . . . . . . . . . . . . . 14 ((𝑟 ≼ ω ∧ 𝑠 ≼ ω) → (𝑟 × 𝑠) ≼ (ω × ω))
1918adantl 486 . . . . . . . . . . . . 13 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → (𝑟 × 𝑠) ≼ (ω × ω))
20 xpomen 10006 . . . . . . . . . . . . 13 (ω × ω) ≈ ω
21 domentr 9008 . . . . . . . . . . . . 13 (((𝑟 × 𝑠) ≼ (ω × ω) ∧ (ω × ω) ≈ ω) → (𝑟 × 𝑠) ≼ ω)
2219, 20, 21sylancl 597 . . . . . . . . . . . 12 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → (𝑟 × 𝑠) ≼ ω)
23 ondomen 10028 . . . . . . . . . . . 12 ((ω ∈ On ∧ (𝑟 × 𝑠) ≼ ω) → (𝑟 × 𝑠) ∈ dom card)
2412, 22, 23sylancr 598 . . . . . . . . . . 11 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → (𝑟 × 𝑠) ∈ dom card)
25 eqid 2762 . . . . . . . . . . . . . 14 (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) = (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦))
26 vex 3458 . . . . . . . . . . . . . . 15 𝑥 ∈ V
27 vex 3458 . . . . . . . . . . . . . . 15 𝑦 ∈ V
2826, 27xpex 7750 . . . . . . . . . . . . . 14 (𝑥 × 𝑦) ∈ V
2925, 28fnmpoi 8065 . . . . . . . . . . . . 13 (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) Fn (𝑟 × 𝑠)
3029a1i 11 . . . . . . . . . . . 12 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) Fn (𝑟 × 𝑠))
31 dffn4 6798 . . . . . . . . . . . 12 ((𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) Fn (𝑟 × 𝑠) ↔ (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)):(𝑟 × 𝑠)–onto→ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)))
3230, 31sylib 221 . . . . . . . . . . 11 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)):(𝑟 × 𝑠)–onto→ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)))
33 fodomnum 10048 . . . . . . . . . . 11 ((𝑟 × 𝑠) ∈ dom card → ((𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)):(𝑟 × 𝑠)–onto→ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) → ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ≼ (𝑟 × 𝑠)))
3424, 32, 33sylc 66 . . . . . . . . . 10 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ≼ (𝑟 × 𝑠))
35 domtr 9002 . . . . . . . . . 10 ((ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ≼ (𝑟 × 𝑠) ∧ (𝑟 × 𝑠) ≼ ω) → ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ≼ ω)
3634, 22, 35syl2anc 595 . . . . . . . . 9 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ≼ ω)
37 2ndci 23616 . . . . . . . . 9 ((ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ∈ TopBases ∧ ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ≼ ω) → (topGen‘ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦))) ∈ 2ndω)
3811, 36, 37syl2anc 595 . . . . . . . 8 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → (topGen‘ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦))) ∈ 2ndω)
399, 38eqeltrd 2862 . . . . . . 7 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → ((topGen‘𝑟) ×t (topGen‘𝑠)) ∈ 2ndω)
40 oveq12 7421 . . . . . . . 8 (((topGen‘𝑟) = 𝑅 ∧ (topGen‘𝑠) = 𝑆) → ((topGen‘𝑟) ×t (topGen‘𝑠)) = (𝑅 ×t 𝑆))
4140eleq1d 2847 . . . . . . 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 3206 . . 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
This proof depends on syntax axioms:  wi 4  wa 400   = wceq 1569  wcel 2142  wrex 3088   class class class wbr 5108   × cxp 5658  dom cdm 5660  ran crn 5661  Oncon0 6360   Fn wfn 6531  ontowfo 6534  cfv 6536  (class class class)co 7412  cmpo 7414  ωcom 7860  cen 8938  cdom 8939  cardccrd 9928  topGenctg 17496  TopBasesctb 23113  2ndωc2ndc 23606   ×t ctx 23728
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1824  ax-4 1838  ax-5 1939  ax-6 1996  ax-7 2037  ax-8 2144  ax-9 2152  ax-10 2175  ax-11 2191  ax-12 2212  ax-ext 2734  ax-rep 5237  ax-sep 5256  ax-nul 5268  ax-pow 5335  ax-pr 5403  ax-un 7734  ax-inf2 9608
This proof depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3or 1103  df-3an 1104  df-tru 1572  df-fal 1582  df-ex 1809  df-nf 1813  df-sb 2096  df-mo 2566  df-eu 2596  df-clab 2741  df-cleq 2754  df-clel 2837  df-nfc 2911  df-ne 2958  df-ral 3079  df-rex 3089  df-rmo 3368  df-reu 3369  df-rab 3416  df-v 3456  df-sbc 3744  df-csb 3853  df-dif 3907  df-un 3909  df-in 3911  df-ss 3921  df-pss 3924  df-nul 4286  df-if 4487  df-pw 4563  df-sn 4589  df-pr 4591  df-op 4595  df-uni 4872  df-int 4912  df-iun 4957  df-br 5109  df-opab 5173  df-mpt 5192  df-tr 5218  df-id 5555  df-eprel 5560  df-po 5568  df-so 5569  df-fr 5613  df-se 5614  df-we 5615  df-xp 5666  df-rel 5667  df-cnv 5668  df-co 5669  df-dm 5670  df-rn 5671  df-res 5672  df-ima 5673  df-pred 6302  df-ord 6363  df-on 6364  df-lim 6365  df-suc 6366  df-iota 6492  df-fun 6538  df-fn 6539  df-f 6540  df-f1 6541  df-fo 6542  df-f1o 6543  df-fv 6544  df-isom 6545  df-riota 7369  df-ov 7415  df-oprab 7416  df-mpo 7417  df-om 7861  df-1st 7984  df-2nd 7985  df-frecs 8276  df-wrecs 8307  df-recs 8356  df-rdg 8395  df-1o 8451  df-er 8692  df-map 8824  df-en 8942  df-dom 8943  df-sdom 8944  df-fin 8945  df-oi 9470  df-card 9932  df-acn 9935  df-topgen 17502  df-bases 23114  df-2ndc 23608  df-tx 23730
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator