|
Differential Rings form the magma category RngDiff.
The notional power structures exist as parents of differential rings.
Type(R) : RngDiff -> RngDiff
The category, or type, of the differential ring R.
The power structure of the differential ring R.
The underlying ring and constant ring from which the differential ring was
created can each be retrieved as described below.
There is also the concept of a base ring.
If one has created a differential extension M/F in magma, then
F is the base ring of M.
The underlying ring of the differential ring R.
The type of the underlying ring indicates what ring R inherits from.
The underlying ring of the differential ring R, provided it is a field.
The base ring of the differential ring R.
The base ring of the differential ring R, provided it is a field.
The constant ring of the differential ring R.
The derivation of R acts trivially on the constant ring.
It is therefore contained in the differential ring of constants of R.
The constant ring of the differential ring R, provided it is a field.
The exact constant field of F, i.e. the algebraic closure in F of the
constant field of F, together with the inclusion map to F.
The field F must be a function field.
The differential field F must have been created with
respect to a differential.
If the derivation of F has been constructed with respect
to a differential, then
the exact constant field coincides with the differential field of
constants of F.
The list of generators of the differential ring R.
If there is no list assigned to R, one
is constructed by default from the underlying ring of R.
First we construct the differential field F=Q(z) with derivation
(d)/ (d)z and show what some of the related structures are.
Then we construct the field extension M=Q(z, α), where α is a
root of the polynomial X 2 - 2.
We do this with the usual ext< > constructor.
For M we again derive some related structures.
> F<z> := RationalDifferentialField(Rationals());
> ConstantRing(F);
Rational Field
> UnderlyingRing(F);
Algebraic function field defined over Rational Field by
$.2 - 4711
>
> _<X> := PolynomialRing(F);
> M<alpha> := ext< F | X^2-2 >;
> BaseRing(M);
Differential Ring of Algebraic function field defined over Rational Field by
$.2 - 4711
with derivation given by (1) d(z)
> BaseRing(M) eq F;
true
> ConstantRing(M);
Rational Field
> E := ExactConstantField(M);
> E;
Number Field with defining polynomial $.1^2 - 2 over the Rational Field
> Generators(M);
[ alpha ]
Related structures also exist for differential Laurent series rings.
> S<t>:=DifferentialLaurentSeriesRing(Rationals());
> UnderlyingRing(S);
Laurent series field in t over Rational Field
> ConstantRing(S);
Rational Field
> Generators(S);
[ t ]
The derivation of a differential ring and its differential,
whenever applicable, can be retrieved as indicated below.
The derivation of the differential ring R.
The differential belonging to the derivation of the differential field F.
The field F must have been constructed in such a way that
its derivation is defined by a differential.
> F<z> := RationalDifferentialField(Rationals());
> Derivation(F);
Mapping from: RngDiff: F to RngDiff: F given by a rule [no inverse]
> Differential(F);
(1) d(z)
The number of indeterminates associated with the differential ring R.
Returns true if and only if the differential rings R and
F are the same.
Returns true if and only if the differential rings R and
F are identical.
Returns true if and only if the differential ring R is a domain.
Returns true if and only if the differential ring R is field.
Returns true if and only if the ring R is a differential field.
Returns true if and only if the field structure of
the differential ring R is an algebraic function field.
Returns true if and only if the underlying ring of the differential
ring R is a series ring.
Returns true if and only if the underlying ring of the differential
ring R is a Laurent series ring and R has been created
with a known constant ring.
This example shows some booleans for various differential rings.
> F<z>:=RationalDifferentialField(Rationals());
> S<t>:=DifferentialLaurentSeriesRing(Rationals());
> IsAlgebraicDifferentialField(F);
true
> IsDifferentialSeriesRing(F);
false
> IsAlgebraicDifferentialField(S);
false
> IsDifferentialSeriesRing(S);
true
> IsDifferentialLaurentSeriesRing(S);
true
Returns true if and only if F is a differential ring
with derivation weakly of the form (F.1).d/d(F.1).
Returns true if and only if the algebraic differential field or
differential series ring F has zero derivation.
When F is a series ring we relax being zero to being weakly zero.
> F<z>:=RationalDifferentialField(Rationals());
> S<t>:=DifferentialLaurentSeriesRing(Rationals());
> HasProjectiveDerivation(F);
false
> HasProjectiveDerivation(ChangeDerivation(F,z));
true
> HasZeroDerivation(F);
false
> HasProjectiveDerivation(S);
true
> HasProjectiveDerivation(ChangeDerivation(S,S!3));
false
> HasZeroDerivation(S);
false
Returns the relative precision of the underlying series ring of F.
Given a differential Laurent series ring F, returns the relative
precision of the ring derivative of F.1.
This example illustrate the relative precision of differential rings.
> S<t>:=DifferentialLaurentSeriesRing(Rationals());
> Derivative(t);
t
> IsDifferentialLaurentSeriesRing(S);
true
> RelativePrecision(S);
20
> RelativePrecision(UnderlyingRing(S));
20;
> V<w>:=DifferentialLaurentSeriesRing(Rationals():Precision:=30);
> RelativePrecision(V);
30
> RelativePrecision(V) eq RelativePrecision(UnderlyingRing(V));
true
> S<t> := DifferentialLaurentSeriesRing(Rationals());
> RelativePrecisionOfDerivation(S);
Infinity
> V<w> := ChangeDerivation(S,t+O(t^6));
> Derivation(V)(w);
w^2 + O(w^7)
> RelativePrecisionOfDerivation(V);
5
Returns the differential series ring isomorphic to F with relative precision p.
The map returned is the induced map of F to the new field.
> S<t>:=DifferentialLaurentSeriesRing(Rationals());
> RelativePrecision(S);
20
> V<w>,mp := ChangePrecision(S,10);
> Type(V);
RngDiff
> IsDifferentialLaurentSeriesRing(V);
true
> RelativePrecision(V);
10
> RelativePrecision(1/(w-1)) eq 10;
true
> mp(t) eq w;
true
> w@@mp eq t;
true
> derivt := Derivation(S)(t);
> derivt;
t
> derivw := Derivation(V)(w);
> derivw;
w
> mp(derivt) eq Derivation(V)(w);
true
[Next][Prev] [Right] [Left] [Up] [Index] [Root]
|