Theorem: PiLp.iSup_edist_ne_top_aux
File: Mathlib/Analysis/NormedSpace/PiLp.lean

tactic: cases nonempty_fintype ι
state_before: p : ℝ≥0∞
𝕜 : Type u_1
ι✝ : Type u_2
α✝ : ι✝ → Type u_3
β : ι✝ → Type u_4
inst✝⁵ : Fact (1 ≤ p)
inst✝⁴ : (i : ι✝) → PseudoMetricSpace (α✝ i)
inst✝³ : (i : ι✝) → PseudoEMetricSpace (β i)
inst✝² : Fintype ι✝
ι : Type u_5
inst✝¹ : Finite ι
α : ι → Type u_6
inst✝ : (i : ι) → PseudoMetricSpace (α i)
f g : PiLp ⊤ α
⊢ ⨆ i, edist (f i) (g i) ≠ ⊤
state_after: case intro
p : ℝ≥0∞
𝕜 : Type u_1
ι✝ : Type u_2
α✝ : ι✝ → Type u_3
β : ι✝ → Type u_4
inst✝⁵ : Fact (1 ≤ p)
inst✝⁴ : (i : ι✝) → PseudoMetricSpace (α✝ i)
inst✝³ : (i : ι✝) → PseudoEMetricSpace (β i)
inst✝² : Fintype ι✝
ι : Type u_5
inst✝¹ : Finite ι
α : ι → Type u_6
inst✝ : (i : ι) → PseudoMetricSpace (α i)
f g : PiLp ⊤ α
val✝ : Fintype ι
⊢ ⨆ i, edist (f i) (g i) ≠ ⊤

