File: Mathlib/RingTheory/PowerSeries/Derivative.lean

full_name: PowerSeries.derivativeFun
code: /--
The formal derivative of a power series in one variable.
This is defined here as a function, but will be packaged as a
derivation `derivative` on `R⟦X⟧`.
-/
noncomputable def derivativeFun (f : R⟦X⟧) : R⟦X⟧ 
goal: PowerSeries R

full_name: PowerSeries.coeff_derivativeFun
code: theorem coeff_derivativeFun (f : R⟦X⟧) (n : ℕ) :
    coeff R n f.derivativeFun = coeff R (n + 1) f * (n + 1) 
goal: (PowerSeries.coeff R n) f.derivativeFun = (PowerSeries.coeff R (n + 1)) f * (↑n + 1)

full_name: PowerSeries.derivativeFun_coe
code: theorem derivativeFun_coe (f : R[X]) : (f : R⟦X⟧).derivativeFun = derivative f 
goal: (↑f).derivativeFun = ↑(Polynomial.derivative f)

full_name: PowerSeries.derivativeFun_add
code: theorem derivativeFun_add (f g : R⟦X⟧) :
    derivativeFun (f + g) = derivativeFun f + derivativeFun g 
goal: (f + g).derivativeFun = f.derivativeFun + g.derivativeFun

full_name: PowerSeries.derivativeFun_C
code: theorem derivativeFun_C (r : R) : derivativeFun (C R r) = 0 
goal: ((PowerSeries.C R) r).derivativeFun = 0

full_name: PowerSeries.trunc_derivativeFun
code: theorem trunc_derivativeFun (f : R⟦X⟧) (n : ℕ) :
    trunc n f.derivativeFun = derivative (trunc (n + 1) f) 
goal: PowerSeries.trunc n f.derivativeFun = Polynomial.derivative (PowerSeries.trunc (n + 1) f)

full_name: _private.Mathlib.RingTheory.PowerSeries.Derivative.0.PowerSeries.derivativeFun_coe_mul_coe
code: private theorem derivativeFun_coe_mul_coe (f g : R[X]) : derivativeFun (f * g : R⟦X⟧) =
    f * derivative g + g * derivative f  
goal: (↑f * ↑g).derivativeFun = ↑f * ↑(Polynomial.derivative g) + ↑g * ↑(Polynomial.derivative f)

full_name: PowerSeries.derivativeFun_mul
code: /-- **Leibniz rule for formal power series**. -/
theorem derivativeFun_mul (f g : R⟦X⟧) :
    derivativeFun (f * g) = f • g.derivativeFun + g • f.derivativeFun 
goal: (f * g).derivativeFun = f • g.derivativeFun + g • f.derivativeFun

full_name: PowerSeries.derivativeFun_one
code: theorem derivativeFun_one : derivativeFun (1 : R⟦X⟧) = 0 
goal: PowerSeries.derivativeFun 1 = 0

full_name: PowerSeries.derivativeFun_smul
code: theorem derivativeFun_smul (r : R) (f : R⟦X⟧) : derivativeFun (r • f) = r • derivativeFun f 
goal: (r • f).derivativeFun = r • f.derivativeFun

full_name: PowerSeries.derivative
code: /-- The formal derivative of a formal power series -/
noncomputable def derivative : Derivation R R⟦X⟧ R⟦X⟧ 
goal: Derivation R (PowerSeries R) (PowerSeries R)

full_name: PowerSeries.«_aux_Mathlib_RingTheory_PowerSeries_Derivative___macroRules_PowerSeries_termD⁄dX_1»
code: /-- Abbreviation of `PowerSeries.derivative`, the formal derivative on `R⟦X⟧` -/
scoped notation "d⁄dX" => derivative
goal: Lean.Macro

full_name: PowerSeries._aux_Mathlib_RingTheory_PowerSeries_Derivative___unexpand_PowerSeries_derivative_1
code: /-- Abbreviation of `PowerSeries.derivative`, the formal derivative on `R⟦X⟧` -/
scoped notation "d⁄dX" => derivative
goal: Lean.PrettyPrinter.Unexpander

full_name: PowerSeries.derivative_C
code: @[simp] theorem derivative_C (r : R) : d⁄dX R (C R r) = 0 
goal: (PowerSeries.derivative R) ((PowerSeries.C R) r) = 0

full_name: PowerSeries.coeff_derivative
code: theorem coeff_derivative (f : R⟦X⟧) (n : ℕ) :
    coeff R n (d⁄dX R f) = coeff R (n + 1) f * (n + 1) 
goal: (PowerSeries.coeff R n) ((PowerSeries.derivative R) f) = (PowerSeries.coeff R (n + 1)) f * (↑n + 1)

full_name: PowerSeries.derivative_coe
code: theorem derivative_coe (f : R[X]) : d⁄dX R f = Polynomial.derivative f 
goal: (PowerSeries.derivative R) ↑f = ↑(Polynomial.derivative f)

full_name: PowerSeries.derivative_X
code: @[simp] theorem derivative_X : d⁄dX R (X : R⟦X⟧) = 1 
goal: (PowerSeries.derivative R) PowerSeries.X = 1

full_name: PowerSeries.trunc_derivative
code: theorem trunc_derivative (f : R⟦X⟧) (n : ℕ) :
    trunc n (d⁄dX R f) = Polynomial.derivative (trunc (n + 1) f) 
goal: PowerSeries.trunc n ((PowerSeries.derivative R) f) = Polynomial.derivative (PowerSeries.trunc (n + 1) f)

full_name: PowerSeries.trunc_derivative'
code: theorem trunc_derivative' (f : R⟦X⟧) (n : ℕ) :
    trunc (n-1) (d⁄dX R f) = Polynomial.derivative (trunc n f) 
goal: PowerSeries.trunc (n - 1) ((PowerSeries.derivative R) f) = Polynomial.derivative (PowerSeries.trunc n f)

full_name: PowerSeries.derivative.ext
code: /-- If `f` and `g` have the same constant term and derivative, then they are equal. -/
theorem derivative.ext {R} [CommRing R] [NoZeroSMulDivisors ℕ R] {f g} (hD : d⁄dX R f = d⁄dX R g)
    (hc : constantCoeff R f = constantCoeff R g) : f = g 
goal: f = g

full_name: PowerSeries.derivative_inv
code: @[simp] theorem derivative_inv {R} [CommRing R] (f : R⟦X⟧ˣ) :
    d⁄dX R ↑f⁻¹ = -(↑f⁻¹ : R⟦X⟧) ^ 2 * d⁄dX R f 
goal: (PowerSeries.derivative R) ↑f⁻¹ = -↑f⁻¹ ^ 2 * (PowerSeries.derivative R) ↑f

full_name: PowerSeries.derivative_invOf
code: @[simp] theorem derivative_invOf {R} [CommRing R] (f : R⟦X⟧) [Invertible f] :
    d⁄dX R ⅟f = - ⅟f ^ 2 * d⁄dX R f 
goal: (PowerSeries.derivative R) ⅟f = -⅟f ^ 2 * (PowerSeries.derivative R) f

full_name: PowerSeries.derivative_inv'
code: @[simp] theorem derivative_inv' {R} [Field R] (f : R⟦X⟧) : d⁄dX R f⁻¹ = -f⁻¹ ^ 2 * d⁄dX R f 
goal: (PowerSeries.derivative R) f⁻¹ = -f⁻¹ ^ 2 * (PowerSeries.derivative R) f