-- Mathlib/Analysis/Normed/Module/FiniteDimension.lean
theorem FiniteDimensional.of_isCompact_closedBall₀ {r : ℝ} (rpos : 0 < r)
    (h : IsCompact (Metric.closedBall (0 : E) r)) : FiniteDimensional 𝕜 E

Proof state:
𝕜 : Type u
inst✝³ : NontriviallyNormedField 𝕜
E : Type v
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace 𝕜 E
inst✝ : CompleteSpace 𝕜
r : ℝ
rpos : 0 < r
h : IsCompact (closedBall 0 r)
hfin : ¬FiniteDimensional 𝕜 E
R : ℝ
f : ℕ → E
Rgt : 1 < R
fle : ∀ (n : ℕ), ‖f n‖ ≤ R
lef : Pairwise fun m n => 1 ≤ ‖f m - f n‖
rRpos : 0 < r / R
c : 𝕜
hc : 0 < ‖c‖ ∧ ‖c‖ < r / R
g : ℕ → E := fun n => c • f n
A : ∀ (n : ℕ), g n ∈ closedBall 0 r
x : E
left✝ : x ∈ closedBall 0 r
φ : ℕ → ℕ
φmono : StrictMono φ
φlim : Tendsto (g ∘ φ) atTop (𝓝 x)
B : CauchySeq (g ∘ φ)
N : ℕ
hN : ∀ (n : ℕ), N ≤ n → dist ((g ∘ φ) n) ((g ∘ φ) N) < ‖c‖
⊢ φ N < φ (N + 1)

Tactic:
exact φmono (Nat.lt_succ_self N)

Result:
no goals

Proof state:
case intro.intro.intro.intro.intro.intro.intro.intro.intro
𝕜 : Type u
inst✝³ : NontriviallyNormedField 𝕜
E : Type v
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace 𝕜 E
inst✝ : CompleteSpace 𝕜
r : ℝ
rpos : 0 < r
h : IsCompact (closedBall 0 r)
hfin : ¬FiniteDimensional 𝕜 E
R : ℝ
f : ℕ → E
Rgt : 1 < R
fle : ∀ (n : ℕ), ‖f n‖ ≤ R
lef : Pairwise fun m n => 1 ≤ ‖f m - f n‖
rRpos : 0 < r / R
c : 𝕜
hc : 0 < ‖c‖ ∧ ‖c‖ < r / R
g : ℕ → E := fun n => c • f n
A : ∀ (n : ℕ), g n ∈ closedBall 0 r
x : E
left✝ : x ∈ closedBall 0 r
φ : ℕ → ℕ
φmono : StrictMono φ
φlim : Tendsto (g ∘ φ) atTop (𝓝 x)
B : CauchySeq (g ∘ φ)
⊢ False

Tactic:
obtain ⟨N, hN⟩ : ∃ N : ℕ, ∀ n : ℕ, N ≤ n → dist ((g ∘ φ) n) ((g ∘ φ) N) < ‖c‖ :=
  Metric.cauchySeq_iff'.1 B ‖c‖ hc.1

Result:
case intro.intro.intro.intro.intro.intro.intro.intro.intro.intro
𝕜 : Type u
inst✝³ : NontriviallyNormedField 𝕜
E : Type v
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace 𝕜 E
inst✝ : CompleteSpace 𝕜
r : ℝ
rpos : 0 < r
h : IsCompact (closedBall 0 r)
hfin : ¬FiniteDimensional 𝕜 E
R : ℝ
f : ℕ → E
Rgt : 1 < R
fle : ∀ (n : ℕ), ‖f n‖ ≤ R
lef : Pairwise fun m n => 1 ≤ ‖f m - f n‖
rRpos : 0 < r / R
c : 𝕜
hc : 0 < ‖c‖ ∧ ‖c‖ < r / R
g : ℕ → E := fun n => c • f n
A : ∀ (n : ℕ), g n ∈ closedBall 0 r
x : E
left✝ : x ∈ closedBall 0 r
φ : ℕ → ℕ
φmono : StrictMono φ
φlim : Tendsto (g ∘ φ) atTop (𝓝 x)
B : CauchySeq (g ∘ φ)
N : ℕ
hN : ∀ (n : ℕ), N ≤ n → dist ((g ∘ φ) n) ((g ∘ φ) N) < ‖c‖
⊢ False

