Derivations #
This file defines derivation. A derivation D
from the R
-algebra A
to the A
-module M
is an
R
-linear map that satisfy the Leibniz rule D (a * b) = a * D b + D a * b
.
Main results #
Derivation
: The type ofR
-derivations fromA
toM
. This has anA
-module structure.Derivation.llcomp
: We may compose linear maps and derivations to obtain a derivation, and the composition is bilinear.
See RingTheory.Derivation.Lie
for
derivation.lie_algebra
: TheR
-derivations fromA
toA
form a lie algebra overR
.
and RingTheory.Derivation.ToSquareZero
for
derivation_to_square_zero_equiv_lift
: TheR
-derivations fromA
into a square-zero idealI
ofB
corresponds to the liftsA →ₐ[R] B
of the mapA →ₐ[R] B ⧸ I
.
Future project #
- Generalize derivations into bimodules.
D : Derivation R A M
is an R
-linear map from A
to M
that satisfies the leibniz
equality. We also require that D 1 = 0
. See Derivation.mk'
for a constructor that deduces this
assumption from the Leibniz rule when M
is cancellative.
TODO: update this when bimodules are defined.
- toFun : A → M
- map_smul' : ∀ (r : R) (x : A), self.toAddHom.toFun (r • x) = (RingHom.id R) r • self.toAddHom.toFun x
- map_one_eq_zero' : ↑self 1 = 0
Instances For
Equations
- One or more equations did not get rendered due to their size.
Equations
- (_ : AddMonoidHomClass (Derivation R A M) A M) = (_ : AddMonoidHomClass (Derivation R A M) A M)
See Note [custom simps projection]
Equations
- Derivation.Simps.apply D = ⇑D
Instances For
Equations
- Derivation.hasCoeToLinearMap = { coe := fun (D : Derivation R A M) => ↑D }
If adjoin of a set is the whole algebra, then any two derivations equal on this set are equal on the whole algebra.
Equations
- One or more equations did not get rendered due to their size.
Equations
- Derivation.instInhabitedDerivation = { default := 0 }
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
coe_fn
as an AddMonoidHom
.
Equations
Instances For
Equations
- One or more equations did not get rendered due to their size.
Equations
- (_ : IsCentralScalar S (Derivation R A M)) = (_ : IsCentralScalar S (Derivation R A M))
Equations
- (_ : IsScalarTower S T (Derivation R A M)) = (_ : IsScalarTower S T (Derivation R A M))
Equations
- (_ : SMulCommClass S T (Derivation R A M)) = (_ : SMulCommClass S T (Derivation R A M))
Equations
- Derivation.instModule = Function.Injective.module S Derivation.coeFnAddMonoidHom (_ : Function.Injective DFunLike.coe) (_ : ∀ (r : S) (D : Derivation R A M), ⇑(r • D) = r • ⇑D)
We can push forward derivations using linear maps, i.e., the composition of a derivation with a linear map is a derivation. Furthermore, this operation is linear on the spaces of derivations.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The composition of a derivation with a linear map as a bilinear map
Equations
- One or more equations did not get rendered due to their size.
Instances For
Pushing a derivation forward through a linear equivalence is an equivalence.
Equations
- One or more equations did not get rendered due to their size.
Instances For
For a tower R → A → B
and an R
-derivation B → M
, we may compose with A → B
to obtain an
R
-derivation A → M
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
If A
is both an R
-algebra and an S
-algebra; M
is both an R
-module and an S
-module,
then an S
-derivation A → M
is also an R
-derivation if it is also R
-linear.
Equations
Instances For
Define Derivation R A M
from a linear map when M
is cancellative by verifying the Leibniz
rule.
Equations
- Derivation.mk' D h = { toLinearMap := D, map_one_eq_zero' := (_ : D 1 = 0), leibniz' := h }
Instances For
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.