tactic: obtain ⟨M, hM⟩ := Finite.exists_le fun i => (⟨dist (f i) (g i), dist_nonneg⟩ : ℝ≥0)
state_before: case intro
p : ℝ≥0∞
𝕜 : Type u_1
ι✝ : Type u_2
α✝ : ι✝ → Type u_3
β : ι✝ → Type u_4
inst✝⁵ : Fact (1 ≤ p)
inst✝⁴ : (i : ι✝) → PseudoMetricSpace (α✝ i)
inst✝³ : (i : ι✝) → PseudoEMetricSpace (β i)
inst✝² : Fintype ι✝
ι : Type u_5
inst✝¹ : Finite ι
α : ι → Type u_6
inst✝ : (i : ι) → PseudoMetricSpace (α i)
f g : PiLp ⊤ α
val✝ : Fintype ι
⊢ ⨆ i, edist (f i) (g i) ≠ ⊤
state_after: case intro.intro
p : ℝ≥0∞
𝕜 : Type u_1
ι✝ : Type u_2
α✝ : ι✝ → Type u_3
β : ι✝ → Type u_4
inst✝⁵ : Fact (1 ≤ p)
inst✝⁴ : (i : ι✝) → PseudoMetricSpace (α✝ i)
inst✝³ : (i : ι✝) → PseudoEMetricSpace (β i)
inst✝² : Fintype ι✝
ι : Type u_5
inst✝¹ : Finite ι
α : ι → Type u_6
inst✝ : (i : ι) → PseudoMetricSpace (α i)
f g : PiLp ⊤ α
val✝ : Fintype ι
M : { r // 0 ≤ r }
hM : ∀ (i : ι), ⟨dist (f i) (g i), ⋯⟩ ≤ M
⊢ ⨆ i, edist (f i) (g i) ≠ ⊤

tactic: refine ne_of_lt ((iSup_le fun i => ?_).trans_lt (@ENNReal.coe_lt_top M))
state_before: case intro.intro
p : ℝ≥0∞
𝕜 : Type u_1
ι✝ : Type u_2
α✝ : ι✝ → Type u_3
β : ι✝ → Type u_4
inst✝⁵ : Fact (1 ≤ p)
inst✝⁴ : (i : ι✝) → PseudoMetricSpace (α✝ i)
inst✝³ : (i : ι✝) → PseudoEMetricSpace (β i)
inst✝² : Fintype ι✝
ι : Type u_5
inst✝¹ : Finite ι
α : ι → Type u_6
inst✝ : (i : ι) → PseudoMetricSpace (α i)
f g : PiLp ⊤ α
val✝ : Fintype ι
M : { r // 0 ≤ r }
hM : ∀ (i : ι), ⟨dist (f i) (g i), ⋯⟩ ≤ M
⊢ ⨆ i, edist (f i) (g i) ≠ ⊤
state_after: case intro.intro
p : ℝ≥0∞
𝕜 : Type u_1
ι✝ : Type u_2
α✝ : ι✝ → Type u_3
β : ι✝ → Type u_4
inst✝⁵ : Fact (1 ≤ p)
inst✝⁴ : (i : ι✝) → PseudoMetricSpace (α✝ i)
inst✝³ : (i : ι✝) → PseudoEMetricSpace (β i)
inst✝² : Fintype ι✝
ι : Type u_5
inst✝¹ : Finite ι
α : ι → Type u_6
inst✝ : (i : ι) → PseudoMetricSpace (α i)
f g : PiLp ⊤ α
val✝ : Fintype ι
M : { r // 0 ≤ r }
hM : ∀ (i : ι), ⟨dist (f i) (g i), ⋯⟩ ≤ M
i : ι
⊢ edist (f i) (g i) ≤ ↑M

tactic: simp only [edist, PseudoMetricSpace.edist_dist, ENNReal.ofReal_eq_coe_nnreal dist_nonneg]
state_before: case intro.intro
p : ℝ≥0∞
𝕜 : Type u_1
ι✝ : Type u_2
α✝ : ι✝ → Type u_3
β : ι✝ → Type u_4
inst✝⁵ : Fact (1 ≤ p)
inst✝⁴ : (i : ι✝) → PseudoMetricSpace (α✝ i)
inst✝³ : (i : ι✝) → PseudoEMetricSpace (β i)
inst✝² : Fintype ι✝
ι : Type u_5
inst✝¹ : Finite ι
α : ι → Type u_6
inst✝ : (i : ι) → PseudoMetricSpace (α i)
f g : PiLp ⊤ α
val✝ : Fintype ι
M : { r // 0 ≤ r }
hM : ∀ (i : ι), ⟨dist (f i) (g i), ⋯⟩ ≤ M
i : ι
⊢ edist (f i) (g i) ≤ ↑M
state_after: case intro.intro
p : ℝ≥0∞
𝕜 : Type u_1
ι✝ : Type u_2
α✝ : ι✝ → Type u_3
β : ι✝ → Type u_4
inst✝⁵ : Fact (1 ≤ p)
inst✝⁴ : (i : ι✝) → PseudoMetricSpace (α✝ i)
inst✝³ : (i : ι✝) → PseudoEMetricSpace (β i)
inst✝² : Fintype ι✝
ι : Type u_5
inst✝¹ : Finite ι
α : ι → Type u_6
inst✝ : (i : ι) → PseudoMetricSpace (α i)
f g : PiLp ⊤ α
val✝ : Fintype ι
M : { r // 0 ≤ r }
hM : ∀ (i : ι), ⟨dist (f i) (g i), ⋯⟩ ≤ M
i : ι
⊢ ↑⟨dist (f i) (g i), ⋯⟩ ≤ ↑M

tactic: exact mod_cast hM i
state_before: case intro.intro
p : ℝ≥0∞
𝕜 : Type u_1
ι✝ : Type u_2
α✝ : ι✝ → Type u_3
β : ι✝ → Type u_4
inst✝⁵ : Fact (1 ≤ p)
inst✝⁴ : (i : ι✝) → PseudoMetricSpace (α✝ i)
inst✝³ : (i : ι✝) → PseudoEMetricSpace (β i)
inst✝² : Fintype ι✝
ι : Type u_5
inst✝¹ : Finite ι
α : ι → Type u_6
inst✝ : (i : ι) → PseudoMetricSpace (α i)
f g : PiLp ⊤ α
val✝ : Fintype ι
M : { r // 0 ≤ r }
hM : ∀ (i : ι), ⟨dist (f i) (g i), ⋯⟩ ≤ M
i : ι
⊢ ↑⟨dist (f i) (g i), ⋯⟩ ≤ ↑M
state_after: no goals