case refine'_1
α : Type ?u.120102
β : Type ?u.120105
γ : Type ?u.120108
ι✝ : Type ?u.120111
inst✝¹ : CompleteLattice α
ι : Type u_1
R : Type u_2
F : Filter ι
inst✝ : CompleteLattice R
a : ι → R
⊢ limsup a F ≤ sInf ((fun I => sSup (a '' I)) '' F.sets)

case refine'_2
α : Type ?u.120102
β : Type ?u.120105
γ : Type ?u.120108
ι✝ : Type ?u.120111
inst✝¹ : CompleteLattice α
ι : Type u_1
R : Type u_2
F : Filter ι
inst✝ : CompleteLattice R
a : ι → R
⊢ sInf ((fun I => sSup (a '' I)) '' F.sets) ≤ limsup a F
α : Type ?u.120102
β : Type ?u.120105
γ : Type ?u.120108
ι✝ : Type ?u.120111
inst✝¹ : CompleteLattice α
ι : Type u_1
R : Type u_2
F : Filter ι
inst✝ : CompleteLattice R
a : ι → R
⊢ limsup a F = sInf ((fun I => sSup (a '' I)) '' F.sets)
refine' le_antisymm _ _
case refine'_1
α : Type ?u.120102
β : Type ?u.120105
γ : Type ?u.120108
ι✝ : Type ?u.120111
inst✝¹ : CompleteLattice α
ι : Type u_1
R : Type u_2
F : Filter ι
inst✝ : CompleteLattice R
a : ι → R
⊢ sInf {a_1 | ∀ᶠ (n : ι) in F, a n ≤ a_1} ≤ sInf ((fun I => sSup (a '' I)) '' F.sets)
case refine'_1
α : Type ?u.120102
β : Type ?u.120105
γ : Type ?u.120108
ι✝ : Type ?u.120111
inst✝¹ : CompleteLattice α
ι : Type u_1
R : Type u_2
F : Filter ι
inst✝ : CompleteLattice R
a : ι → R
⊢ limsup a F ≤ sInf ((fun I => sSup (a '' I)) '' F.sets)
rw [limsup_eq]
case refine'_1
α : Type ?u.120102
β : Type ?u.120105
γ : Type ?u.120108
ι✝ : Type ?u.120111
inst✝¹ : CompleteLattice α
ι : Type u_1
R : Type u_2
F : Filter ι
inst✝ : CompleteLattice R
a : ι → R
x : R
hx : x ∈ (fun I => sSup (a '' I)) '' F.sets
⊢ x ∈ {a_1 | ∀ᶠ (n : ι) in F, a n ≤ a_1}
case refine'_1
α : Type ?u.120102
β : Type ?u.120105
γ : Type ?u.120108
ι✝ : Type ?u.120111
inst✝¹ : CompleteLattice α
ι : Type u_1
R : Type u_2
F : Filter ι
inst✝ : CompleteLattice R
a : ι → R
⊢ sInf {a_1 | ∀ᶠ (n : ι) in F, a n ≤ a_1} ≤ sInf ((fun I => sSup (a '' I)) '' F.sets)
refine' sInf_le_sInf fun x hx => _
case refine'_1.intro.intro
α : Type ?u.120102
β : Type ?u.120105
γ : Type ?u.120108
ι✝ : Type ?u.120111
inst✝¹ : CompleteLattice α
ι : Type u_1
R : Type u_2
F : Filter ι
inst✝ : CompleteLattice R
a : ι → R
x : R
hx : x ∈ (fun I => sSup (a '' I)) '' F.sets
I : Set ι
I_mem_F : I ∈ F.sets
hI : sSup (a '' I) = x
⊢ x ∈ {a_1 | ∀ᶠ (n : ι) in F, a n ≤ a_1}
case refine'_1
α : Type ?u.120102
β : Type ?u.120105
γ : Type ?u.120108
ι✝ : Type ?u.120111
inst✝¹ : CompleteLattice α
ι : Type u_1
R : Type u_2
F : Filter ι
inst✝ : CompleteLattice R
a : ι → R
x : R
hx : x ∈ (fun I => sSup (a '' I)) '' F.sets
⊢ x ∈ {a_1 | ∀ᶠ (n : ι) in F, a n ≤ a_1}
rcases(mem_image _ F.sets x).mp hx with ⟨I, ⟨I_mem_F, hI⟩⟩
case h
α : Type ?u.120102
β : Type ?u.120105
γ : Type ?u.120108
ι✝ : Type ?u.120111
inst✝¹ : CompleteLattice α
ι : Type u_1
R : Type u_2
F : Filter ι
inst✝ : CompleteLattice R
a : ι → R
x : R
hx : x ∈ (fun I => sSup (a '' I)) '' F.sets
I : Set ι
I_mem_F : I ∈ F.sets
hI : sSup (a '' I) = x
i : ι
hi : i ∈ I
⊢ a i ≤ x
case refine'_1.intro.intro
α : Type ?u.120102
β : Type ?u.120105
γ : Type ?u.120108
ι✝ : Type ?u.120111
inst✝¹ : CompleteLattice α
ι : Type u_1
R : Type u_2
F : Filter ι
inst✝ : CompleteLattice R
a : ι → R
x : R
hx : x ∈ (fun I => sSup (a '' I)) '' F.sets
I : Set ι
I_mem_F : I ∈ F.sets
hI : sSup (a '' I) = x
⊢ x ∈ {a_1 | ∀ᶠ (n : ι) in F, a n ≤ a_1}
filter_upwards [I_mem_F]with i hi
no goals
case h
α : Type ?u.120102
β : Type ?u.120105
γ : Type ?u.120108
ι✝ : Type ?u.120111
inst✝¹ : CompleteLattice α
ι : Type u_1
R : Type u_2
F : Filter ι
inst✝ : CompleteLattice R
a : ι → R
x : R
hx : x ∈ (fun I => sSup (a '' I)) '' F.sets
I : Set ι
I_mem_F : I ∈ F.sets
hI : sSup (a '' I) = x
i : ι
hi : i ∈ I
⊢ a i ≤ x
exact hI ▸ le_sSup (mem_image_of_mem _ hi)
case refine'_2
α : Type ?u.120102
β : Type ?u.120105
γ : Type ?u.120108
ι✝ : Type ?u.120111
inst✝¹ : CompleteLattice α
ι : Type u_1
R : Type u_2
F : Filter ι
inst✝ : CompleteLattice R
a : ι → R
b : R
hb : b ∈ {a_1 | ∀ᶠ (n : R) in map a F, n ≤ a_1}
⊢ ∀ (b_1 : R), b_1 ∈ a '' (a ⁻¹' {x | (fun n => n ≤ b) x}) → b_1 ≤ b
case refine'_2
α : Type ?u.120102
β : Type ?u.120105
γ : Type ?u.120108
ι✝ : Type ?u.120111
inst✝¹ : CompleteLattice α
ι : Type u_1
R : Type u_2
F : Filter ι
inst✝ : CompleteLattice R
a : ι → R
⊢ sInf ((fun I => sSup (a '' I)) '' F.sets) ≤ limsup a F
refine'
  le_sInf_iff.mpr fun b hb =>
    sInf_le_of_le (mem_image_of_mem _ <| Filter.mem_sets.mpr hb) <| sSup_le _
case refine'_2.intro.intro
α : Type ?u.120102
β : Type ?u.120105
γ : Type ?u.120108
ι✝ : Type ?u.120111
inst✝¹ : CompleteLattice α
ι : Type u_1
R : Type u_2
F : Filter ι
inst✝ : CompleteLattice R
a : ι → R
b : R
hb : b ∈ {a_1 | ∀ᶠ (n : R) in map a F, n ≤ a_1}
w✝ : ι
h : w✝ ∈ a ⁻¹' {x | (fun n => n ≤ b) x}
⊢ a w✝ ≤ b
case refine'_2
α : Type ?u.120102
β : Type ?u.120105
γ : Type ?u.120108
ι✝ : Type ?u.120111
inst✝¹ : CompleteLattice α
ι : Type u_1
R : Type u_2
F : Filter ι
inst✝ : CompleteLattice R
a : ι → R
b : R
hb : b ∈ {a_1 | ∀ᶠ (n : R) in map a F, n ≤ a_1}
⊢ ∀ (b_1 : R), b_1 ∈ a '' (a ⁻¹' {x | (fun n => n ≤ b) x}) → b_1 ≤ b
rintro _ ⟨_, h, rfl⟩
no goals
case refine'_2.intro.intro
α : Type ?u.120102
β : Type ?u.120105
γ : Type ?u.120108
ι✝ : Type ?u.120111
inst✝¹ : CompleteLattice α
ι : Type u_1
R : Type u_2
F : Filter ι
inst✝ : CompleteLattice R
a : ι → R
b : R
hb : b ∈ {a_1 | ∀ᶠ (n : R) in map a F, n ≤ a_1}
w✝ : ι
h : w✝ ∈ a ⁻¹' {x | (fun n => n ≤ b) x}
⊢ a w✝ ≤ b
exact h