Proof state:
𝕜 : Type u
inst✝³ : NontriviallyNormedField 𝕜
E : Type v
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace 𝕜 E
inst✝ : CompleteSpace 𝕜
r : ℝ
rpos : 0 < r
h : IsCompact (closedBall 0 r)
hfin : ¬FiniteDimensional 𝕜 E
R : ℝ
f : ℕ → E
Rgt : 1 < R
fle : ∀ (n : ℕ), ‖f n‖ ≤ R
lef : Pairwise fun m n => 1 ≤ ‖f m - f n‖
rRpos : 0 < r / R
c : 𝕜
hc : 0 < ‖c‖ ∧ ‖c‖ < r / R
g : ℕ → E := fun n => c • f n
A : ∀ (n : ℕ), g n ∈ closedBall 0 r
x : E
left✝ : x ∈ closedBall 0 r
φ : ℕ → ℕ
φmono : StrictMono φ
φlim : Tendsto (g ∘ φ) atTop (𝓝 x)
B : CauchySeq (g ∘ φ)
N : ℕ
hN : ∀ (n : ℕ), N ≤ n → dist ((g ∘ φ) n) ((g ∘ φ) N) < ‖c‖
⊢ ‖c‖ ≤ dist (g (φ (N + 1))) (g (φ N))

Tactic:
conv_lhs => rw [← mul_one ‖c‖]

Result:
𝕜 : Type u
inst✝³ : NontriviallyNormedField 𝕜
E : Type v
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace 𝕜 E
inst✝ : CompleteSpace 𝕜
r : ℝ
rpos : 0 < r
h : IsCompact (closedBall 0 r)
hfin : ¬FiniteDimensional 𝕜 E
R : ℝ
f : ℕ → E
Rgt : 1 < R
fle : ∀ (n : ℕ), ‖f n‖ ≤ R
lef : Pairwise fun m n => 1 ≤ ‖f m - f n‖
rRpos : 0 < r / R
c : 𝕜
hc : 0 < ‖c‖ ∧ ‖c‖ < r / R
g : ℕ → E := fun n => c • f n
A : ∀ (n : ℕ), g n ∈ closedBall 0 r
x : E
left✝ : x ∈ closedBall 0 r
φ : ℕ → ℕ
φmono : StrictMono φ
φlim : Tendsto (g ∘ φ) atTop (𝓝 x)
B : CauchySeq (g ∘ φ)
N : ℕ
hN : ∀ (n : ℕ), N ≤ n → dist ((g ∘ φ) n) ((g ∘ φ) N) < ‖c‖
⊢ ‖c‖ * 1 ≤ dist (g (φ (N + 1))) (g (φ N))

Proof state:
𝕜 : Type u
inst✝³ : NontriviallyNormedField 𝕜
E : Type v
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace 𝕜 E
inst✝ : CompleteSpace 𝕜
r : ℝ
rpos : 0 < r
h : IsCompact (closedBall 0 r)
⊢ FiniteDimensional 𝕜 E

Tactic:
by_contra hfin

Result:
𝕜 : Type u
inst✝³ : NontriviallyNormedField 𝕜
E : Type v
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace 𝕜 E
inst✝ : CompleteSpace 𝕜
r : ℝ
rpos : 0 < r
h : IsCompact (closedBall 0 r)
hfin : ¬FiniteDimensional 𝕜 E
⊢ False

