builds a regular differential chain
PretendRegularDifferentialChain (eqns, R, opts)
a list or a set of differential rational fractions
a differential polynomial ring or ideal
a sequence of options
The opts arguments may contain one or more of the options below.
attributes = L where L is a list involving some of the keywords differential, prime, primitive, squarefree, coherent, autoreduced, normalized. This option permits to customize the list of attributes of the built regular differential chain. The presence of some of the attributes may imply, automatically, the presence of some other ones. The prime attribute may be automatically set. For more details, see DifferentialAlgebra.
pretend = false. With this option, the function checks that eqns holds its attributes and performs some further simplifications in order to try to achieve the missing ones. If these simplifications fail, an error message is raised. This happens, in particular, if the chain is not triangular or if the simplifications lead to split the system into two or more different regular differential chains. The coherent attribute is not checked.
notation = jet, tjet, diff or Diff. Specifies the notation used for the result of the function call. If not specified, the notation of the input eqns is used.
memout = nonnegative. Specifies a memory limit, in MB, for the computation. Default is zero (no memory out).
The function call PretendRegularDifferentialChain (eqns, R) builds a regular differential chain with the numerators of eqns, regarded as differential rational fractions of R, if R is a ring, or its embedding ring if R is an ideal. By default, the built regular differential chain is assumed to hold the attributes: differential, autoreduced, primitive, squarefree, normalized and coherent. For more details on attributes, see DifferentialAlgebra.
It is assumed that eqns already forms a regular differential chain with the above attributes. The list eqns does not need to be sorted.
In principle, the elements of eqns should be differential polynomials with integer numeric coefficients. However, rational differential fractions and expressions involving explicit relational operators, such as p=q and p≠q are accepted. The rational differential fractions are replaced by their numerators. The expressions p=q are converted into p−q. The expressions p≠q are ignored.
If eqns involves a parameter p, the equations stating that some derivatives of p are zero, are automatically inserted in the regular differential chain, unless p, itself, is the leading derivative of some element of eqns.
If eqns is empty, the returned regular differential chain represents the zero ideal of R.
This command is part of the DifferentialAlgebra:-Tools package. It can be called using the form PretendRegularDifferentialChain(...) after executing the command with(DifferentialAlgebra:-Tools). It can also be directly called using the form DifferentialAlgebra[Tools][PretendRegularDifferentialChain](...).
R ≔ DifferentialRing⁡derivations=t,blocks=u,s,c
The function sorts the differential polynomials by increasing rank.
ideal ≔ PretendRegularDifferentialChain⁡st−c,ct−s,ut2−s⁢u,R
In the next example, the attribute normalized is omitted.
ideal ≔ PretendRegularDifferentialChain⁡c⁢st−c,ct−s2,ut2−ct⁢u,attributes=differential,autoreduced,primitive,pretend=false,R
Download Help Document