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

Theorem tgcmp 23632
Description: A topology generated by a basis is compact iff open covers drawn from the basis have finite subcovers. (See also alexsub 24277, which further specializes to subbases, assuming the ultrafilter lemma.) (Contributed by Mario Carneiro, 26-Aug-2015.)
Assertion
Ref Expression
tgcmp ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → ((topGen‘𝐵) ∈ Comp ↔ ∀𝑦 ∈ 𝒫 𝐵(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧)))
Distinct variable groups:   𝑦,𝑧,𝐵   𝑦,𝑋,𝑧

Proof of Theorem tgcmp
Dummy variables 𝑡 𝑓 𝑢 𝑣 𝑤 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 eqid 2762 . . . . 5 (topGen‘𝐵) = (topGen‘𝐵)
21iscmp 23619 . . . 4 ((topGen‘𝐵) ∈ Comp ↔ ((topGen‘𝐵) ∈ Top ∧ ∀𝑦 ∈ 𝒫 (topGen‘𝐵)( (topGen‘𝐵) = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin) (topGen‘𝐵) = 𝑧)))
32simprbi 503 . . 3 ((topGen‘𝐵) ∈ Comp → ∀𝑦 ∈ 𝒫 (topGen‘𝐵)( (topGen‘𝐵) = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin) (topGen‘𝐵) = 𝑧))
4 unitg 23198 . . . . . . . 8 (𝐵 ∈ TopBases → (topGen‘𝐵) = 𝐵)
5 eqtr3 2784 . . . . . . . 8 (( (topGen‘𝐵) = 𝐵𝑋 = 𝐵) → (topGen‘𝐵) = 𝑋)
64, 5sylan 592 . . . . . . 7 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → (topGen‘𝐵) = 𝑋)
76eqeq1d 2764 . . . . . 6 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → ( (topGen‘𝐵) = 𝑦𝑋 = 𝑦))
86eqeq1d 2764 . . . . . . 7 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → ( (topGen‘𝐵) = 𝑧𝑋 = 𝑧))
98rexbidv 3188 . . . . . 6 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → (∃𝑧 ∈ (𝒫 𝑦 ∩ Fin) (topGen‘𝐵) = 𝑧 ↔ ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧))
107, 9imbi12d 347 . . . . 5 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → (( (topGen‘𝐵) = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin) (topGen‘𝐵) = 𝑧) ↔ (𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧)))
1110ralbidv 3187 . . . 4 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → (∀𝑦 ∈ 𝒫 (topGen‘𝐵)( (topGen‘𝐵) = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin) (topGen‘𝐵) = 𝑧) ↔ ∀𝑦 ∈ 𝒫 (topGen‘𝐵)(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧)))
12 bastg 23197 . . . . . . 7 (𝐵 ∈ TopBases → 𝐵 ⊆ (topGen‘𝐵))
1312adantr 486 . . . . . 6 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → 𝐵 ⊆ (topGen‘𝐵))
1413sspwd 4573 . . . . 5 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → 𝒫 𝐵 ⊆ 𝒫 (topGen‘𝐵))
15 ssralv 4003 . . . . 5 (𝒫 𝐵 ⊆ 𝒫 (topGen‘𝐵) → (∀𝑦 ∈ 𝒫 (topGen‘𝐵)(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧) → ∀𝑦 ∈ 𝒫 𝐵(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧)))
1614, 15syl 18 . . . 4 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → (∀𝑦 ∈ 𝒫 (topGen‘𝐵)(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧) → ∀𝑦 ∈ 𝒫 𝐵(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧)))
1711, 16sylbid 243 . . 3 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → (∀𝑦 ∈ 𝒫 (topGen‘𝐵)( (topGen‘𝐵) = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin) (topGen‘𝐵) = 𝑧) → ∀𝑦 ∈ 𝒫 𝐵(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧)))
183, 17syl5 35 . 2 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → ((topGen‘𝐵) ∈ Comp → ∀𝑦 ∈ 𝒫 𝐵(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧)))
19 elpwi 4567 . . . . 5 (𝑢 ∈ 𝒫 (topGen‘𝐵) → 𝑢 ⊆ (topGen‘𝐵))
20 simprr 785 . . . . . . . . . . 11 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → 𝑋 = 𝑢)
21 simprl 783 . . . . . . . . . . . . . . . . . 18 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → 𝑢 ⊆ (topGen‘𝐵))
2221sselda 3934 . . . . . . . . . . . . . . . . 17 ((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ 𝑡𝑢) → 𝑡 ∈ (topGen‘𝐵))
2322adantrr 730 . . . . . . . . . . . . . . . 16 ((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑡𝑢𝑦𝑡)) → 𝑡 ∈ (topGen‘𝐵))
24 simprr 785 . . . . . . . . . . . . . . . 16 ((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑡𝑢𝑦𝑡)) → 𝑦𝑡)
25 tg2 23196 . . . . . . . . . . . . . . . 16 ((𝑡 ∈ (topGen‘𝐵) ∧ 𝑦𝑡) → ∃𝑤𝐵 (𝑦𝑤𝑤𝑡))
2623, 24, 25syl2anc 596 . . . . . . . . . . . . . . 15 ((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑡𝑢𝑦𝑡)) → ∃𝑤𝐵 (𝑦𝑤𝑤𝑡))
2726expr 462 . . . . . . . . . . . . . 14 ((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ 𝑡𝑢) → (𝑦𝑡 → ∃𝑤𝐵 (𝑦𝑤𝑤𝑡)))
2827reximdva 3177 . . . . . . . . . . . . 13 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → (∃𝑡𝑢 𝑦𝑡 → ∃𝑡𝑢𝑤𝐵 (𝑦𝑤𝑤𝑡)))
29 eluni2 4874 . . . . . . . . . . . . 13 (𝑦 𝑢 ↔ ∃𝑡𝑢 𝑦𝑡)
30 elunirab 4885 . . . . . . . . . . . . . 14 (𝑦 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ↔ ∃𝑤𝐵 (𝑦𝑤 ∧ ∃𝑡𝑢 𝑤𝑡))
31 r19.42v 3196 . . . . . . . . . . . . . . 15 (∃𝑡𝑢 (𝑦𝑤𝑤𝑡) ↔ (𝑦𝑤 ∧ ∃𝑡𝑢 𝑤𝑡))
3231rexbii 3111 . . . . . . . . . . . . . 14 (∃𝑤𝐵𝑡𝑢 (𝑦𝑤𝑤𝑡) ↔ ∃𝑤𝐵 (𝑦𝑤 ∧ ∃𝑡𝑢 𝑤𝑡))
33 rexcom 3293 . . . . . . . . . . . . . 14 (∃𝑤𝐵𝑡𝑢 (𝑦𝑤𝑤𝑡) ↔ ∃𝑡𝑢𝑤𝐵 (𝑦𝑤𝑤𝑡))
3430, 32, 333bitr2i 302 . . . . . . . . . . . . 13 (𝑦 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ↔ ∃𝑡𝑢𝑤𝐵 (𝑦𝑤𝑤𝑡))
3528, 29, 343imtr4g 299 . . . . . . . . . . . 12 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → (𝑦 𝑢𝑦 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡}))
3635ssrdv 3940 . . . . . . . . . . 11 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → 𝑢 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡})
3720, 36eqsstrd 3968 . . . . . . . . . 10 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → 𝑋 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡})
38 ssrab2 4031 . . . . . . . . . . . 12 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ⊆ 𝐵
3938unissi 4879 . . . . . . . . . . 11 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ⊆ 𝐵
40 simplr 781 . . . . . . . . . . 11 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → 𝑋 = 𝐵)
4139, 40sseqtrrid 3977 . . . . . . . . . 10 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ⊆ 𝑋)
4237, 41eqssd 3951 . . . . . . . . 9 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → 𝑋 = {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡})
43 elpw2g 5302 . . . . . . . . . . . 12 (𝐵 ∈ TopBases → ({𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∈ 𝒫 𝐵 ↔ {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ⊆ 𝐵))
4443ad2antrr 739 . . . . . . . . . . 11 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → ({𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∈ 𝒫 𝐵 ↔ {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ⊆ 𝐵))
4538, 44mpbiri 261 . . . . . . . . . 10 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∈ 𝒫 𝐵)
46 unieq 4881 . . . . . . . . . . . . 13 (𝑦 = {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} → 𝑦 = {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡})
4746eqeq2d 2773 . . . . . . . . . . . 12 (𝑦 = {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} → (𝑋 = 𝑦𝑋 = {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡}))
48 pweq 4574 . . . . . . . . . . . . . 14 (𝑦 = {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} → 𝒫 𝑦 = 𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡})
4948ineq1d 4168 . . . . . . . . . . . . 13 (𝑦 = {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} → (𝒫 𝑦 ∩ Fin) = (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin))
5049rexeqdv 3322 . . . . . . . . . . . 12 (𝑦 = {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} → (∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧 ↔ ∃𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin)𝑋 = 𝑧))
5147, 50imbi12d 347 . . . . . . . . . . 11 (𝑦 = {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} → ((𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧) ↔ (𝑋 = {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} → ∃𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin)𝑋 = 𝑧)))
5251rspcv 3575 . . . . . . . . . 10 ({𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∈ 𝒫 𝐵 → (∀𝑦 ∈ 𝒫 𝐵(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧) → (𝑋 = {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} → ∃𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin)𝑋 = 𝑧)))
5345, 52syl 18 . . . . . . . . 9 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → (∀𝑦 ∈ 𝒫 𝐵(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧) → (𝑋 = {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} → ∃𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin)𝑋 = 𝑧)))
5442, 53mpid 45 . . . . . . . 8 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → (∀𝑦 ∈ 𝒫 𝐵(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧) → ∃𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin)𝑋 = 𝑧))
55 elfpw 9325 . . . . . . . . . . . . 13 (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ↔ (𝑧 ⊆ {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∧ 𝑧 ∈ Fin))
5655simprbi 503 . . . . . . . . . . . 12 (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) → 𝑧 ∈ Fin)
5756ad2antrl 741 . . . . . . . . . . 11 ((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) → 𝑧 ∈ Fin)
5855simplbi 502 . . . . . . . . . . . . 13 (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) → 𝑧 ⊆ {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡})
5958ad2antrl 741 . . . . . . . . . . . 12 ((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) → 𝑧 ⊆ {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡})
60 ssrab 4022 . . . . . . . . . . . . 13 (𝑧 ⊆ {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ↔ (𝑧𝐵 ∧ ∀𝑤𝑧𝑡𝑢 𝑤𝑡))
6160simprbi 503 . . . . . . . . . . . 12 (𝑧 ⊆ {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} → ∀𝑤𝑧𝑡𝑢 𝑤𝑡)
6259, 61syl 18 . . . . . . . . . . 11 ((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) → ∀𝑤𝑧𝑡𝑢 𝑤𝑡)
63 sseq2 3960 . . . . . . . . . . . 12 (𝑡 = (𝑓𝑤) → (𝑤𝑡𝑤 ⊆ (𝑓𝑤)))
6463ac6sfi 9258 . . . . . . . . . . 11 ((𝑧 ∈ Fin ∧ ∀𝑤𝑧𝑡𝑢 𝑤𝑡) → ∃𝑓(𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤)))
6557, 62, 64syl2anc 596 . . . . . . . . . 10 ((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) → ∃𝑓(𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤)))
66 frn 6714 . . . . . . . . . . . . 13 (𝑓:𝑧𝑢 → ran 𝑓𝑢)
6766ad2antrl 741 . . . . . . . . . . . 12 (((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) ∧ (𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤))) → ran 𝑓𝑢)
68 ffn 6706 . . . . . . . . . . . . . . 15 (𝑓:𝑧𝑢𝑓 Fn 𝑧)
69 dffn4 6799 . . . . . . . . . . . . . . 15 (𝑓 Fn 𝑧𝑓:𝑧onto→ran 𝑓)
7068, 69sylib 221 . . . . . . . . . . . . . 14 (𝑓:𝑧𝑢𝑓:𝑧onto→ran 𝑓)
7170adantr 486 . . . . . . . . . . . . 13 ((𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤)) → 𝑓:𝑧onto→ran 𝑓)
72 fofi 9287 . . . . . . . . . . . . 13 ((𝑧 ∈ Fin ∧ 𝑓:𝑧onto→ran 𝑓) → ran 𝑓 ∈ Fin)
7357, 71, 72syl2an 608 . . . . . . . . . . . 12 (((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) ∧ (𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤))) → ran 𝑓 ∈ Fin)
74 elfpw 9325 . . . . . . . . . . . 12 (ran 𝑓 ∈ (𝒫 𝑢 ∩ Fin) ↔ (ran 𝑓𝑢 ∧ ran 𝑓 ∈ Fin))
7567, 73, 74sylanbrc 595 . . . . . . . . . . 11 (((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) ∧ (𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤))) → ran 𝑓 ∈ (𝒫 𝑢 ∩ Fin))
76 simplrr 790 . . . . . . . . . . . . 13 (((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) ∧ (𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤))) → 𝑋 = 𝑧)
77 uniiun 5021 . . . . . . . . . . . . . . . 16 𝑧 = 𝑤𝑧 𝑤
78 ss2iun 4973 . . . . . . . . . . . . . . . 16 (∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤) → 𝑤𝑧 𝑤 𝑤𝑧 (𝑓𝑤))
7977, 78eqsstrid 3972 . . . . . . . . . . . . . . 15 (∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤) → 𝑧 𝑤𝑧 (𝑓𝑤))
8079ad2antll 742 . . . . . . . . . . . . . 14 (((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) ∧ (𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤))) → 𝑧 𝑤𝑧 (𝑓𝑤))
81 fniunfv 7248 . . . . . . . . . . . . . . . 16 (𝑓 Fn 𝑧 𝑤𝑧 (𝑓𝑤) = ran 𝑓)
8268, 81syl 18 . . . . . . . . . . . . . . 15 (𝑓:𝑧𝑢 𝑤𝑧 (𝑓𝑤) = ran 𝑓)
8382ad2antrl 741 . . . . . . . . . . . . . 14 (((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) ∧ (𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤))) → 𝑤𝑧 (𝑓𝑤) = ran 𝑓)
8480, 83sseqtrd 3970 . . . . . . . . . . . . 13 (((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) ∧ (𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤))) → 𝑧 ran 𝑓)
8576, 84eqsstrd 3968 . . . . . . . . . . . 12 (((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) ∧ (𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤))) → 𝑋 ran 𝑓)
8667unissd 4880 . . . . . . . . . . . . 13 (((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) ∧ (𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤))) → ran 𝑓 𝑢)
8720ad2antrr 739 . . . . . . . . . . . . 13 (((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) ∧ (𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤))) → 𝑋 = 𝑢)
8886, 87sseqtrrd 3971 . . . . . . . . . . . 12 (((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) ∧ (𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤))) → ran 𝑓𝑋)
8985, 88eqssd 3951 . . . . . . . . . . 11 (((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) ∧ (𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤))) → 𝑋 = ran 𝑓)
90 unieq 4881 . . . . . . . . . . . 12 (𝑣 = ran 𝑓 𝑣 = ran 𝑓)
9190rspceeqv 3602 . . . . . . . . . . 11 ((ran 𝑓 ∈ (𝒫 𝑢 ∩ Fin) ∧ 𝑋 = ran 𝑓) → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin)𝑋 = 𝑣)
9275, 89, 91syl2anc 596 . . . . . . . . . 10 (((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) ∧ (𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤))) → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin)𝑋 = 𝑣)
9365, 92exlimddv 1968 . . . . . . . . 9 ((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin)𝑋 = 𝑣)
9493rexlimdvaa 3166 . . . . . . . 8 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → (∃𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin)𝑋 = 𝑧 → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin)𝑋 = 𝑣))
9554, 94syld 48 . . . . . . 7 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → (∀𝑦 ∈ 𝒫 𝐵(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧) → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin)𝑋 = 𝑣))
9695expr 462 . . . . . 6 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ 𝑢 ⊆ (topGen‘𝐵)) → (𝑋 = 𝑢 → (∀𝑦 ∈ 𝒫 𝐵(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧) → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin)𝑋 = 𝑣)))
9796com23 87 . . . . 5 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ 𝑢 ⊆ (topGen‘𝐵)) → (∀𝑦 ∈ 𝒫 𝐵(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧) → (𝑋 = 𝑢 → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin)𝑋 = 𝑣)))
9819, 97sylan2 605 . . . 4 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ 𝑢 ∈ 𝒫 (topGen‘𝐵)) → (∀𝑦 ∈ 𝒫 𝐵(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧) → (𝑋 = 𝑢 → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin)𝑋 = 𝑣)))
9998ralrimdva 3164 . . 3 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → (∀𝑦 ∈ 𝒫 𝐵(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧) → ∀𝑢 ∈ 𝒫 (topGen‘𝐵)(𝑋 = 𝑢 → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin)𝑋 = 𝑣)))
100 tgcl 23200 . . . . . 6 (𝐵 ∈ TopBases → (topGen‘𝐵) ∈ Top)
101100adantr 486 . . . . 5 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → (topGen‘𝐵) ∈ Top)
1021iscmp 23619 . . . . . 6 ((topGen‘𝐵) ∈ Comp ↔ ((topGen‘𝐵) ∈ Top ∧ ∀𝑢 ∈ 𝒫 (topGen‘𝐵)( (topGen‘𝐵) = 𝑢 → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin) (topGen‘𝐵) = 𝑣)))
103102baib 545 . . . . 5 ((topGen‘𝐵) ∈ Top → ((topGen‘𝐵) ∈ Comp ↔ ∀𝑢 ∈ 𝒫 (topGen‘𝐵)( (topGen‘𝐵) = 𝑢 → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin) (topGen‘𝐵) = 𝑣)))
104101, 103syl 18 . . . 4 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → ((topGen‘𝐵) ∈ Comp ↔ ∀𝑢 ∈ 𝒫 (topGen‘𝐵)( (topGen‘𝐵) = 𝑢 → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin) (topGen‘𝐵) = 𝑣)))
1056eqeq1d 2764 . . . . . 6 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → ( (topGen‘𝐵) = 𝑢𝑋 = 𝑢))
1066eqeq1d 2764 . . . . . . 7 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → ( (topGen‘𝐵) = 𝑣𝑋 = 𝑣))
107106rexbidv 3188 . . . . . 6 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → (∃𝑣 ∈ (𝒫 𝑢 ∩ Fin) (topGen‘𝐵) = 𝑣 ↔ ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin)𝑋 = 𝑣))
108105, 107imbi12d 347 . . . . 5 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → (( (topGen‘𝐵) = 𝑢 → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin) (topGen‘𝐵) = 𝑣) ↔ (𝑋 = 𝑢 → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin)𝑋 = 𝑣)))
109108ralbidv 3187 . . . 4 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → (∀𝑢 ∈ 𝒫 (topGen‘𝐵)( (topGen‘𝐵) = 𝑢 → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin) (topGen‘𝐵) = 𝑣) ↔ ∀𝑢 ∈ 𝒫 (topGen‘𝐵)(𝑋 = 𝑢 → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin)𝑋 = 𝑣)))
110104, 109bitrd 282 . . 3 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → ((topGen‘𝐵) ∈ Comp ↔ ∀𝑢 ∈ 𝒫 (topGen‘𝐵)(𝑋 = 𝑢 → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin)𝑋 = 𝑣)))
11199, 110sylibrd 262 . 2 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → (∀𝑦 ∈ 𝒫 𝐵(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧) → (topGen‘𝐵) ∈ Comp))
11218, 111impbid 215 1 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → ((topGen‘𝐵) ∈ Comp ↔ ∀𝑦 ∈ 𝒫 𝐵(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧)))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wb 209  wa 401   = wceq 1570  wex 1812  wcel 2145  wral 3078  wrex 3088  {crab 3414  cin 3901  wss 3902  𝒫 cpw 4560   cuni 4870   ciun 4954  ran crn 5660   Fn wfn 6532  wf 6533  ontowfo 6535  cfv 6537  Fincfn 8956  topGenctg 17528  Topctop 23124  TopBasesctb 23176  Compccmp 23617
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 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2215  ax-ext 2734  ax-sep 5255  ax-nul 5267  ax-pow 5334  ax-pr 5402  ax-un 7740
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 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-reu 3368  df-rab 3415  df-v 3455  df-sbc 3743  df-dif 3905  df-un 3907  df-in 3909  df-ss 3919  df-pss 3922  df-nul 4283  df-if 4486  df-pw 4562  df-sn 4588  df-pr 4590  df-op 4594  df-uni 4871  df-iun 4956  df-br 5108  df-opab 5172  df-mpt 5191  df-tr 5217  df-id 5554  df-eprel 5559  df-po 5567  df-so 5568  df-fr 5612  df-we 5614  df-xp 5665  df-rel 5666  df-cnv 5667  df-co 5668  df-dm 5669  df-rn 5670  df-res 5671  df-ima 5672  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 7867  df-1o 8459  df-en 8957  df-dom 8958  df-fin 8960  df-topgen 17534  df-top 23125  df-bases 23177  df-cmp 23618
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator