internlm/Lean-Github huggingface dataset:
Theorem: exists_image_ne_top
Proof state before:
case pos.h
A : Type u_1
B : Type u_2
C : Type u_3
D : Type ?u.12569
E : Set D
inst✝⁸ : TopologicalSpace A
inst✝⁷ : TopologicalSpace B
inst✝⁶ : TopologicalSpace C
inst✝⁵ : TopologicalSpace D
ρ : ↑E → A
ρ_cont : Continuous ρ
ρ_surj : Function.Surjective ρ
π : D → A
π_cont : Continuous π
π_surj : Function.Surjective π
image_ne_top : ∀ (E₀ : Set ↑E), E₀ ≠ ⊤ → IsClosed E₀ → ρ '' E₀ ≠ ⊤
inst✝⁴ : T2Space A
inst✝³ : CompactSpace A
inst✝² : T2Space B
inst✝¹ : CompactSpace B
inst✝ : T2Space C
φ : A → C
f : B → C
hφ : Continuous φ
hf : Continuous f
hf' : Function.Surjective f
this : CompactSpace ↑(D' φ f)
S : Set (Set ↑(D' φ f)) := {E | CompactSpace ↑E ∧ π₁ φ f '' E = univ}
Ch : Set (Set ↑(D' φ f))
h : Ch ⊆ S
hCh : IsChain (fun x x_1 => x ⊆ x_1) Ch
M : Set ↑(D' φ f) := ⋂₀ Ch
h₂ : Nonempty ↑Ch
x : A
x✝ : x ∈ univ
⊢ x ∈ π₁ φ f '' M
Tactic:
rw [mem_image]
Proof state after:
case pos.h
A : Type u_1
B : Type u_2
C : Type u_3
D : Type ?u.12569
E : Set D
inst✝⁸ : TopologicalSpace A
inst✝⁷ : TopologicalSpace B
inst✝⁶ : TopologicalSpace C
inst✝⁵ : TopologicalSpace D
ρ : ↑E → A
ρ_cont : Continuous ρ
ρ_surj : Function.Surjective ρ
π : D → A
π_cont : Continuous π
π_surj : Function.Surjective π
image_ne_top : ∀ (E₀ : Set ↑E), E₀ ≠ ⊤ → IsClosed E₀ → ρ '' E₀ ≠ ⊤
inst✝⁴ : T2Space A
inst✝³ : CompactSpace A
inst✝² : T2Space B
inst✝¹ : CompactSpace B
inst✝ : T2Space C
φ : A → C
f : B → C
hφ : Continuous φ
hf : Continuous f
hf' : Function.Surjective f
this : CompactSpace ↑(D' φ f)
S : Set (Set ↑(D' φ f)) := {E | CompactSpace ↑E ∧ π₁ φ f '' E = univ}
Ch : Set (Set ↑(D' φ f))
h : Ch ⊆ S
hCh : IsChain (fun x x_1 => x ⊆ x_1) Ch
M : Set ↑(D' φ f) := ⋂₀ Ch
h₂ : Nonempty ↑Ch
x : A
x✝ : x ∈ univ
⊢ ∃ x_1, x_1 ∈ M ∧ π₁ φ f x_1 = x
Theorem: exists_image_ne_top
Proof state before:
case pos.h
A : Type u_1
B : Type u_2
C : Type u_3
D : Type ?u.12569
E : Set D
inst✝⁸ : TopologicalSpace A
inst✝⁷ : TopologicalSpace B
inst✝⁶ : TopologicalSpace C
inst✝⁵ : TopologicalSpace D
ρ : ↑E → A
ρ_cont : Continuous ρ
ρ_surj : Function.Surjective ρ
π : D → A
π_cont : Continuous π
π_surj : Function.Surjective π
image_ne_top : ∀ (E₀ : Set ↑E), E₀ ≠ ⊤ → IsClosed E₀ → ρ '' E₀ ≠ ⊤
inst✝⁴ : T2Space A
inst✝³ : CompactSpace A
inst✝² : T2Space B
inst✝¹ : CompactSpace B
inst✝ : T2Space C
φ : A → C
f : B → C
hφ : Continuous φ
hf : Continuous f
hf' : Function.Surjective f
this : CompactSpace ↑(D' φ f)
S : Set (Set ↑(D' φ f)) := {E | CompactSpace ↑E ∧ π₁ φ f '' E = univ}
Ch : Set (Set ↑(D' φ f))
h : Ch ⊆ S
hCh : IsChain (fun x x_1 => x ⊆ x_1) Ch
M : Set ↑(D' φ f) := ⋂₀ Ch
h₂ : Nonempty ↑Ch
x : A
x✝ : x ∈ univ
⊢ ∃ x_1, x_1 ∈ M ∧ π₁ φ f x_1 = x
Tactic:
change Set.Nonempty {x_1 : D' φ f | x_1 ∈ M ∧ π₁ φ f x_1 = x}
Proof state after:
case pos.h
A : Type u_1
B : Type u_2
C : Type u_3
D : Type ?u.12569
E : Set D
inst✝⁸ : TopologicalSpace A
inst✝⁷ : TopologicalSpace B
inst✝⁶ : TopologicalSpace C
inst✝⁵ : TopologicalSpace D
ρ : ↑E → A
ρ_cont : Continuous ρ
ρ_surj : Function.Surjective ρ
π : D → A
π_cont : Continuous π
π_surj : Function.Surjective π
image_ne_top : ∀ (E₀ : Set ↑E), E₀ ≠ ⊤ → IsClosed E₀ → ρ '' E₀ ≠ ⊤
inst✝⁴ : T2Space A
inst✝³ : CompactSpace A
inst✝² : T2Space B
inst✝¹ : CompactSpace B
inst✝ : T2Space C
φ : A → C
f : B → C
hφ : Continuous φ
hf : Continuous f
hf' : Function.Surjective f
this : CompactSpace ↑(D' φ f)
S : Set (Set ↑(D' φ f)) := {E | CompactSpace ↑E ∧ π₁ φ f '' E = univ}
Ch : Set (Set ↑(D' φ f))
h : Ch ⊆ S
hCh : IsChain (fun x x_1 => x ⊆ x_1) Ch
M : Set ↑(D' φ f) := ⋂₀ Ch
h₂ : Nonempty ↑Ch
x : A
x✝ : x ∈ univ
⊢ Set.Nonempty {x_1 | x_1 ∈ M ∧ π₁ φ f x_1 = x}
Theorem: exists_image_ne_top
Proof state before:
case pos.h
A : Type u_1
B : Type u_2
C : Type u_3
D : Type ?u.12569
E : Set D
inst✝⁸ : TopologicalSpace A
inst✝⁷ : TopologicalSpace B
inst✝⁶ : TopologicalSpace C
inst✝⁵ : TopologicalSpace D
ρ : ↑E → A
ρ_cont : Continuous ρ
ρ_surj : Function.Surjective ρ
π : D → A
π_cont : Continuous π
π_surj : Function.Surjective π
image_ne_top : ∀ (E₀ : Set ↑E), E₀ ≠ ⊤ → IsClosed E₀ → ρ '' E₀ ≠ ⊤
inst✝⁴ : T2Space A
inst✝³ : CompactSpace A
inst✝² : T2Space B
inst✝¹ : CompactSpace B
inst✝ : T2Space C
φ : A → C
f : B → C
hφ : Continuous φ
hf : Continuous f
hf' : Function.Surjective f
this : CompactSpace ↑(D' φ f)
S : Set (Set ↑(D' φ f)) := {E | CompactSpace ↑E ∧ π₁ φ f '' E = univ}
Ch : Set (Set ↑(D' φ f))
h : Ch ⊆ S
hCh : IsChain (fun x x_1 => x ⊆ x_1) Ch
M : Set ↑(D' φ f) := ⋂₀ Ch
h₂ : Nonempty ↑Ch
x : A
x✝ : x ∈ univ
⊢ Set.Nonempty {x_1 | x_1 ∈ M ∧ π₁ φ f x_1 = x}
Tactic:
let Z : Ch → Set (D' φ f) := fun X => X ∩ (π₁ _ _)⁻¹' {x}
Proof state after:
case pos.h
A : Type u_1
B : Type u_2
C : Type u_3
D : Type ?u.12569
E : Set D
inst✝⁸ : TopologicalSpace A
inst✝⁷ : TopologicalSpace B
inst✝⁶ : TopologicalSpace C
inst✝⁵ : TopologicalSpace D
ρ : ↑E → A
ρ_cont : Continuous ρ
ρ_surj : Function.Surjective ρ
π : D → A
π_cont : Continuous π
π_surj : Function.Surjective π
image_ne_top : ∀ (E₀ : Set ↑E), E₀ ≠ ⊤ → IsClosed E₀ → ρ '' E₀ ≠ ⊤
inst✝⁴ : T2Space A
inst✝³ : CompactSpace A
inst✝² : T2Space B
inst✝¹ : CompactSpace B
inst✝ : T2Space C
φ : A → C
f : B → C
hφ : Continuous φ
hf : Continuous f
hf' : Function.Surjective f
this : CompactSpace ↑(D' φ f)
S : Set (Set ↑(D' φ f)) := {E | CompactSpace ↑E ∧ π₁ φ f '' E = univ}
Ch : Set (Set ↑(D' φ f))
h : Ch ⊆ S
hCh : IsChain (fun x x_1 => x ⊆ x_1) Ch
M : Set ↑(D' φ f) := ⋂₀ Ch
h₂ : Nonempty ↑Ch
x : A
x✝ : x ∈ univ
Z : ↑Ch → Set ↑(D' φ f) := fun X => ↑X ∩ π₁ φ f ⁻¹' {x}
⊢ Set.Nonempty {x_1 | x_1 ∈ M ∧ π₁ φ f x_1 = x}
Theorem: exists_image_ne_top
Proof state before:
case pos.h
A : Type u_1
B : Type u_2
C : Type u_3
D : Type ?u.12569
E : Set D
inst✝⁸ : TopologicalSpace A
inst✝⁷ : TopologicalSpace B
inst✝⁶ : TopologicalSpace C
inst✝⁵ : TopologicalSpace D
ρ : ↑E → A
ρ_cont : Continuous ρ
ρ_surj : Function.Surjective ρ
π : D → A
π_cont : Continuous π
π_surj : Function.Surjective π
image_ne_top : ∀ (E₀ : Set ↑E), E₀ ≠ ⊤ → IsClosed E₀ → ρ '' E₀ ≠ ⊤
inst✝⁴ : T2Space A
inst✝³ : CompactSpace A
inst✝² : T2Space B
inst✝¹ : CompactSpace B
inst✝ : T2Space C
φ : A → C
f : B → C
hφ : Continuous φ
hf : Continuous f
hf' : Function.Surjective f
this : CompactSpace ↑(D' φ f)
S : Set (Set ↑(D' φ f)) := {E | CompactSpace ↑E ∧ π₁ φ f '' E = univ}
Ch : Set (Set ↑(D' φ f))
h : Ch ⊆ S
hCh : IsChain (fun x x_1 => x ⊆ x_1) Ch
M : Set ↑(D' φ f) := ⋂₀ Ch
h₂ : Nonempty ↑Ch
x : A
x✝ : x ∈ univ
Z : ↑Ch → Set ↑(D' φ f) := fun X => ↑X ∩ π₁ φ f ⁻¹' {x}
⊢ Set.Nonempty {x_1 | x_1 ∈ M ∧ π₁ φ f x_1 = x}
Tactic:
suffices Set.Nonempty <| ⋂ (X : Ch), (X: Set (D' φ f)) ∩ (π₁ _ _)⁻¹' {x} by
  convert this
  rw [← iInter_inter, ←  sInter_eq_iInter]
  rw [←setOf_inter_eq_sep, inter_comm]
  congr
Proof state after:
case pos.h
A : Type u_1
B : Type u_2
C : Type u_3
D : Type ?u.12569
E : Set D
inst✝⁸ : TopologicalSpace A
inst✝⁷ : TopologicalSpace B
inst✝⁶ : TopologicalSpace C
inst✝⁵ : TopologicalSpace D
ρ : ↑E → A
ρ_cont : Continuous ρ
ρ_surj : Function.Surjective ρ
π : D → A
π_cont : Continuous π
π_surj : Function.Surjective π
image_ne_top : ∀ (E₀ : Set ↑E), E₀ ≠ ⊤ → IsClosed E₀ → ρ '' E₀ ≠ ⊤
inst✝⁴ : T2Space A
inst✝³ : CompactSpace A
inst✝² : T2Space B
inst✝¹ : CompactSpace B
inst✝ : T2Space C
φ : A → C
f : B → C
hφ : Continuous φ
hf : Continuous f
hf' : Function.Surjective f
this : CompactSpace ↑(D' φ f)
S : Set (Set ↑(D' φ f)) := {E | CompactSpace ↑E ∧ π₁ φ f '' E = univ}
Ch : Set (Set ↑(D' φ f))
h : Ch ⊆ S
hCh : IsChain (fun x x_1 => x ⊆ x_1) Ch
M : Set ↑(D' φ f) := ⋂₀ Ch
h₂ : Nonempty ↑Ch
x : A
x✝ : x ∈ univ
Z : ↑Ch → Set ↑(D' φ f) := fun X => ↑X ∩ π₁ φ f ⁻¹' {x}
⊢ Set.Nonempty (⋂ (X : ↑Ch), ↑X ∩ π₁ φ f ⁻¹' {x})
Theorem: exists_image_ne_top
Proof state before:
case pos.h
A : Type u_1
B : Type u_2
C : Type u_3
D : Type ?u.12569
E : Set D
inst✝⁸ : TopologicalSpace A
inst✝⁷ : TopologicalSpace B
inst✝⁶ : TopologicalSpace C
inst✝⁵ : TopologicalSpace D
ρ : ↑E → A
ρ_cont : Continuous ρ
ρ_surj : Function.Surjective ρ
π : D → A
π_cont : Continuous π
π_surj : Function.Surjective π
image_ne_top : ∀ (E₀ : Set ↑E), E₀ ≠ ⊤ → IsClosed E₀ → ρ '' E₀ ≠ ⊤
inst✝⁴ : T2Space A
inst✝³ : CompactSpace A
inst✝² : T2Space B
inst✝¹ : CompactSpace B
inst✝ : T2Space C
φ : A → C
f : B → C
hφ : Continuous φ
hf : Continuous f
hf' : Function.Surjective f
this : CompactSpace ↑(D' φ f)
S : Set (Set ↑(D' φ f)) := {E | CompactSpace ↑E ∧ π₁ φ f '' E = univ}
Ch : Set (Set ↑(D' φ f))
h : Ch ⊆ S
hCh : IsChain (fun x x_1 => x ⊆ x_1) Ch
M : Set ↑(D' φ f) := ⋂₀ Ch
h₂ : Nonempty ↑Ch
x : A
x✝ : x ∈ univ
Z : ↑Ch → Set ↑(D' φ f) := fun X => ↑X ∩ π₁ φ f ⁻¹' {x}
⊢ Set.Nonempty (⋂ (X : ↑Ch), ↑X ∩ π₁ φ f ⁻¹' {x})
Tactic:
have assumps : ∀ (i : ↑Ch), Set.Nonempty (Z i) ∧ IsCompact (Z i) ∧ IsClosed (Z i) := by
  intro X
  simp
  have h₃ := (h (Subtype.mem X)).2
  rw [←image_inter_nonempty_iff, h₃]
  simp
  have := (h (Subtype.mem X)).1
  rw [←isCompact_iff_compactSpace] at this
  have h_cl := IsClosed.inter (IsCompact.isClosed this)
      (IsClosed.preimage (Continuous.comp continuous_fst continuous_subtype_val) <| T1Space.t1 x)
  exact And.intro (IsClosed.isCompact h_cl) h_cl
Proof state after:
case pos.h
A : Type u_1
B : Type u_2
C : Type u_3
D : Type ?u.12569
E : Set D
inst✝⁸ : TopologicalSpace A
inst✝⁷ : TopologicalSpace B
inst✝⁶ : TopologicalSpace C
inst✝⁵ : TopologicalSpace D
ρ : ↑E → A
ρ_cont : Continuous ρ
ρ_surj : Function.Surjective ρ
π : D → A
π_cont : Continuous π
π_surj : Function.Surjective π
image_ne_top : ∀ (E₀ : Set ↑E), E₀ ≠ ⊤ → IsClosed E₀ → ρ '' E₀ ≠ ⊤
inst✝⁴ : T2Space A
inst✝³ : CompactSpace A
inst✝² : T2Space B
inst✝¹ : CompactSpace B
inst✝ : T2Space C
φ : A → C
f : B → C
hφ : Continuous φ
hf : Continuous f
hf' : Function.Surjective f
this : CompactSpace ↑(D' φ f)
S : Set (Set ↑(D' φ f)) := {E | CompactSpace ↑E ∧ π₁ φ f '' E = univ}
Ch : Set (Set ↑(D' φ f))
h : Ch ⊆ S
hCh : IsChain (fun x x_1 => x ⊆ x_1) Ch
M : Set ↑(D' φ f) := ⋂₀ Ch
h₂ : Nonempty ↑Ch
x : A
x✝ : x ∈ univ
Z : ↑Ch → Set ↑(D' φ f) := fun X => ↑X ∩ π₁ φ f ⁻¹' {x}
assumps : ∀ (i : ↑Ch), Set.Nonempty (Z i) ∧ IsCompact (Z i) ∧ IsClosed (Z i)
⊢ Set.Nonempty (⋂ (X : ↑Ch), ↑X ∩ π₁ φ f ⁻¹' {x})
Theorem: exists_image_ne_top
Proof state before:
case pos.h
A : Type u_1
B : Type u_2
C : Type u_3
D : Type ?u.12569
E : Set D
inst✝⁸ : TopologicalSpace A
inst✝⁷ : TopologicalSpace B
inst✝⁶ : TopologicalSpace C
inst✝⁵ : TopologicalSpace D
ρ : ↑E → A
ρ_cont : Continuous ρ
ρ_surj : Function.Surjective ρ
π : D → A
π_cont : Continuous π
π_surj : Function.Surjective π
image_ne_top : ∀ (E₀ : Set ↑E), E₀ ≠ ⊤ → IsClosed E₀ → ρ '' E₀ ≠ ⊤
inst✝⁴ : T2Space A
inst✝³ : CompactSpace A
inst✝² : T2Space B
inst✝¹ : CompactSpace B
inst✝ : T2Space C
φ : A → C
f : B → C
hφ : Continuous φ
hf : Continuous f
hf' : Function.Surjective f
this : CompactSpace ↑(D' φ f)
S : Set (Set ↑(D' φ f)) := {E | CompactSpace ↑E ∧ π₁ φ f '' E = univ}
Ch : Set (Set ↑(D' φ f))
h : Ch ⊆ S
hCh : IsChain (fun x x_1 => x ⊆ x_1) Ch
M : Set ↑(D' φ f) := ⋂₀ Ch
h₂ : Nonempty ↑Ch
x : A
x✝ : x ∈ univ
Z : ↑Ch → Set ↑(D' φ f) := fun X => ↑X ∩ π₁ φ f ⁻¹' {x}
assumps : ∀ (i : ↑Ch), Set.Nonempty (Z i) ∧ IsCompact (Z i) ∧ IsClosed (Z i)
⊢ Set.Nonempty (⋂ (X : ↑Ch), ↑X ∩ π₁ φ f ⁻¹' {x})
Tactic:
apply IsCompact.nonempty_iInter_of_directed_nonempty_compact_closed Z _
    (fun X => (assumps X).1) (fun X => (assumps X).2.1) (fun X => (assumps X).2.2)
Proof state after:
A : Type u_1
B : Type u_2
C : Type u_3
D : Type ?u.12569
E : Set D
inst✝⁸ : TopologicalSpace A
inst✝⁷ : TopologicalSpace B
inst✝⁶ : TopologicalSpace C
inst✝⁵ : TopologicalSpace D
ρ : ↑E → A
ρ_cont : Continuous ρ
ρ_surj : Function.Surjective ρ
π : D → A
π_cont : Continuous π
π_surj : Function.Surjective π
image_ne_top : ∀ (E₀ : Set ↑E), E₀ ≠ ⊤ → IsClosed E₀ → ρ '' E₀ ≠ ⊤
inst✝⁴ : T2Space A
inst✝³ : CompactSpace A
inst✝² : T2Space B
inst✝¹ : CompactSpace B
inst✝ : T2Space C
φ : A → C
f : B → C
hφ : Continuous φ
hf : Continuous f
hf' : Function.Surjective f
this : CompactSpace ↑(D' φ f)
S : Set (Set ↑(D' φ f)) := {E | CompactSpace ↑E ∧ π₁ φ f '' E = univ}
Ch : Set (Set ↑(D' φ f))
h : Ch ⊆ S
hCh : IsChain (fun x x_1 => x ⊆ x_1) Ch
M : Set ↑(D' φ f) := ⋂₀ Ch
h₂ : Nonempty ↑Ch
x : A
x✝ : x ∈ univ
Z : ↑Ch → Set ↑(D' φ f) := fun X => ↑X ∩ π₁ φ f ⁻¹' {x}
assumps : ∀ (i : ↑Ch), Set.Nonempty (Z i) ∧ IsCompact (Z i) ∧ IsClosed (Z i)
⊢ Directed (fun x x_1 => x ⊇ x_1) Z
Theorem: exists_image_ne_top
Proof state before:
A : Type u_1
B : Type u_2
C : Type u_3
D : Type ?u.12569
E : Set D
inst✝⁸ : TopologicalSpace A
inst✝⁷ : TopologicalSpace B
inst✝⁶ : TopologicalSpace C
inst✝⁵ : TopologicalSpace D
ρ : ↑E → A
ρ_cont : Continuous ρ
ρ_surj : Function.Surjective ρ
π : D → A
π_cont : Continuous π
π_surj : Function.Surjective π
image_ne_top : ∀ (E₀ : Set ↑E), E₀ ≠ ⊤ → IsClosed E₀ → ρ '' E₀ ≠ ⊤
inst✝⁴ : T2Space A
inst✝³ : CompactSpace A
inst✝² : T2Space B
inst✝¹ : CompactSpace B
inst✝ : T2Space C
φ : A → C
f : B → C
hφ : Continuous φ
hf : Continuous f
hf' : Function.Surjective f
this : CompactSpace ↑(D' φ f)
S : Set (Set ↑(D' φ f)) := {E | CompactSpace ↑E ∧ π₁ φ f '' E = univ}
Ch : Set (Set ↑(D' φ f))
h : Ch ⊆ S
hCh : IsChain (fun x x_1 => x ⊆ x_1) Ch
M : Set ↑(D' φ f) := ⋂₀ Ch
h₂ : Nonempty ↑Ch
x : A
x✝ : x ∈ univ
Z : ↑Ch → Set ↑(D' φ f) := fun X => ↑X ∩ π₁ φ f ⁻¹' {x}
assumps : ∀ (i : ↑Ch), Set.Nonempty (Z i) ∧ IsCompact (Z i) ∧ IsClosed (Z i)
⊢ Directed (fun x x_1 => x ⊇ x_1) Z
Tactic:
change Directed _ ((fun X => X ∩ _) ∘ (fun X => X: ↑Ch → Set (D' φ f)))
Proof state after:
A : Type u_1
B : Type u_2
C : Type u_3
D : Type ?u.12569
E : Set D
inst✝⁸ : TopologicalSpace A
inst✝⁷ : TopologicalSpace B
inst✝⁶ : TopologicalSpace C
inst✝⁵ : TopologicalSpace D
ρ : ↑E → A
ρ_cont : Continuous ρ
ρ_surj : Function.Surjective ρ
π : D → A
π_cont : Continuous π
π_surj : Function.Surjective π
image_ne_top : ∀ (E₀ : Set ↑E), E₀ ≠ ⊤ → IsClosed E₀ → ρ '' E₀ ≠ ⊤
inst✝⁴ : T2Space A
inst✝³ : CompactSpace A
inst✝² : T2Space B
inst✝¹ : CompactSpace B
inst✝ : T2Space C
φ : A → C
f : B → C
hφ : Continuous φ
hf : Continuous f
hf' : Function.Surjective f
this : CompactSpace ↑(D' φ f)
S : Set (Set ↑(D' φ f)) := {E | CompactSpace ↑E ∧ π₁ φ f '' E = univ}
Ch : Set (Set ↑(D' φ f))
h : Ch ⊆ S
hCh : IsChain (fun x x_1 => x ⊆ x_1) Ch
M : Set ↑(D' φ f) := ⋂₀ Ch
h₂ : Nonempty ↑Ch
x : A
x✝ : x ∈ univ
Z : ↑Ch → Set ↑(D' φ f) := fun X => ↑X ∩ π₁ φ f ⁻¹' {x}
assumps : ∀ (i : ↑Ch), Set.Nonempty (Z i) ∧ IsCompact (Z i) ∧ IsClosed (Z i)
⊢ Directed (fun x x_1 => x ⊇ x_1) ((fun X => X ∩ π₁ φ f ⁻¹' {x}) ∘ fun X => ↑X)
Theorem: exists_image_ne_top
Proof state before:
case refine'_3
A : Type u_1
B : Type u_2
C : Type u_3
D : Type ?u.12569
E : Set D
inst✝⁸ : TopologicalSpace A
inst✝⁷ : TopologicalSpace B
inst✝⁶ : TopologicalSpace C
inst✝⁵ : TopologicalSpace D
ρ : ↑E → A
ρ_cont : Continuous ρ
ρ_surj : Function.Surjective ρ
π : D → A
π_cont : Continuous π
π_surj : Function.Surjective π
image_ne_top : ∀ (E₀ : Set ↑E), E₀ ≠ ⊤ → IsClosed E₀ → ρ '' E₀ ≠ ⊤
inst✝⁴ : T2Space A
inst✝³ : CompactSpace A
inst✝² : T2Space B
inst✝¹ : CompactSpace B
inst✝ : T2Space C
φ : A → C
f : B → C
hφ : Continuous φ
hf : Continuous f
hf' : Function.Surjective f
this : CompactSpace ↑(D' φ f)
S : Set (Set ↑(D' φ f)) := {E | CompactSpace ↑E ∧ π₁ φ f '' E = univ}
Ch : Set (Set ↑(D' φ f))
h : Ch ⊆ S
hCh : IsChain (fun x x_1 => x ⊆ x_1) Ch
M : Set ↑(D' φ f) := ⋂₀ Ch
h₂ : Nonempty ↑Ch
x : A
x✝ : x ∈ univ
Z : ↑Ch → Set ↑(D' φ f) := fun X => ↑X ∩ π₁ φ f ⁻¹' {x}
assumps : ∀ (i : ↑Ch), Set.Nonempty (Z i) ∧ IsCompact (Z i) ∧ IsClosed (Z i)
⊢ Directed (fun x y => x ⊇ y) fun X => ↑X
Tactic:
refine Iff.mp directedOn_iff_directed ?_
Proof state after:
case refine'_3
A : Type u_1
B : Type u_2
C : Type u_3
D : Type ?u.12569
E : Set D
inst✝⁸ : TopologicalSpace A
inst✝⁷ : TopologicalSpace B
inst✝⁶ : TopologicalSpace C
inst✝⁵ : TopologicalSpace D
ρ : ↑E → A
ρ_cont : Continuous ρ
ρ_surj : Function.Surjective ρ
π : D → A
π_cont : Continuous π
π_surj : Function.Surjective π
image_ne_top : ∀ (E₀ : Set ↑E), E₀ ≠ ⊤ → IsClosed E₀ → ρ '' E₀ ≠ ⊤
inst✝⁴ : T2Space A
inst✝³ : CompactSpace A
inst✝² : T2Space B
inst✝¹ : CompactSpace B
inst✝ : T2Space C
φ : A → C
f : B → C
hφ : Continuous φ
hf : Continuous f
hf' : Function.Surjective f
this : CompactSpace ↑(D' φ f)
S : Set (Set ↑(D' φ f)) := {E | CompactSpace ↑E ∧ π₁ φ f '' E = univ}
Ch : Set (Set ↑(D' φ f))
h : Ch ⊆ S
hCh : IsChain (fun x x_1 => x ⊆ x_1) Ch
M : Set ↑(D' φ f) := ⋂₀ Ch
h₂ : Nonempty ↑Ch
x : A
x✝ : x ∈ univ
Z : ↑Ch → Set ↑(D' φ f) := fun X => ↑X ∩ π₁ φ f ⁻¹' {x}
assumps : ∀ (i : ↑Ch), Set.Nonempty (Z i) ∧ IsCompact (Z i) ∧ IsClosed (Z i)
⊢ DirectedOn (fun x y => x ⊇ y) Ch
Theorem: exists_image_ne_top
Proof state before:
case refine'_3
A : Type u_1
B : Type u_2
C : Type u_3
D : Type ?u.12569
E : Set D
inst✝⁸ : TopologicalSpace A
inst✝⁷ : TopologicalSpace B
inst✝⁶ : TopologicalSpace C
inst✝⁵ : TopologicalSpace D
ρ : ↑E → A
ρ_cont : Continuous ρ
ρ_surj : Function.Surjective ρ
π : D → A
π_cont : Continuous π
π_surj : Function.Surjective π
image_ne_top : ∀ (E₀ : Set ↑E), E₀ ≠ ⊤ → IsClosed E₀ → ρ '' E₀ ≠ ⊤
inst✝⁴ : T2Space A
inst✝³ : CompactSpace A
inst✝² : T2Space B
inst✝¹ : CompactSpace B
inst✝ : T2Space C
φ : A → C
f : B → C
hφ : Continuous φ
hf : Continuous f
hf' : Function.Surjective f
this : CompactSpace ↑(D' φ f)
S : Set (Set ↑(D' φ f)) := {E | CompactSpace ↑E ∧ π₁ φ f '' E = univ}
Ch : Set (Set ↑(D' φ f))
h : Ch ⊆ S
hCh : IsChain (fun x x_1 => x ⊆ x_1) Ch
M : Set ↑(D' φ f) := ⋂₀ Ch
h₂ : Nonempty ↑Ch
x : A
x✝ : x ∈ univ
Z : ↑Ch → Set ↑(D' φ f) := fun X => ↑X ∩ π₁ φ f ⁻¹' {x}
assumps : ∀ (i : ↑Ch), Set.Nonempty (Z i) ∧ IsCompact (Z i) ∧ IsClosed (Z i)
⊢ DirectedOn (fun x y => x ⊇ y) Ch
Tactic:
refine IsChain.directedOn ?H
Proof state after:
case H
A : Type u_1
B : Type u_2
C : Type u_3
D : Type ?u.12569
E : Set D
inst✝⁸ : TopologicalSpace A
inst✝⁷ : TopologicalSpace B
inst✝⁶ : TopologicalSpace C
inst✝⁵ : TopologicalSpace D
ρ : ↑E → A
ρ_cont : Continuous ρ
ρ_surj : Function.Surjective ρ
π : D → A
π_cont : Continuous π
π_surj : Function.Surjective π
image_ne_top : ∀ (E₀ : Set ↑E), E₀ ≠ ⊤ → IsClosed E₀ → ρ '' E₀ ≠ ⊤
inst✝⁴ : T2Space A
inst✝³ : CompactSpace A
inst✝² : T2Space B
inst✝¹ : CompactSpace B
inst✝ : T2Space C
φ : A → C
f : B → C
hφ : Continuous φ
hf : Continuous f
hf' : Function.Surjective f
this : CompactSpace ↑(D' φ f)
S : Set (Set ↑(D' φ f)) := {E | CompactSpace ↑E ∧ π₁ φ f '' E = univ}
Ch : Set (Set ↑(D' φ f))
h : Ch ⊆ S
hCh : IsChain (fun x x_1 => x ⊆ x_1) Ch
M : Set ↑(D' φ f) := ⋂₀ Ch
h₂ : Nonempty ↑Ch
x : A
x✝ : x ∈ univ
Z : ↑Ch → Set ↑(D' φ f) := fun X => ↑X ∩ π₁ φ f ⁻¹' {x}
assumps : ∀ (i : ↑Ch), Set.Nonempty (Z i) ∧ IsCompact (Z i) ∧ IsClosed (Z i)
⊢ IsChain (fun x y => x ⊇ y) Ch
Theorem: exists_image_ne_top
Proof state before:
case H
A : Type u_1
B : Type u_2
C : Type u_3
D : Type ?u.12569
E : Set D
inst✝⁸ : TopologicalSpace A
inst✝⁷ : TopologicalSpace B
inst✝⁶ : TopologicalSpace C
inst✝⁵ : TopologicalSpace D
ρ : ↑E → A
ρ_cont : Continuous ρ
ρ_surj : Function.Surjective ρ
π : D → A
π_cont : Continuous π
π_surj : Function.Surjective π
image_ne_top : ∀ (E₀ : Set ↑E), E₀ ≠ ⊤ → IsClosed E₀ → ρ '' E₀ ≠ ⊤
inst✝⁴ : T2Space A
inst✝³ : CompactSpace A
inst✝² : T2Space B
inst✝¹ : CompactSpace B
inst✝ : T2Space C
φ : A → C
f : B → C
hφ : Continuous φ
hf : Continuous f
hf' : Function.Surjective f
this : CompactSpace ↑(D' φ f)
S : Set (Set ↑(D' φ f)) := {E | CompactSpace ↑E ∧ π₁ φ f '' E = univ}
Ch : Set (Set ↑(D' φ f))
h : Ch ⊆ S
hCh : IsChain (fun x x_1 => x ⊆ x_1) Ch
M : Set ↑(D' φ f) := ⋂₀ Ch
h₂ : Nonempty ↑Ch
x : A
x✝ : x ∈ univ
Z : ↑Ch → Set ↑(D' φ f) := fun X => ↑X ∩ π₁ φ f ⁻¹' {x}
assumps : ∀ (i : ↑Ch), Set.Nonempty (Z i) ∧ IsCompact (Z i) ∧ IsClosed (Z i)
⊢ IsChain (fun x y => x ⊇ y) Ch
Tactic:
dsimp [IsChain, Pairwise] at hCh ⊢
Proof state after:
case H
A : Type u_1
B : Type u_2
C : Type u_3
D : Type ?u.12569
E : Set D
inst✝⁸ : TopologicalSpace A
inst✝⁷ : TopologicalSpace B
inst✝⁶ : TopologicalSpace C
inst✝⁵ : TopologicalSpace D
ρ : ↑E → A
ρ_cont : Continuous ρ
ρ_surj : Function.Surjective ρ
π : D → A
π_cont : Continuous π
π_surj : Function.Surjective π
image_ne_top : ∀ (E₀ : Set ↑E), E₀ ≠ ⊤ → IsClosed E₀ → ρ '' E₀ ≠ ⊤
inst✝⁴ : T2Space A
inst✝³ : CompactSpace A
inst✝² : T2Space B
inst✝¹ : CompactSpace B
inst✝ : T2Space C
φ : A → C
f : B → C
hφ : Continuous φ
hf : Continuous f
hf' : Function.Surjective f
this : CompactSpace ↑(D' φ f)
S : Set (Set ↑(D' φ f)) := {E | CompactSpace ↑E ∧ π₁ φ f '' E = univ}
Ch : Set (Set ↑(D' φ f))
h : Ch ⊆ S
hCh : Set.Pairwise Ch fun x y => x ⊆ y ∨ y ⊆ x
M : Set ↑(D' φ f) := ⋂₀ Ch
h₂ : Nonempty ↑Ch
x : A
x✝ : x ∈ univ
Z : ↑Ch → Set ↑(D' φ f) := fun X => ↑X ∩ π₁ φ f ⁻¹' {x}
assumps : ∀ (i : ↑Ch), Set.Nonempty (Z i) ∧ IsCompact (Z i) ∧ IsClosed (Z i)
⊢ Set.Pairwise Ch fun x y => x ⊇ y ∨ y ⊇ x
Theorem: exists_image_ne_top
Proof state before:
case H
A : Type u_1
B : Type u_2
C : Type u_3
D : Type ?u.12569
E : Set D
inst✝⁸ : TopologicalSpace A
inst✝⁷ : TopologicalSpace B
inst✝⁶ : TopologicalSpace C
inst✝⁵ : TopologicalSpace D
ρ : ↑E → A
ρ_cont : Continuous ρ
ρ_surj : Function.Surjective ρ
π : D → A
π_cont : Continuous π
π_surj : Function.Surjective π
image_ne_top : ∀ (E₀ : Set ↑E), E₀ ≠ ⊤ → IsClosed E₀ → ρ '' E₀ ≠ ⊤
inst✝⁴ : T2Space A
inst✝³ : CompactSpace A
inst✝² : T2Space B
inst✝¹ : CompactSpace B
inst✝ : T2Space C
φ : A → C
f : B → C
hφ : Continuous φ
hf : Continuous f
hf' : Function.Surjective f
this : CompactSpace ↑(D' φ f)
S : Set (Set ↑(D' φ f)) := {E | CompactSpace ↑E ∧ π₁ φ f '' E = univ}
Ch : Set (Set ↑(D' φ f))
h : Ch ⊆ S
hCh : Set.Pairwise Ch fun x y => x ⊆ y ∨ y ⊆ x
M : Set ↑(D' φ f) := ⋂₀ Ch
h₂ : Nonempty ↑Ch
x : A
x✝ : x ∈ univ
Z : ↑Ch → Set ↑(D' φ f) := fun X => ↑X ∩ π₁ φ f ⁻¹' {x}
assumps : ∀ (i : ↑Ch), Set.Nonempty (Z i) ∧ IsCompact (Z i) ∧ IsClosed (Z i)
⊢ Set.Pairwise Ch fun x y => x ⊇ y ∨ y ⊇ x
Tactic:
exact fun ⦃x⦄ a ⦃y⦄ a_1 a_2 =>  Or.comm.mp (hCh a a_1 a_2)
Proof state after:
no goals
Theorem: exists_image_ne_top
Proof state before:
A : Type u_1
B : Type u_2
C : Type u_3
D : Type ?u.12569
E : Set D
inst✝⁸ : TopologicalSpace A
inst✝⁷ : TopologicalSpace B
inst✝⁶ : TopologicalSpace C
inst✝⁵ : TopologicalSpace D
ρ : ↑E → A
ρ_cont : Continuous ρ
ρ_surj : Function.Surjective ρ
π : D → A
π_cont : Continuous π
π_surj : Function.Surjective π
image_ne_top : ∀ (E₀ : Set ↑E), E₀ ≠ ⊤ → IsClosed E₀ → ρ '' E₀ ≠ ⊤
inst✝⁴ : T2Space A
inst✝³ : CompactSpace A
inst✝² : T2Space B
inst✝¹ : CompactSpace B
inst✝ : T2Space C
φ : A → C
f : B → C
hφ : Continuous φ
hf : Continuous f
hf' : Function.Surjective f
this✝ : CompactSpace ↑(D' φ f)
S : Set (Set ↑(D' φ f)) := {E | CompactSpace ↑E ∧ π₁ φ f '' E = univ}
Ch : Set (Set ↑(D' φ f))
h : Ch ⊆ S
hCh : IsChain (fun x x_1 => x ⊆ x_1) Ch
M : Set ↑(D' φ f) := ⋂₀ Ch
h₂ : Nonempty ↑Ch
x : A
x✝ : x ∈ univ
Z : ↑Ch → Set ↑(D' φ f) := fun X => ↑X ∩ π₁ φ f ⁻¹' {x}
this : Set.Nonempty (⋂ (X : ↑Ch), ↑X ∩ π₁ φ f ⁻¹' {x})
⊢ Set.Nonempty {x_1 | x_1 ∈ M ∧ π₁ φ f x_1 = x}
Tactic:
convert this
Proof state after:
case h.e'_2
A : Type u_1
B : Type u_2
C : Type u_3
D : Type ?u.12569
E : Set D
inst✝⁸ : TopologicalSpace A
inst✝⁷ : TopologicalSpace B
inst✝⁶ : TopologicalSpace C
inst✝⁵ : TopologicalSpace D
ρ : ↑E → A
ρ_cont : Continuous ρ
ρ_surj : Function.Surjective ρ
π : D → A
π_cont : Continuous π
π_surj : Function.Surjective π
image_ne_top : ∀ (E₀ : Set ↑E), E₀ ≠ ⊤ → IsClosed E₀ → ρ '' E₀ ≠ ⊤
inst✝⁴ : T2Space A
inst✝³ : CompactSpace A
inst✝² : T2Space B
inst✝¹ : CompactSpace B
inst✝ : T2Space C
φ : A → C
f : B → C
hφ : Continuous φ
hf : Continuous f
hf' : Function.Surjective f
this✝ : CompactSpace ↑(D' φ f)
S : Set (Set ↑(D' φ f)) := {E | CompactSpace ↑E ∧ π₁ φ f '' E = univ}
Ch : Set (Set ↑(D' φ f))
h : Ch ⊆ S
hCh : IsChain (fun x x_1 => x ⊆ x_1) Ch
M : Set ↑(D' φ f) := ⋂₀ Ch
h₂ : Nonempty ↑Ch
x : A
x✝ : x ∈ univ
Z : ↑Ch → Set ↑(D' φ f) := fun X => ↑X ∩ π₁ φ f ⁻¹' {x}
this : Set.Nonempty (⋂ (X : ↑Ch), ↑X ∩ π₁ φ f ⁻¹' {x})
⊢ {x_1 | x_1 ∈ M ∧ π₁ φ f x_1 = x} = ⋂ (X : ↑Ch), ↑X ∩ π₁ φ f ⁻¹' {x}