J : Type u
inst✝¹ : SmallCategory J
inst✝ : IsCofilteredOrEmpty J
F : J ⥤ Type u
hf : ∀ (j : J), Finite (F.obj j)
hne : ∀ (j : J), _root_.Nonempty (F.obj j)
F' : J ⥤ TopCat := F ⋙ TopCat.discrete
⊢ Set.Nonempty (Functor.sections F)
J : Type u
inst✝¹ : SmallCategory J
inst✝ : IsCofilteredOrEmpty J
F : J ⥤ Type u
hf : ∀ (j : J), Finite (F.obj j)
hne : ∀ (j : J), _root_.Nonempty (F.obj j)
⊢ Set.Nonempty (Functor.sections F)
let F' : J ⥤ TopCat := F ⋙ TopCat.discrete
J : Type u
inst✝¹ : SmallCategory J
inst✝ : IsCofilteredOrEmpty J
F : J ⥤ Type u
hf : ∀ (j : J), Finite (F.obj j)
hne : ∀ (j : J), _root_.Nonempty (F.obj j)
F' : J ⥤ TopCat := F ⋙ TopCat.discrete
this : ∀ (j : J), DiscreteTopology ↑(F'.obj j)
⊢ Set.Nonempty (Functor.sections F)
J : Type u
inst✝¹ : SmallCategory J
inst✝ : IsCofilteredOrEmpty J
F : J ⥤ Type u
hf : ∀ (j : J), Finite (F.obj j)
hne : ∀ (j : J), _root_.Nonempty (F.obj j)
F' : J ⥤ TopCat := F ⋙ TopCat.discrete
⊢ Set.Nonempty (Functor.sections F)
haveI : ∀ j, DiscreteTopology (F'.obj j) := fun _ => ⟨rfl⟩
J : Type u
inst✝¹ : SmallCategory J
inst✝ : IsCofilteredOrEmpty J
F : J ⥤ Type u
hf : ∀ (j : J), Finite (F.obj j)
hne : ∀ (j : J), _root_.Nonempty (F.obj j)
F' : J ⥤ TopCat := F ⋙ TopCat.discrete
this✝ : ∀ (j : J), DiscreteTopology ↑(F'.obj j)
this : ∀ (j : J), Finite ↑(F'.obj j)
⊢ Set.Nonempty (Functor.sections F)
J : Type u
inst✝¹ : SmallCategory J
inst✝ : IsCofilteredOrEmpty J
F : J ⥤ Type u
hf : ∀ (j : J), Finite (F.obj j)
hne : ∀ (j : J), _root_.Nonempty (F.obj j)
F' : J ⥤ TopCat := F ⋙ TopCat.discrete
this : ∀ (j : J), DiscreteTopology ↑(F'.obj j)
⊢ Set.Nonempty (Functor.sections F)
haveI : ∀ j, Finite (F'.obj j) := hf
J : Type u
inst✝¹ : SmallCategory J
inst✝ : IsCofilteredOrEmpty J
F : J ⥤ Type u
hf : ∀ (j : J), Finite (F.obj j)
hne : ∀ (j : J), _root_.Nonempty (F.obj j)
F' : J ⥤ TopCat := F ⋙ TopCat.discrete
this✝¹ : ∀ (j : J), DiscreteTopology ↑(F'.obj j)
this✝ : ∀ (j : J), Finite ↑(F'.obj j)
this : ∀ (j : J), _root_.Nonempty ↑(F'.obj j)
⊢ Set.Nonempty (Functor.sections F)
J : Type u
inst✝¹ : SmallCategory J
inst✝ : IsCofilteredOrEmpty J
F : J ⥤ Type u
hf : ∀ (j : J), Finite (F.obj j)
hne : ∀ (j : J), _root_.Nonempty (F.obj j)
F' : J ⥤ TopCat := F ⋙ TopCat.discrete
this✝ : ∀ (j : J), DiscreteTopology ↑(F'.obj j)
this : ∀ (j : J), Finite ↑(F'.obj j)
⊢ Set.Nonempty (Functor.sections F)
haveI : ∀ j, Nonempty (F'.obj j) := hne
case intro.mk
J : Type u
inst✝¹ : SmallCategory J
inst✝ : IsCofilteredOrEmpty J
F : J ⥤ Type u
hf : ∀ (j : J), Finite (F.obj j)
hne : ∀ (j : J), _root_.Nonempty (F.obj j)
F' : J ⥤ TopCat := F ⋙ TopCat.discrete
this✝¹ : ∀ (j : J), DiscreteTopology ↑(F'.obj j)
this✝ : ∀ (j : J), Finite ↑(F'.obj j)
this : ∀ (j : J), _root_.Nonempty ↑(F'.obj j)
u : (j : J) → ↑(F'.obj j)
hu : u ∈ {u | ∀ {i j : J} (f : i ⟶ j), (forget TopCat).map (F'.map f) (u i) = u j}
⊢ Set.Nonempty (Functor.sections F)
J : Type u
inst✝¹ : SmallCategory J
inst✝ : IsCofilteredOrEmpty J
F : J ⥤ Type u
hf : ∀ (j : J), Finite (F.obj j)
hne : ∀ (j : J), _root_.Nonempty (F.obj j)
F' : J ⥤ TopCat := F ⋙ TopCat.discrete
this✝¹ : ∀ (j : J), DiscreteTopology ↑(F'.obj j)
this✝ : ∀ (j : J), Finite ↑(F'.obj j)
this : ∀ (j : J), _root_.Nonempty ↑(F'.obj j)
⊢ Set.Nonempty (Functor.sections F)
obtain ⟨⟨u, hu⟩⟩ := TopCat.nonempty_limitCone_of_compact_t2_cofiltered_system.{u} F'
no goals
case intro.mk
J : Type u
inst✝¹ : SmallCategory J
inst✝ : IsCofilteredOrEmpty J
F : J ⥤ Type u
hf : ∀ (j : J), Finite (F.obj j)
hne : ∀ (j : J), _root_.Nonempty (F.obj j)
F' : J ⥤ TopCat := F ⋙ TopCat.discrete
this✝¹ : ∀ (j : J), DiscreteTopology ↑(F'.obj j)
this✝ : ∀ (j : J), Finite ↑(F'.obj j)
this : ∀ (j : J), _root_.Nonempty ↑(F'.obj j)
u : (j : J) → ↑(F'.obj j)
hu : u ∈ {u | ∀ {i j : J} (f : i ⟶ j), (forget TopCat).map (F'.map f) (u i) = u j}
⊢ Set.Nonempty (Functor.sections F)
exact ⟨u, hu⟩