Proof state:
𝕜 : Type u
inst✝³ : NontriviallyNormedField 𝕜
E : Type v
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace 𝕜 E
inst✝ : CompleteSpace 𝕜
r : ℝ
rpos : 0 < r
h : IsCompact (closedBall 0 r)
hfin : ¬FiniteDimensional 𝕜 E
R : ℝ
f : ℕ → E
Rgt : 1 < R
fle : ∀ (n : ℕ), ‖f n‖ ≤ R
lef : Pairwise fun m n => 1 ≤ ‖f m - f n‖
rRpos : 0 < r / R
c : 𝕜
hc : 0 < ‖c‖ ∧ ‖c‖ < r / R
g : ℕ → E := fun n => c • f n
A : ∀ (n : ℕ), g n ∈ closedBall 0 r
x : E
left✝ : x ∈ closedBall 0 r
φ : ℕ → ℕ
φmono : StrictMono φ
φlim : Tendsto (g ∘ φ) atTop (𝓝 x)
B : CauchySeq (g ∘ φ)
N : ℕ
hN : ∀ (n : ℕ), N ≤ n → dist ((g ∘ φ) n) ((g ∘ φ) N) < ‖c‖
⊢ ‖c‖ * 1 ≤ dist (g (φ (N + 1))) (g (φ N))

Tactic:
simp only [g, dist_eq_norm, ← smul_sub, norm_smul]

Result:
𝕜 : Type u
inst✝³ : NontriviallyNormedField 𝕜
E : Type v
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace 𝕜 E
inst✝ : CompleteSpace 𝕜
r : ℝ
rpos : 0 < r
h : IsCompact (closedBall 0 r)
hfin : ¬FiniteDimensional 𝕜 E
R : ℝ
f : ℕ → E
Rgt : 1 < R
fle : ∀ (n : ℕ), ‖f n‖ ≤ R
lef : Pairwise fun m n => 1 ≤ ‖f m - f n‖
rRpos : 0 < r / R
c : 𝕜
hc : 0 < ‖c‖ ∧ ‖c‖ < r / R
g : ℕ → E := fun n => c • f n
A : ∀ (n : ℕ), g n ∈ closedBall 0 r
x : E
left✝ : x ∈ closedBall 0 r
φ : ℕ → ℕ
φmono : StrictMono φ
φlim : Tendsto (g ∘ φ) atTop (𝓝 x)
B : CauchySeq (g ∘ φ)
N : ℕ
hN : ∀ (n : ℕ), N ≤ n → dist ((g ∘ φ) n) ((g ∘ φ) N) < ‖c‖
⊢ ‖c‖ * 1 ≤ ‖c‖ * ‖f (φ (N + 1)) - f (φ N)‖

Proof state:
case intro.intro.intro.intro
𝕜 : Type u
inst✝³ : NontriviallyNormedField 𝕜
E : Type v
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace 𝕜 E
inst✝ : CompleteSpace 𝕜
r : ℝ
rpos : 0 < r
h : IsCompact (closedBall 0 r)
hfin : ¬FiniteDimensional 𝕜 E
R : ℝ
f : ℕ → E
Rgt : 1 < R
fle : ∀ (n : ℕ), ‖f n‖ ≤ R
lef : Pairwise fun m n => 1 ≤ ‖f m - f n‖
⊢ False

Tactic:
have rRpos : 0 < r / R := div_pos rpos (zero_lt_one.trans Rgt)

Result:
case intro.intro.intro.intro
𝕜 : Type u
inst✝³ : NontriviallyNormedField 𝕜
E : Type v
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace 𝕜 E
inst✝ : CompleteSpace 𝕜
r : ℝ
rpos : 0 < r
h : IsCompact (closedBall 0 r)
hfin : ¬FiniteDimensional 𝕜 E
R : ℝ
f : ℕ → E
Rgt : 1 < R
fle : ∀ (n : ℕ), ‖f n‖ ≤ R
lef : Pairwise fun m n => 1 ≤ ‖f m - f n‖
rRpos : 0 < r / R
⊢ False