Structure Operations on Differential Operator Rings

Contents

Category and Parent

Differential Operator Rings form the magma category RngDiffOp. The notional power structures exist as parents of differential operator rings.

Category(R) : RngDiffOp -> RngDiffOp
Type(R) : RngDiffOp -> RngDiffOp
The category, or type, of the differential operator ring R.
Parent(R) : RngDiffOp -> PowStr
The power structure of the differential operator ring R.

Related Structures

As outlined in the introduction, a differential operator ring R is of the form F[D], for a differential ring F. The ring F is called the base ring or coefficient ring of R.

BaseRing(R) : RngDiffOp -> Rng
CoefficientRing(R) : RngDiffOp -> Rng
The base ring, or coefficient ring, of the differential operator ring R.
ConstantRing(R) : RngDiffOp -> Rng
The constant ring of the differential ring operator R.

Derivation and Differential

By construction the variable D of a differential operator ring F[D] is related to the derivation δF. That is why δF is also considered to be the derivation of R.

Derivation(R) : RngDiffOp -> Map
The derivation of the differential operator ring R.
Differential(R) : RngDiffOp -> DiffFunElt
The differential belonging to the derivation of the differential operator ring R. The derivation must have been constructed in such a way that it is defined by a differential.

Example RngDiff_diff-op-ring_related_structures (H118E35)

> F<z> := RationalDifferentialField(Rationals());
> R<D> := DifferentialOperatorRing(F);
> BaseRing(R) eq F;
true
> Derivation(R);
Mapping from: RngDiff: F to RngDiff: F given by a rule [no inverse]
> Differential(R);
(1) d(z)

Predicates and Booleans

R eq F : RngDiffOp, RngDiffOp -> BoolElt
Returns true if and only if the differential operator rings R and F are the same.
IsIdentical(R, F) : RngDiffOp, RngDiffOp -> BoolElt
Returns true if and only if the differential operator rings R and F are identical.
IsDifferentialOperatorRing(R) : . -> BoolElt
Returns true if and only if the given argument is a differential operator ring.
HasProjectiveDerivation(R) : RngDiffOp -> BoolElt
Returns true iff R is defined over a ring F with derivation weakly of the form (F.1).d/d(F.1).
HasZeroDerivation(R) : RngDiffOp -> BoolElt
Returns true iff the base ring of R is an algebraic differential field or a differential series ring F such that the derivation of R acts as a (weak) zero derivation on F.1.

Example RngDiff_diff-op-ring_booleans (H118E36)

> F<z> := RationalDifferentialField(Rationals());
> R<D> := DifferentialOperatorRing(F);
> IsDifferentialOperatorRing(F);
false
> IsDifferentialOperatorRing(R);
true
> Derivation(R)(z);
1
> HasProjectiveDerivation(R);
false
> HasProjectiveDerivation(ChangeDerivation(R,z));
true
> HasZeroDerivation(R);
false

Example RngDiff_diff-op-ring_booleans-LSR (H118E37)

> S<t> := DifferentialLaurentSeriesRing(Rationals());
> V<W> := DifferentialOperatorRing(S);
> IsDifferentialOperatorRing(V);
true
> Derivation(V)(t);
t
> HasProjectiveDerivation(V);
true
> HasZeroDerivation(V);
false
> P<Q>, mp := ChangeDerivation(V,3/t);
> IsDifferentialOperatorRing(P);
true
> HasProjectiveDerivation(P);
false
> X<y> := BaseRing(P);
> Q*y;
y*Q + 3

Precision

RelativePrecisionOfDerivation(R) : RngDiffOp -> RngElt
The relative precision of the derivation of an operator ring over a Laurent series ring.

Example RngDiff_diff-op-rings-relative-precision (H118E38)

This example illustrates the relative precision of derivations of differential operatorrings.
> S<t>:=DifferentialLaurentSeriesRing(Rationals());
> RS<DS> := DifferentialOperatorRing(S);
> RelativePrecisionOfDerivation(RS);
Infinity
> RV<DV> := ChangeDerivation(RS, t^2+O(t^8));
> relprec := RelativePrecisionOfDerivation(RV);
> relprec;
6
> RelativePrecisionOfDerivation(BaseRing(RV)) eq relprec;
true
V2.28, 13 July 2023