Theorem: is_const_of_fderiv_eq_zero
File: Mathlib/Analysis/Calculus/MeanValue.lean

tactic: let A : NormedSpace ℝ E := RestrictScalars.normedSpace ℝ 𝕜 E
state_before: E✝ : Type u_1
inst✝⁹ : NormedAddCommGroup E✝
inst✝⁸ : NormedSpace ℝ E✝
F : Type u_2
inst✝⁷ : NormedAddCommGroup F
inst✝⁶ : NormedSpace ℝ F
𝕜 : Type u_3
G : Type u_4
inst✝⁵ : RCLike 𝕜
inst✝⁴ : NormedSpace 𝕜 E✝
inst✝³ : NormedAddCommGroup G
inst✝² : NormedSpace 𝕜 G
f✝ g : E✝ → G
C : ℝ
s : Set E✝
x✝ y✝ : E✝
f' g' : E✝ → E✝ →L[𝕜] G
φ : E✝ →L[𝕜] G
E : Type u_5
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace 𝕜 E
f : E → G
hf : Differentiable 𝕜 f
hf' : ∀ (x : E), fderiv 𝕜 f x = 0
x y : E
⊢ f x = f y
state_after: E✝ : Type u_1
inst✝⁹ : NormedAddCommGroup E✝
inst✝⁸ : NormedSpace ℝ E✝
F : Type u_2
inst✝⁷ : NormedAddCommGroup F
inst✝⁶ : NormedSpace ℝ F
𝕜 : Type u_3
G : Type u_4
inst✝⁵ : RCLike 𝕜
inst✝⁴ : NormedSpace 𝕜 E✝
inst✝³ : NormedAddCommGroup G
inst✝² : NormedSpace 𝕜 G
f✝ g : E✝ → G
C : ℝ
s : Set E✝
x✝ y✝ : E✝
f' g' : E✝ → E✝ →L[𝕜] G
φ : E✝ →L[𝕜] G
E : Type u_5
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace 𝕜 E
f : E → G
hf : Differentiable 𝕜 f
hf' : ∀ (x : E), fderiv 𝕜 f x = 0
x y : E
A : NormedSpace ℝ E := RestrictScalars.normedSpace ℝ 𝕜 E
⊢ f x = f y

tactic: exact convex_univ.is_const_of_fderivWithin_eq_zero hf.differentiableOn
  (fun x _ => by rw [fderivWithin_univ]; exact hf' x) trivial trivial
state_before: E✝ : Type u_1
inst✝⁹ : NormedAddCommGroup E✝
inst✝⁸ : NormedSpace ℝ E✝
F : Type u_2
inst✝⁷ : NormedAddCommGroup F
inst✝⁶ : NormedSpace ℝ F
𝕜 : Type u_3
G : Type u_4
inst✝⁵ : RCLike 𝕜
inst✝⁴ : NormedSpace 𝕜 E✝
inst✝³ : NormedAddCommGroup G
inst✝² : NormedSpace 𝕜 G
f✝ g : E✝ → G
C : ℝ
s : Set E✝
x✝ y✝ : E✝
f' g' : E✝ → E✝ →L[𝕜] G
φ : E✝ →L[𝕜] G
E : Type u_5
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace 𝕜 E
f : E → G
hf : Differentiable 𝕜 f
hf' : ∀ (x : E), fderiv 𝕜 f x = 0
x y : E
A : NormedSpace ℝ E := RestrictScalars.normedSpace ℝ 𝕜 E
⊢ f x = f y
state_after: no goals

tactic: rw [fderivWithin_univ]
state_before: E✝ : Type u_1
inst✝⁹ : NormedAddCommGroup E✝
inst✝⁸ : NormedSpace ℝ E✝
F : Type u_2
inst✝⁷ : NormedAddCommGroup F
inst✝⁶ : NormedSpace ℝ F
𝕜 : Type u_3
G : Type u_4
inst✝⁵ : RCLike 𝕜
inst✝⁴ : NormedSpace 𝕜 E✝
inst✝³ : NormedAddCommGroup G
inst✝² : NormedSpace 𝕜 G
f✝ g : E✝ → G
C : ℝ
s : Set E✝
x✝² y✝ : E✝
f' g' : E✝ → E✝ →L[𝕜] G
φ : E✝ →L[𝕜] G
E : Type u_5
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace 𝕜 E
f : E → G
hf : Differentiable 𝕜 f
hf' : ∀ (x : E), fderiv 𝕜 f x = 0
x✝¹ y : E
A : NormedSpace ℝ E := RestrictScalars.normedSpace ℝ 𝕜 E
x : E
x✝ : x ∈ univ
⊢ fderivWithin 𝕜 f univ x = 0
state_after: E✝ : Type u_1
inst✝⁹ : NormedAddCommGroup E✝
inst✝⁸ : NormedSpace ℝ E✝
F : Type u_2
inst✝⁷ : NormedAddCommGroup F
inst✝⁶ : NormedSpace ℝ F
𝕜 : Type u_3
G : Type u_4
inst✝⁵ : RCLike 𝕜
inst✝⁴ : NormedSpace 𝕜 E✝
inst✝³ : NormedAddCommGroup G
inst✝² : NormedSpace 𝕜 G
f✝ g : E✝ → G
C : ℝ
s : Set E✝
x✝² y✝ : E✝
f' g' : E✝ → E✝ →L[𝕜] G
φ : E✝ →L[𝕜] G
E : Type u_5
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace 𝕜 E
f : E → G
hf : Differentiable 𝕜 f
hf' : ∀ (x : E), fderiv 𝕜 f x = 0
x✝¹ y : E
A : NormedSpace ℝ E := RestrictScalars.normedSpace ℝ 𝕜 E
x : E
x✝ : x ∈ univ
⊢ fderiv 𝕜 f x = 0

tactic: exact hf' x
state_before: E✝ : Type u_1
inst✝⁹ : NormedAddCommGroup E✝
inst✝⁸ : NormedSpace ℝ E✝
F : Type u_2
inst✝⁷ : NormedAddCommGroup F
inst✝⁶ : NormedSpace ℝ F
𝕜 : Type u_3
G : Type u_4
inst✝⁵ : RCLike 𝕜
inst✝⁴ : NormedSpace 𝕜 E✝
inst✝³ : NormedAddCommGroup G
inst✝² : NormedSpace 𝕜 G
f✝ g : E✝ → G
C : ℝ
s : Set E✝
x✝² y✝ : E✝
f' g' : E✝ → E✝ →L[𝕜] G
φ : E✝ →L[𝕜] G
E : Type u_5
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace 𝕜 E
f : E → G
hf : Differentiable 𝕜 f
hf' : ∀ (x : E), fderiv 𝕜 f x = 0
x✝¹ y : E
A : NormedSpace ℝ E := RestrictScalars.normedSpace ℝ 𝕜 E
x : E
x✝ : x ∈ univ
⊢ fderiv 𝕜 f x = 0
state_after: no goals