Structure Operations on Differential Operator Rings#

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\).

Derivation and Differential#

By construction the variable \(D\) of a differential operator ring \(F[D]\) is related to the derivation \(\delta_F\). That is why \(\delta_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: Diff Op Ring Related Structures (ex-fcdd49)#
> 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)

Run in calculator

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)\cdot 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: Diff Op Ring Booleans (ex-74f01d)#
> 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

Run in calculator

Example: Diff Op Ring Booleans LSR (ex-f354a2)#
> 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

Run in calculator

Precision#

RelativePrecisionOfDerivation(R): RngDiffOp -> RngElt#

The relative precision of the derivation of an operator ring over a Laurent series ring.

Example: Diff Op Rings Relative Precision (ex-1465b5)#

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

Run in calculator