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

Theorem tx2ndc 23838
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 23633 . 2 (𝑅 ∈ 2ndω ↔ ∃𝑟 ∈ TopBases (𝑟 ≼ ω ∧ (topGen‘𝑟) = 𝑅))
2 is2ndc 23633 . 2 (𝑆 ∈ 2ndω ↔ ∃𝑠 ∈ TopBases (𝑠 ≼ ω ∧ (topGen‘𝑠) = 𝑆))
3 reeanv 3240 . . 3 (∃𝑟 ∈ TopBases ∃𝑠 ∈ TopBases ((𝑟 ≼ ω ∧ (topGen‘𝑟) = 𝑅) ∧ (𝑠 ≼ ω ∧ (topGen‘𝑠) = 𝑆)) ↔ (∃𝑟 ∈ TopBases (𝑟 ≼ ω ∧ (topGen‘𝑟) = 𝑅) ∧ ∃𝑠 ∈ TopBases (𝑠 ≼ ω ∧ (topGen‘𝑠) = 𝑆)))
4 an4 669 . . . . 5 (((𝑟 ≼ ω ∧ (topGen‘𝑟) = 𝑅) ∧ (𝑠 ≼ ω ∧ (topGen‘𝑠) = 𝑆)) ↔ ((𝑟 ≼ ω ∧ 𝑠 ≼ ω) ∧ ((topGen‘𝑟) = 𝑅 ∧ (topGen‘𝑠) = 𝑆)))
5 txbasval 23793 . . . . . . . . . 10 ((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) → ((topGen‘𝑟) ×t (topGen‘𝑠)) = (𝑟 ×t 𝑠))
6 eqid 2766 . . . . . . . . . . 11 ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) = ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦))
76txval 23751 . . . . . . . . . 10 ((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) → (𝑟 ×t 𝑠) = (topGen‘ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦))))
85, 7eqtrd 2801 . . . . . . . . 9 ((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) → ((topGen‘𝑟) ×t (topGen‘𝑠)) = (topGen‘ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦))))
98adantr 486 . . . . . . . 8 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → ((topGen‘𝑟) ×t (topGen‘𝑠)) = (topGen‘ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦))))
106txbas 23754 . . . . . . . . . 10 ((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) → ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ∈ TopBases)
1110adantr 486 . . . . . . . . 9 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ∈ TopBases)
12 omelon 9625 . . . . . . . . . . . 12 ω ∈ On
13 vex 3462 . . . . . . . . . . . . . . . 16 𝑠 ∈ V
1413xpdom1 9074 . . . . . . . . . . . . . . 15 (𝑟 ≼ ω → (𝑟 × 𝑠) ≼ (ω × 𝑠))
15 omex 9622 . . . . . . . . . . . . . . . 16 ω ∈ V
1615xpdom2 9070 . . . . . . . . . . . . . . 15 (𝑠 ≼ ω → (ω × 𝑠) ≼ (ω × ω))
17 domtr 9013 . . . . . . . . . . . . . . 15 (((𝑟 × 𝑠) ≼ (ω × 𝑠) ∧ (ω × 𝑠) ≼ (ω × ω)) → (𝑟 × 𝑠) ≼ (ω × ω))
1814, 16, 17syl2an 608 . . . . . . . . . . . . . 14 ((𝑟 ≼ ω ∧ 𝑠 ≼ ω) → (𝑟 × 𝑠) ≼ (ω × ω))
1918adantl 487 . . . . . . . . . . . . 13 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → (𝑟 × 𝑠) ≼ (ω × ω))
20 xpomen 10018 . . . . . . . . . . . . 13 (ω × ω) ≈ ω
21 domentr 9019 . . . . . . . . . . . . 13 (((𝑟 × 𝑠) ≼ (ω × ω) ∧ (ω × ω) ≈ ω) → (𝑟 × 𝑠) ≼ ω)
2219, 20, 21sylancl 598 . . . . . . . . . . . 12 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → (𝑟 × 𝑠) ≼ ω)
23 ondomen 10040 . . . . . . . . . . . 12 ((ω ∈ On ∧ (𝑟 × 𝑠) ≼ ω) → (𝑟 × 𝑠) ∈ dom card)
2412, 22, 23sylancr 599 . . . . . . . . . . 11 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → (𝑟 × 𝑠) ∈ dom card)
25 eqid 2766 . . . . . . . . . . . . . 14 (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) = (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦))
26 vex 3462 . . . . . . . . . . . . . . 15 𝑥 ∈ V
27 vex 3462 . . . . . . . . . . . . . . 15 𝑦 ∈ V
2826, 27xpex 7761 . . . . . . . . . . . . . 14 (𝑥 × 𝑦) ∈ V
2925, 28fnmpoi 8076 . . . . . . . . . . . . 13 (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) Fn (𝑟 × 𝑠)
3029a1i 11 . . . . . . . . . . . 12 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) Fn (𝑟 × 𝑠))
31 dffn4 6805 . . . . . . . . . . . 12 ((𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) Fn (𝑟 × 𝑠) ↔ (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)):(𝑟 × 𝑠)–onto→ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)))
3230, 31sylib 221 . . . . . . . . . . 11 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)):(𝑟 × 𝑠)–onto→ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)))
33 fodomnum 10060 . . . . . . . . . . 11 ((𝑟 × 𝑠) ∈ dom card → ((𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)):(𝑟 × 𝑠)–onto→ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) → ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ≼ (𝑟 × 𝑠)))
3424, 32, 33sylc 66 . . . . . . . . . 10 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ≼ (𝑟 × 𝑠))
35 domtr 9013 . . . . . . . . . 10 ((ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ≼ (𝑟 × 𝑠) ∧ (𝑟 × 𝑠) ≼ ω) → ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ≼ ω)
3634, 22, 35syl2anc 596 . . . . . . . . 9 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ≼ ω)
37 2ndci 23635 . . . . . . . . 9 ((ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ∈ TopBases ∧ ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦)) ≼ ω) → (topGen‘ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦))) ∈ 2ndω)
3811, 36, 37syl2anc 596 . . . . . . . 8 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → (topGen‘ran (𝑥𝑟, 𝑦𝑠 ↦ (𝑥 × 𝑦))) ∈ 2ndω)
399, 38eqeltrd 2866 . . . . . . 7 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → ((topGen‘𝑟) ×t (topGen‘𝑠)) ∈ 2ndω)
40 oveq12 7432 . . . . . . . 8 (((topGen‘𝑟) = 𝑅 ∧ (topGen‘𝑠) = 𝑆) → ((topGen‘𝑟) ×t (topGen‘𝑠)) = (𝑅 ×t 𝑆))
4140eleq1d 2851 . . . . . . 7 (((topGen‘𝑟) = 𝑅 ∧ (topGen‘𝑠) = 𝑆) → (((topGen‘𝑟) ×t (topGen‘𝑠)) ∈ 2ndω ↔ (𝑅 ×t 𝑆) ∈ 2ndω))
4239, 41syl5ibcom 248 . . . . . 6 (((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) ∧ (𝑟 ≼ ω ∧ 𝑠 ≼ ω)) → (((topGen‘𝑟) = 𝑅 ∧ (topGen‘𝑠) = 𝑆) → (𝑅 ×t 𝑆) ∈ 2ndω))
4342expimpd 459 . . . . 5 ((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) → (((𝑟 ≼ ω ∧ 𝑠 ≼ ω) ∧ ((topGen‘𝑟) = 𝑅 ∧ (topGen‘𝑠) = 𝑆)) → (𝑅 ×t 𝑆) ∈ 2ndω))
444, 43biimtrid 245 . . . 4 ((𝑟 ∈ TopBases ∧ 𝑠 ∈ TopBases) → (((𝑟 ≼ ω ∧ (topGen‘𝑟) = 𝑅) ∧ (𝑠 ≼ ω ∧ (topGen‘𝑠) = 𝑆)) → (𝑅 ×t 𝑆) ∈ 2ndω))
4544rexlimivv 3210 . . 3 (∃𝑟 ∈ TopBases ∃𝑠 ∈ TopBases ((𝑟 ≼ ω ∧ (topGen‘𝑟) = 𝑅) ∧ (𝑠 ≼ ω ∧ (topGen‘𝑠) = 𝑆)) → (𝑅 ×t 𝑆) ∈ 2ndω)
463, 45sylbir 238 . 2 ((∃𝑟 ∈ TopBases (𝑟 ≼ ω ∧ (topGen‘𝑟) = 𝑅) ∧ ∃𝑠 ∈ TopBases (𝑠 ≼ ω ∧ (topGen‘𝑠) = 𝑆)) → (𝑅 ×t 𝑆) ∈ 2ndω)
471, 2, 46syl2anb 610 1 ((𝑅 ∈ 2ndω ∧ 𝑆 ∈ 2ndω) → (𝑅 ×t 𝑆) ∈ 2ndω)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wa 401   = wceq 1570  wcel 2146  wrex 3092   class class class wbr 5114   × cxp 5664  dom cdm 5666  ran crn 5667  Oncon0 6367   Fn wfn 6538  ontowfo 6541  cfv 6543  (class class class)co 7423  cmpo 7425  ωcom 7871  cen 8949  cdom 8950  cardccrd 9940  topGenctg 17515  TopBasesctb 23132  2ndωc2ndc 23625   ×t ctx 23747
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2148  ax-9 2156  ax-10 2179  ax-11 2195  ax-12 2216  ax-ext 2738  ax-rep 5243  ax-sep 5262  ax-nul 5274  ax-pow 5341  ax-pr 5409  ax-un 7745  ax-inf2 9620
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2570  df-eu 2600  df-clab 2745  df-cleq 2758  df-clel 2841  df-nfc 2915  df-ne 2962  df-ral 3083  df-rex 3093  df-rmo 3372  df-reu 3373  df-rab 3420  df-v 3460  df-sbc 3748  df-csb 3857  df-dif 3911  df-un 3913  df-in 3915  df-ss 3925  df-pss 3928  df-nul 4290  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 5561  df-eprel 5566  df-po 5574  df-so 5575  df-fr 5619  df-se 5620  df-we 5621  df-xp 5672  df-rel 5673  df-cnv 5674  df-co 5675  df-dm 5676  df-rn 5677  df-res 5678  df-ima 5679  df-pred 6309  df-ord 6370  df-on 6371  df-lim 6372  df-suc 6373  df-iota 6499  df-fun 6545  df-fn 6546  df-f 6547  df-f1 6548  df-fo 6549  df-f1o 6550  df-fv 6551  df-isom 6552  df-riota 7380  df-ov 7426  df-oprab 7427  df-mpo 7428  df-om 7872  df-1st 7995  df-2nd 7996  df-frecs 8287  df-wrecs 8318  df-recs 8367  df-rdg 8406  df-1o 8462  df-er 8703  df-map 8835  df-en 8953  df-dom 8954  df-sdom 8955  df-fin 8956  df-oi 9482  df-card 9944  df-acn 9947  df-topgen 17521  df-bases 23133  df-2ndc 23627  df-tx 23749
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator