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

Theorem tgcmp 23539
Description: A topology generated by a basis is compact iff open covers drawn from the basis have finite subcovers. (See also alexsub 24183, 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 2763 . . . . 5 (topGen‘𝐵) = (topGen‘𝐵)
21iscmp 23526 . . . 4 ((topGen‘𝐵) ∈ Comp ↔ ((topGen‘𝐵) ∈ Top ∧ ∀𝑦 ∈ 𝒫 (topGen‘𝐵)( (topGen‘𝐵) = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin) (topGen‘𝐵) = 𝑧)))
32simprbi 502 . . 3 ((topGen‘𝐵) ∈ Comp → ∀𝑦 ∈ 𝒫 (topGen‘𝐵)( (topGen‘𝐵) = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin) (topGen‘𝐵) = 𝑧))
4 unitg 23105 . . . . . . . 8 (𝐵 ∈ TopBases → (topGen‘𝐵) = 𝐵)
5 eqtr3 2785 . . . . . . . 8 (( (topGen‘𝐵) = 𝐵𝑋 = 𝐵) → (topGen‘𝐵) = 𝑋)
64, 5sylan 591 . . . . . . 7 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → (topGen‘𝐵) = 𝑋)
76eqeq1d 2765 . . . . . 6 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → ( (topGen‘𝐵) = 𝑦𝑋 = 𝑦))
86eqeq1d 2765 . . . . . . 7 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → ( (topGen‘𝐵) = 𝑧𝑋 = 𝑧))
98rexbidv 3189 . . . . . 6 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → (∃𝑧 ∈ (𝒫 𝑦 ∩ Fin) (topGen‘𝐵) = 𝑧 ↔ ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧))
107, 9imbi12d 347 . . . . 5 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → (( (topGen‘𝐵) = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin) (topGen‘𝐵) = 𝑧) ↔ (𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧)))
1110ralbidv 3188 . . . 4 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → (∀𝑦 ∈ 𝒫 (topGen‘𝐵)( (topGen‘𝐵) = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin) (topGen‘𝐵) = 𝑧) ↔ ∀𝑦 ∈ 𝒫 (topGen‘𝐵)(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧)))
12 bastg 23104 . . . . . . 7 (𝐵 ∈ TopBases → 𝐵 ⊆ (topGen‘𝐵))
1312adantr 485 . . . . . 6 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → 𝐵 ⊆ (topGen‘𝐵))
1413sspwd 4576 . . . . 5 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → 𝒫 𝐵 ⊆ 𝒫 (topGen‘𝐵))
15 ssralv 4007 . . . . 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 4570 . . . . 5 (𝑢 ∈ 𝒫 (topGen‘𝐵) → 𝑢 ⊆ (topGen‘𝐵))
20 simprr 784 . . . . . . . . . . 11 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → 𝑋 = 𝑢)
21 simprl 782 . . . . . . . . . . . . . . . . . 18 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → 𝑢 ⊆ (topGen‘𝐵))
2221sselda 3938 . . . . . . . . . . . . . . . . 17 ((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ 𝑡𝑢) → 𝑡 ∈ (topGen‘𝐵))
2322adantrr 729 . . . . . . . . . . . . . . . 16 ((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑡𝑢𝑦𝑡)) → 𝑡 ∈ (topGen‘𝐵))
24 simprr 784 . . . . . . . . . . . . . . . 16 ((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑡𝑢𝑦𝑡)) → 𝑦𝑡)
25 tg2 23103 . . . . . . . . . . . . . . . 16 ((𝑡 ∈ (topGen‘𝐵) ∧ 𝑦𝑡) → ∃𝑤𝐵 (𝑦𝑤𝑤𝑡))
2623, 24, 25syl2anc 595 . . . . . . . . . . . . . . 15 ((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑡𝑢𝑦𝑡)) → ∃𝑤𝐵 (𝑦𝑤𝑤𝑡))
2726expr 461 . . . . . . . . . . . . . 14 ((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ 𝑡𝑢) → (𝑦𝑡 → ∃𝑤𝐵 (𝑦𝑤𝑤𝑡)))
2827reximdva 3178 . . . . . . . . . . . . 13 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → (∃𝑡𝑢 𝑦𝑡 → ∃𝑡𝑢𝑤𝐵 (𝑦𝑤𝑤𝑡)))
29 eluni2 4877 . . . . . . . . . . . . 13 (𝑦 𝑢 ↔ ∃𝑡𝑢 𝑦𝑡)
30 elunirab 4888 . . . . . . . . . . . . . 14 (𝑦 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ↔ ∃𝑤𝐵 (𝑦𝑤 ∧ ∃𝑡𝑢 𝑤𝑡))
31 r19.42v 3197 . . . . . . . . . . . . . . 15 (∃𝑡𝑢 (𝑦𝑤𝑤𝑡) ↔ (𝑦𝑤 ∧ ∃𝑡𝑢 𝑤𝑡))
3231rexbii 3112 . . . . . . . . . . . . . 14 (∃𝑤𝐵𝑡𝑢 (𝑦𝑤𝑤𝑡) ↔ ∃𝑤𝐵 (𝑦𝑤 ∧ ∃𝑡𝑢 𝑤𝑡))
33 rexcom 3294 . . . . . . . . . . . . . 14 (∃𝑤𝐵𝑡𝑢 (𝑦𝑤𝑤𝑡) ↔ ∃𝑡𝑢𝑤𝐵 (𝑦𝑤𝑤𝑡))
3430, 32, 333bitr2i 302 . . . . . . . . . . . . 13 (𝑦 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ↔ ∃𝑡𝑢𝑤𝐵 (𝑦𝑤𝑤𝑡))
3528, 29, 343imtr4g 299 . . . . . . . . . . . 12 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → (𝑦 𝑢𝑦 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡}))
3635ssrdv 3944 . . . . . . . . . . 11 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → 𝑢 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡})
3720, 36eqsstrd 3972 . . . . . . . . . 10 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → 𝑋 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡})
38 ssrab2 4035 . . . . . . . . . . . 12 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ⊆ 𝐵
3938unissi 4882 . . . . . . . . . . 11 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ⊆ 𝐵
40 simplr 780 . . . . . . . . . . 11 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → 𝑋 = 𝐵)
4139, 40sseqtrrid 3981 . . . . . . . . . 10 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ⊆ 𝑋)
4237, 41eqssd 3955 . . . . . . . . 9 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → 𝑋 = {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡})
43 elpw2g 5305 . . . . . . . . . . . 12 (𝐵 ∈ TopBases → ({𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∈ 𝒫 𝐵 ↔ {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ⊆ 𝐵))
4443ad2antrr 738 . . . . . . . . . . 11 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → ({𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∈ 𝒫 𝐵 ↔ {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ⊆ 𝐵))
4538, 44mpbiri 261 . . . . . . . . . 10 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∈ 𝒫 𝐵)
46 unieq 4884 . . . . . . . . . . . . 13 (𝑦 = {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} → 𝑦 = {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡})
4746eqeq2d 2774 . . . . . . . . . . . 12 (𝑦 = {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} → (𝑋 = 𝑦𝑋 = {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡}))
48 pweq 4577 . . . . . . . . . . . . . 14 (𝑦 = {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} → 𝒫 𝑦 = 𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡})
4948ineq1d 4173 . . . . . . . . . . . . 13 (𝑦 = {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} → (𝒫 𝑦 ∩ Fin) = (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin))
5049rexeqdv 3324 . . . . . . . . . . . 12 (𝑦 = {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} → (∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧 ↔ ∃𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin)𝑋 = 𝑧))
5147, 50imbi12d 347 . . . . . . . . . . 11 (𝑦 = {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} → ((𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧) ↔ (𝑋 = {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} → ∃𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin)𝑋 = 𝑧)))
5251rspcv 3578 . . . . . . . . . 10 ({𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∈ 𝒫 𝐵 → (∀𝑦 ∈ 𝒫 𝐵(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧) → (𝑋 = {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} → ∃𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin)𝑋 = 𝑧)))
5345, 52syl 18 . . . . . . . . 9 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → (∀𝑦 ∈ 𝒫 𝐵(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧) → (𝑋 = {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} → ∃𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin)𝑋 = 𝑧)))
5442, 53mpid 45 . . . . . . . 8 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → (∀𝑦 ∈ 𝒫 𝐵(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧) → ∃𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin)𝑋 = 𝑧))
55 elfpw 9312 . . . . . . . . . . . . 13 (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ↔ (𝑧 ⊆ {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∧ 𝑧 ∈ Fin))
5655simprbi 502 . . . . . . . . . . . 12 (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) → 𝑧 ∈ Fin)
5756ad2antrl 740 . . . . . . . . . . 11 ((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) → 𝑧 ∈ Fin)
5855simplbi 501 . . . . . . . . . . . . 13 (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) → 𝑧 ⊆ {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡})
5958ad2antrl 740 . . . . . . . . . . . 12 ((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) → 𝑧 ⊆ {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡})
60 ssrab 4026 . . . . . . . . . . . . 13 (𝑧 ⊆ {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ↔ (𝑧𝐵 ∧ ∀𝑤𝑧𝑡𝑢 𝑤𝑡))
6160simprbi 502 . . . . . . . . . . . 12 (𝑧 ⊆ {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} → ∀𝑤𝑧𝑡𝑢 𝑤𝑡)
6259, 61syl 18 . . . . . . . . . . 11 ((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) → ∀𝑤𝑧𝑡𝑢 𝑤𝑡)
63 sseq2 3964 . . . . . . . . . . . 12 (𝑡 = (𝑓𝑤) → (𝑤𝑡𝑤 ⊆ (𝑓𝑤)))
6463ac6sfi 9245 . . . . . . . . . . 11 ((𝑧 ∈ Fin ∧ ∀𝑤𝑧𝑡𝑢 𝑤𝑡) → ∃𝑓(𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤)))
6557, 62, 64syl2anc 595 . . . . . . . . . 10 ((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) → ∃𝑓(𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤)))
66 frn 6715 . . . . . . . . . . . . 13 (𝑓:𝑧𝑢 → ran 𝑓𝑢)
6766ad2antrl 740 . . . . . . . . . . . 12 (((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) ∧ (𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤))) → ran 𝑓𝑢)
68 ffn 6707 . . . . . . . . . . . . . . 15 (𝑓:𝑧𝑢𝑓 Fn 𝑧)
69 dffn4 6800 . . . . . . . . . . . . . . 15 (𝑓 Fn 𝑧𝑓:𝑧onto→ran 𝑓)
7068, 69sylib 221 . . . . . . . . . . . . . 14 (𝑓:𝑧𝑢𝑓:𝑧onto→ran 𝑓)
7170adantr 485 . . . . . . . . . . . . 13 ((𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤)) → 𝑓:𝑧onto→ran 𝑓)
72 fofi 9274 . . . . . . . . . . . . 13 ((𝑧 ∈ Fin ∧ 𝑓:𝑧onto→ran 𝑓) → ran 𝑓 ∈ Fin)
7357, 71, 72syl2an 607 . . . . . . . . . . . 12 (((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) ∧ (𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤))) → ran 𝑓 ∈ Fin)
74 elfpw 9312 . . . . . . . . . . . 12 (ran 𝑓 ∈ (𝒫 𝑢 ∩ Fin) ↔ (ran 𝑓𝑢 ∧ ran 𝑓 ∈ Fin))
7567, 73, 74sylanbrc 594 . . . . . . . . . . 11 (((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) ∧ (𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤))) → ran 𝑓 ∈ (𝒫 𝑢 ∩ Fin))
76 simplrr 789 . . . . . . . . . . . . 13 (((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) ∧ (𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤))) → 𝑋 = 𝑧)
77 uniiun 5024 . . . . . . . . . . . . . . . 16 𝑧 = 𝑤𝑧 𝑤
78 ss2iun 4976 . . . . . . . . . . . . . . . 16 (∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤) → 𝑤𝑧 𝑤 𝑤𝑧 (𝑓𝑤))
7977, 78eqsstrid 3976 . . . . . . . . . . . . . . 15 (∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤) → 𝑧 𝑤𝑧 (𝑓𝑤))
8079ad2antll 741 . . . . . . . . . . . . . 14 (((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) ∧ (𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤))) → 𝑧 𝑤𝑧 (𝑓𝑤))
81 fniunfv 7247 . . . . . . . . . . . . . . . 16 (𝑓 Fn 𝑧 𝑤𝑧 (𝑓𝑤) = ran 𝑓)
8268, 81syl 18 . . . . . . . . . . . . . . 15 (𝑓:𝑧𝑢 𝑤𝑧 (𝑓𝑤) = ran 𝑓)
8382ad2antrl 740 . . . . . . . . . . . . . 14 (((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) ∧ (𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤))) → 𝑤𝑧 (𝑓𝑤) = ran 𝑓)
8480, 83sseqtrd 3974 . . . . . . . . . . . . 13 (((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) ∧ (𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤))) → 𝑧 ran 𝑓)
8576, 84eqsstrd 3972 . . . . . . . . . . . 12 (((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) ∧ (𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤))) → 𝑋 ran 𝑓)
8667unissd 4883 . . . . . . . . . . . . 13 (((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) ∧ (𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤))) → ran 𝑓 𝑢)
8720ad2antrr 738 . . . . . . . . . . . . 13 (((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) ∧ (𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤))) → 𝑋 = 𝑢)
8886, 87sseqtrrd 3975 . . . . . . . . . . . 12 (((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) ∧ (𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤))) → ran 𝑓𝑋)
8985, 88eqssd 3955 . . . . . . . . . . 11 (((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) ∧ (𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤))) → 𝑋 = ran 𝑓)
90 unieq 4884 . . . . . . . . . . . 12 (𝑣 = ran 𝑓 𝑣 = ran 𝑓)
9190rspceeqv 3605 . . . . . . . . . . 11 ((ran 𝑓 ∈ (𝒫 𝑢 ∩ Fin) ∧ 𝑋 = ran 𝑓) → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin)𝑋 = 𝑣)
9275, 89, 91syl2anc 595 . . . . . . . . . 10 (((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) ∧ (𝑓:𝑧𝑢 ∧ ∀𝑤𝑧 𝑤 ⊆ (𝑓𝑤))) → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin)𝑋 = 𝑣)
9365, 92exlimddv 1965 . . . . . . . . 9 ((((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) ∧ (𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin) ∧ 𝑋 = 𝑧)) → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin)𝑋 = 𝑣)
9493rexlimdvaa 3167 . . . . . . . 8 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → (∃𝑧 ∈ (𝒫 {𝑤𝐵 ∣ ∃𝑡𝑢 𝑤𝑡} ∩ Fin)𝑋 = 𝑧 → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin)𝑋 = 𝑣))
9554, 94syld 48 . . . . . . 7 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ (𝑢 ⊆ (topGen‘𝐵) ∧ 𝑋 = 𝑢)) → (∀𝑦 ∈ 𝒫 𝐵(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧) → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin)𝑋 = 𝑣))
9695expr 461 . . . . . 6 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ 𝑢 ⊆ (topGen‘𝐵)) → (𝑋 = 𝑢 → (∀𝑦 ∈ 𝒫 𝐵(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧) → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin)𝑋 = 𝑣)))
9796com23 87 . . . . 5 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ 𝑢 ⊆ (topGen‘𝐵)) → (∀𝑦 ∈ 𝒫 𝐵(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧) → (𝑋 = 𝑢 → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin)𝑋 = 𝑣)))
9819, 97sylan2 604 . . . 4 (((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) ∧ 𝑢 ∈ 𝒫 (topGen‘𝐵)) → (∀𝑦 ∈ 𝒫 𝐵(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧) → (𝑋 = 𝑢 → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin)𝑋 = 𝑣)))
9998ralrimdva 3165 . . 3 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → (∀𝑦 ∈ 𝒫 𝐵(𝑋 = 𝑦 → ∃𝑧 ∈ (𝒫 𝑦 ∩ Fin)𝑋 = 𝑧) → ∀𝑢 ∈ 𝒫 (topGen‘𝐵)(𝑋 = 𝑢 → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin)𝑋 = 𝑣)))
100 tgcl 23107 . . . . . 6 (𝐵 ∈ TopBases → (topGen‘𝐵) ∈ Top)
101100adantr 485 . . . . 5 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → (topGen‘𝐵) ∈ Top)
1021iscmp 23526 . . . . . 6 ((topGen‘𝐵) ∈ Comp ↔ ((topGen‘𝐵) ∈ Top ∧ ∀𝑢 ∈ 𝒫 (topGen‘𝐵)( (topGen‘𝐵) = 𝑢 → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin) (topGen‘𝐵) = 𝑣)))
103102baib 544 . . . . 5 ((topGen‘𝐵) ∈ Top → ((topGen‘𝐵) ∈ Comp ↔ ∀𝑢 ∈ 𝒫 (topGen‘𝐵)( (topGen‘𝐵) = 𝑢 → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin) (topGen‘𝐵) = 𝑣)))
104101, 103syl 18 . . . 4 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → ((topGen‘𝐵) ∈ Comp ↔ ∀𝑢 ∈ 𝒫 (topGen‘𝐵)( (topGen‘𝐵) = 𝑢 → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin) (topGen‘𝐵) = 𝑣)))
1056eqeq1d 2765 . . . . . 6 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → ( (topGen‘𝐵) = 𝑢𝑋 = 𝑢))
1066eqeq1d 2765 . . . . . . 7 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → ( (topGen‘𝐵) = 𝑣𝑋 = 𝑣))
107106rexbidv 3189 . . . . . 6 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → (∃𝑣 ∈ (𝒫 𝑢 ∩ Fin) (topGen‘𝐵) = 𝑣 ↔ ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin)𝑋 = 𝑣))
108105, 107imbi12d 347 . . . . 5 ((𝐵 ∈ TopBases ∧ 𝑋 = 𝐵) → (( (topGen‘𝐵) = 𝑢 → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin) (topGen‘𝐵) = 𝑣) ↔ (𝑋 = 𝑢 → ∃𝑣 ∈ (𝒫 𝑢 ∩ Fin)𝑋 = 𝑣)))
109108ralbidv 3188 . . . 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
Syntax hints:  wi 4  wb 209  wa 400   = wceq 1570  wex 1809  wcel 2143  wral 3079  wrex 3089  {crab 3416  cin 3905  wss 3906  𝒫 cpw 4563   cuni 4873   ciun 4957  ran crn 5664   Fn wfn 6533  wf 6534  ontowfo 6536  cfv 6538  Fincfn 8944  topGenctg 17491  Topctop 23031  TopBasesctb 23083  Compccmp 23524
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1825  ax-4 1839  ax-5 1940  ax-6 1997  ax-7 2038  ax-8 2145  ax-9 2153  ax-10 2176  ax-11 2192  ax-12 2213  ax-ext 2735  ax-sep 5258  ax-nul 5270  ax-pow 5338  ax-pr 5406  ax-un 7734
This theorem depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1810  df-nf 1814  df-sb 2097  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2838  df-nfc 2912  df-ne 2959  df-ral 3080  df-rex 3090  df-reu 3370  df-rab 3417  df-v 3457  df-sbc 3746  df-dif 3909  df-un 3911  df-in 3913  df-ss 3923  df-pss 3926  df-nul 4288  df-if 4489  df-pw 4565  df-sn 4591  df-pr 4593  df-op 4597  df-uni 4874  df-iun 4959  df-br 5111  df-opab 5175  df-mpt 5194  df-tr 5220  df-id 5558  df-eprel 5563  df-po 5571  df-so 5572  df-fr 5616  df-we 5618  df-xp 5669  df-rel 5670  df-cnv 5671  df-co 5672  df-dm 5673  df-rn 5674  df-res 5675  df-ima 5676  df-ord 6365  df-on 6366  df-lim 6367  df-suc 6368  df-iota 6494  df-fun 6540  df-fn 6541  df-f 6542  df-f1 6543  df-fo 6544  df-f1o 6545  df-fv 6546  df-om 7864  df-1o 8454  df-en 8945  df-dom 8946  df-fin 8948  df-topgen 17497  df-top 23032  df-bases 23084  df-cmp 23525
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator