File: Mathlib/Analysis/SpecialFunctions/Sqrt.lean

full_name: Real.sqPartialHomeomorph
code: /-- Local homeomorph between `(0, +∞)` and `(0, +∞)` with `toFun = (· ^ 2)` and
`invFun = Real.sqrt`. -/
noncomputable def sqPartialHomeomorph : PartialHomeomorph ℝ ℝ 
goal: PartialHomeomorph ℝ ℝ

full_name: Real.deriv_sqrt_aux
code: theorem deriv_sqrt_aux {x : ℝ} (hx : x ≠ 0) :
    HasStrictDerivAt (√·) (1 / (2 * √x)) x ∧ ∀ n, ContDiffAt ℝ n (√·) x 
goal: HasStrictDerivAt (fun x => √x) (1 / (2 * √x)) x ∧ ∀ (n : ℕ∞), ContDiffAt ℝ n (fun x => √x) x

full_name: Real.hasStrictDerivAt_sqrt
code: theorem hasStrictDerivAt_sqrt {x : ℝ} (hx : x ≠ 0) : HasStrictDerivAt (√·) (1 / (2 * √x)) x 
goal: HasStrictDerivAt (fun x => √x) (1 / (2 * √x)) x

full_name: Real.contDiffAt_sqrt
code: theorem contDiffAt_sqrt {x : ℝ} {n : ℕ∞} (hx : x ≠ 0) : ContDiffAt ℝ n (√·) x 
goal: ContDiffAt ℝ n (fun x => √x) x

full_name: Real.hasDerivAt_sqrt
code: theorem hasDerivAt_sqrt {x : ℝ} (hx : x ≠ 0) : HasDerivAt (√·) (1 / (2 * √x)) x 
goal: HasDerivAt (fun x => √x) (1 / (2 * √x)) x

full_name: HasDerivWithinAt.sqrt
code: theorem HasDerivWithinAt.sqrt (hf : HasDerivWithinAt f f' s x) (hx : f x ≠ 0) :
    HasDerivWithinAt (fun y => √(f y)) (f' / (2 * √(f x))) s x 
goal: HasDerivWithinAt (fun y => √(f y)) (f' / (2 * √(f x))) s x

full_name: HasDerivAt.sqrt
code: theorem HasDerivAt.sqrt (hf : HasDerivAt f f' x) (hx : f x ≠ 0) :
    HasDerivAt (fun y => √(f y)) (f' / (2 * √(f x))) x 
goal: HasDerivAt (fun y => √(f y)) (f' / (2 * √(f x))) x

full_name: HasStrictDerivAt.sqrt
code: theorem HasStrictDerivAt.sqrt (hf : HasStrictDerivAt f f' x) (hx : f x ≠ 0) :
    HasStrictDerivAt (fun t => √(f t)) (f' / (2 * √(f x))) x 
goal: HasStrictDerivAt (fun t => √(f t)) (f' / (2 * √(f x))) x

full_name: derivWithin_sqrt
code: theorem derivWithin_sqrt (hf : DifferentiableWithinAt ℝ f s x) (hx : f x ≠ 0)
    (hxs : UniqueDiffWithinAt ℝ s x) :
    derivWithin (fun x => √(f x)) s x = derivWithin f s x / (2 * √(f x)) 
goal: derivWithin (fun x => √(f x)) s x = derivWithin f s x / (2 * √(f x))

full_name: deriv_sqrt
code: @[simp]
theorem deriv_sqrt (hf : DifferentiableAt ℝ f x) (hx : f x ≠ 0) :
    deriv (fun x => √(f x)) x = deriv f x / (2 * √(f x)) 
goal: deriv (fun x => √(f x)) x = deriv f x / (2 * √(f x))

full_name: HasFDerivAt.sqrt
code: theorem HasFDerivAt.sqrt (hf : HasFDerivAt f f' x) (hx : f x ≠ 0) :
    HasFDerivAt (fun y => √(f y)) ((1 / (2 * √(f x))) • f') x 
goal: HasFDerivAt (fun y => √(f y)) ((1 / (2 * √(f x))) • f') x

full_name: HasStrictFDerivAt.sqrt
code: theorem HasStrictFDerivAt.sqrt (hf : HasStrictFDerivAt f f' x) (hx : f x ≠ 0) :
    HasStrictFDerivAt (fun y => √(f y)) ((1 / (2 * √(f x))) • f') x 
goal: HasStrictFDerivAt (fun y => √(f y)) ((1 / (2 * √(f x))) • f') x

full_name: HasFDerivWithinAt.sqrt
code: theorem HasFDerivWithinAt.sqrt (hf : HasFDerivWithinAt f f' s x) (hx : f x ≠ 0) :
    HasFDerivWithinAt (fun y => √(f y)) ((1 / (2 * √(f x))) • f') s x 
goal: HasFDerivWithinAt (fun y => √(f y)) ((1 / (2 * √(f x))) • f') s x

full_name: DifferentiableWithinAt.sqrt
code: theorem DifferentiableWithinAt.sqrt (hf : DifferentiableWithinAt ℝ f s x) (hx : f x ≠ 0) :
    DifferentiableWithinAt ℝ (fun y => √(f y)) s x 
goal: DifferentiableWithinAt ℝ (fun y => √(f y)) s x

full_name: DifferentiableAt.sqrt
code: theorem DifferentiableAt.sqrt (hf : DifferentiableAt ℝ f x) (hx : f x ≠ 0) :
    DifferentiableAt ℝ (fun y => √(f y)) x 
goal: DifferentiableAt ℝ (fun y => √(f y)) x

full_name: DifferentiableOn.sqrt
code: theorem DifferentiableOn.sqrt (hf : DifferentiableOn ℝ f s) (hs : ∀ x ∈ s, f x ≠ 0) :
    DifferentiableOn ℝ (fun y => √(f y)) s 
goal: DifferentiableOn ℝ (fun y => √(f y)) s

full_name: Differentiable.sqrt
code: theorem Differentiable.sqrt (hf : Differentiable ℝ f) (hs : ∀ x, f x ≠ 0) :
    Differentiable ℝ fun y => √(f y) 
goal: Differentiable ℝ fun y => √(f y)

full_name: fderivWithin_sqrt
code: theorem fderivWithin_sqrt (hf : DifferentiableWithinAt ℝ f s x) (hx : f x ≠ 0)
    (hxs : UniqueDiffWithinAt ℝ s x) :
    fderivWithin ℝ (fun x => √(f x)) s x = (1 / (2 * √(f x))) • fderivWithin ℝ f s x 
goal: fderivWithin ℝ (fun x => √(f x)) s x = (1 / (2 * √(f x))) • fderivWithin ℝ f s x

full_name: fderiv_sqrt
code: @[simp]
theorem fderiv_sqrt (hf : DifferentiableAt ℝ f x) (hx : f x ≠ 0) :
    fderiv ℝ (fun x => √(f x)) x = (1 / (2 * √(f x))) • fderiv ℝ f x 
goal: fderiv ℝ (fun x => √(f x)) x = (1 / (2 * √(f x))) • fderiv ℝ f x

full_name: ContDiffAt.sqrt
code: theorem ContDiffAt.sqrt (hf : ContDiffAt ℝ n f x) (hx : f x ≠ 0) :
    ContDiffAt ℝ n (fun y => √(f y)) x 
goal: ContDiffAt ℝ n (fun y => √(f y)) x

full_name: ContDiffWithinAt.sqrt
code: theorem ContDiffWithinAt.sqrt (hf : ContDiffWithinAt ℝ n f s x) (hx : f x ≠ 0) :
    ContDiffWithinAt ℝ n (fun y => √(f y)) s x 
goal: ContDiffWithinAt ℝ n (fun y => √(f y)) s x

full_name: ContDiffOn.sqrt
code: theorem ContDiffOn.sqrt (hf : ContDiffOn ℝ n f s) (hs : ∀ x ∈ s, f x ≠ 0) :
    ContDiffOn ℝ n (fun y => √(f y)) s 
goal: ContDiffOn ℝ n (fun y => √(f y)) s

full_name: ContDiff.sqrt
code: theorem ContDiff.sqrt (hf : ContDiff ℝ n f) (h : ∀ x, f x ≠ 0) : ContDiff ℝ n fun y => √(f y) 
goal: ContDiff ℝ n fun y => √(f y)