-- Mathlib/Analysis/ODE/PicardLindelof.lean
theorem exists_isPicardLindelof_const_of_contDiffAt (hv : ContDiffAt ℝ 1 v x₀) :
    ∃ ε > (0 : ℝ), ∃ L R C, IsPicardLindelof (fun _ => v) (t₀ - ε) t₀ (t₀ + ε) x₀ L R C

Proof state:
case intro.intro.intro.intro.intro
E : Type u_1
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace ℝ E
v : E → E
t₀ : ℝ
x₀ : E
hv : ContDiffAt ℝ 1 v x₀
L : ℝ≥0
s : Set E
hs : s ∈ 𝓝 x₀
hlip : LipschitzOnWith L v s
R₁ : ℝ
hR₁ : 0 < R₁
hball : ball x₀ R₁ ⊆ s
⊢ ∃ ε > 0, ∃ L R C, IsPicardLindelof (fun x => v) (t₀ - ε) t₀ (t₀ + ε) x₀ L R C

Tactic:
obtain ⟨R₂, hR₂ : 0 < R₂, hbdd⟩ := Metric.continuousAt_iff.mp hv.continuousAt.norm 1 zero_lt_one

Result:
case intro.intro.intro.intro.intro.intro.intro
E : Type u_1
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace ℝ E
v : E → E
t₀ : ℝ
x₀ : E
hv : ContDiffAt ℝ 1 v x₀
L : ℝ≥0
s : Set E
hs : s ∈ 𝓝 x₀
hlip : LipschitzOnWith L v s
R₁ : ℝ
hR₁ : 0 < R₁
hball : ball x₀ R₁ ⊆ s
R₂ : ℝ
hR₂ : 0 < R₂
hbdd : ∀ ⦃x : E⦄, dist x x₀ < R₂ → dist ‖v x‖ ‖v x₀‖ < 1
⊢ ∃ ε > 0, ∃ L R C, IsPicardLindelof (fun x => v) (t₀ - ε) t₀ (t₀ + ε) x₀ L R C

Proof state:
case intro.intro.intro.intro.intro.intro.intro
E : Type u_1
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace ℝ E
v : E → E
t₀ : ℝ
x₀ : E
hv : ContDiffAt ℝ 1 v x₀
L : ℝ≥0
s : Set E
hs : s ∈ 𝓝 x₀
hlip : LipschitzOnWith L v s
R₁ : ℝ
hR₁ : 0 < R₁
hball : ball x₀ R₁ ⊆ s
R₂ : ℝ
hR₂ : 0 < R₂
hbdd : ∀ ⦃x : E⦄, dist x x₀ < R₂ → dist ‖v x‖ ‖v x₀‖ < 1
hbdd' : ∀ x ∈ ball x₀ R₂, ‖v x‖ ≤ 1 + ‖v x₀‖
⊢ ∃ ε > 0, ∃ L R C, IsPicardLindelof (fun x => v) (t₀ - ε) t₀ (t₀ + ε) x₀ L R C

Tactic:
set ε := min R₁ R₂ / 2 / (1 + ‖v x₀‖) with hε

Result:
case intro.intro.intro.intro.intro.intro.intro
E : Type u_1
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace ℝ E
v : E → E
t₀ : ℝ
x₀ : E
hv : ContDiffAt ℝ 1 v x₀
L : ℝ≥0
s : Set E
hs : s ∈ 𝓝 x₀
hlip : LipschitzOnWith L v s
R₁ : ℝ
hR₁ : 0 < R₁
hball : ball x₀ R₁ ⊆ s
R₂ : ℝ
hR₂ : 0 < R₂
hbdd : ∀ ⦃x : E⦄, dist x x₀ < R₂ → dist ‖v x‖ ‖v x₀‖ < 1
hbdd' : ∀ x ∈ ball x₀ R₂, ‖v x‖ ≤ 1 + ‖v x₀‖
ε : ℝ := (R₁ ⊓ R₂) / 2 / (1 + ‖v x₀‖)
hε : ε = (R₁ ⊓ R₂) / 2 / (1 + ‖v x₀‖)
⊢ ∃ ε > 0, ∃ L R C, IsPicardLindelof (fun x => v) (t₀ - ε) t₀ (t₀ + ε) x₀ L R C

Proof state:
case intro.intro.intro.intro.intro.intro.intro
E : Type u_1
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace ℝ E
v : E → E
t₀ : ℝ
x₀ : E
hv : ContDiffAt ℝ 1 v x₀
L : ℝ≥0
s : Set E
hs : s ∈ 𝓝 x₀
hlip : LipschitzOnWith L v s
R₁ : ℝ
hR₁ : 0 < R₁
hball : ball x₀ R₁ ⊆ s
R₂ : ℝ
hR₂ : 0 < R₂
hbdd : ∀ ⦃x : E⦄, dist x x₀ < R₂ → dist ‖v x‖ ‖v x₀‖ < 1
hbdd' : ∀ x ∈ ball x₀ R₂, ‖v x‖ ≤ 1 + ‖v x₀‖
ε : ℝ := (R₁ ⊓ R₂) / 2 / (1 + ‖v x₀‖)
hε : ε = (R₁ ⊓ R₂) / 2 / (1 + ‖v x₀‖)
hε0 : 0 < ε
⊢ ∃ ε > 0, ∃ L R C, IsPicardLindelof (fun x => v) (t₀ - ε) t₀ (t₀ + ε) x₀ L R C

Tactic:
refine ⟨ε, hε0, L, min R₁ R₂ / 2, 1 + ‖v x₀‖, ?_⟩

Result:
case intro.intro.intro.intro.intro.intro.intro
E : Type u_1
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace ℝ E
v : E → E
t₀ : ℝ
x₀ : E
hv : ContDiffAt ℝ 1 v x₀
L : ℝ≥0
s : Set E
hs : s ∈ 𝓝 x₀
hlip : LipschitzOnWith L v s
R₁ : ℝ
hR₁ : 0 < R₁
hball : ball x₀ R₁ ⊆ s
R₂ : ℝ
hR₂ : 0 < R₂
hbdd : ∀ ⦃x : E⦄, dist x x₀ < R₂ → dist ‖v x‖ ‖v x₀‖ < 1
hbdd' : ∀ x ∈ ball x₀ R₂, ‖v x‖ ≤ 1 + ‖v x₀‖
ε : ℝ := (R₁ ⊓ R₂) / 2 / (1 + ‖v x₀‖)
hε : ε = (R₁ ⊓ R₂) / 2 / (1 + ‖v x₀‖)
hε0 : 0 < ε
⊢ IsPicardLindelof (fun x => v) (t₀ - ε) t₀ (t₀ + ε) x₀ L ((R₁ ⊓ R₂) / 2) (1 + ‖v x₀‖)