\(\texttt{NLDE}\): A Maple package for D-algebraic functions

Bertrand Teguia Tabuguia

April 2023

This is a documentation for the Maple package NLDE to perform operations with D-algebraic functions. We give syntaxes and examples for each command of of the package. For introduction and configuration of the package check the link Operations for D-Algebraic Functions.

We now assume that the reader can already load the package.

[1]:
restart; #safe attitude

We load the \(\texttt{NLDE}\) package. It currently has 11 procedures whose three are part of its subpackage \(\texttt{AnsatzDalg}\).

[2]:
with(NLDE)
[2]:
\[[\mathit{AnsatzDalg}, \mathit{DDfiniteToDalg}, \mathit{OrderDegreeADE}, \mathit{SysToMinDiffPoly}, \mathit{arithmeticDalg}, \mathit{composeDalg}, \mathit{diffDalg}, \mathit{invDalg}, \mathit{unaryDalg}]\]

Let us consider the algebraic differential equation of the Weirstrass elliptic functions.

[3]:
ADEwp:=diff(w(x),x)^2=4*w(x)^3-g2*w(x)-g3
[3]:
\[\left(\frac{d}{d x}w \left(x \right)\right)^{2} = 4 w \left(x \right)^{3}-\mathit{g2} w \left(x \right)-\mathit{g3}\]

\(\texttt{OrderDegreeADE}\)

Syntax and Description

Calling sequence: OrderDegreeADE(ADE,y(x))

ADE: An algebraic differential equation in the dependent variable y(x) (and the independent variable x).

y(x): y and x are variable names.

Description: Returns a list \([r,d]\), where \(r\) and \(d\) are the order and the (total) degree of ADE, respectively.

Examples

[4]:
OrderDegreeADE(ADEwp,w(x))
[4]:
\[[1, 3]\]
[5]:
OrderDegreeADE(ADEwp*x^4,w(x))
[5]:
\[[1, 3]\]
[6]:
OrderDegreeADE(lhs(ADEwp)-rhs(ADEwp)+diff(w(x),x,x)^2*w(x)^3+x*diff(w(x),x$4)^4=0,w(x))
[6]:
\[[4, 5]\]

\(\texttt{unaryDalg}\)

Syntax and Description

Calling sequence: unaryDalg(ADE,y(x),z=r(x,y),options)

ADE: An algebraic differential equation in the dependent variable y(x) (and the independent variable x).

y(x): y and x are variable names.

z=r(x,y): r is a rational function in x and y, and z is the variable name for the dependent variable in the output.

options: of the form keyword = value. There is only one option for this procedure:

  • The keyword ordering: it has two possible values: lexdeg (default) and plex. lexdeg is the elimination order defined by Bayer and Stillman. plex is the pure lexicographic ordering.

Description: Computes a least-order algebraic differential equation that \(r(x,f(x))\) satisfies, where \(f(x)\) is any solution of ADE.

Examples

[7]:
unaryDalg(ADEwp,w(x),z=w/(w+x))
[7]:
\[\left(-4 x^{3}+x \mathit{g2} -\mathit{g3} -1\right) z \left(x \right)^{4}+\left(4 x^{3}-3 x \mathit{g2} +4 \mathit{g3} +2\right) z \left(x \right)^{3}+2 x z \left(x \right)^{2} \left(\frac{d}{d x}z \left(x \right)\right)+\left(3 x \mathit{g2} -6 \mathit{g3} -1\right) z \left(x \right)^{2}-2 z \left(x \right) \left(\frac{d}{d x}z \left(x \right)\right) x +\left(-x \mathit{g2} +4 \mathit{g3} \right) z \left(x \right)-\left(\frac{d}{d x}z \left(x \right)\right)^{2} x^{2}-\mathit{g3} = 0\]
[8]:
unaryDalg(ADEwp,w(x),z=w^2+x)
[8]:
\[256 z \left(x \right)^{5}+\left(-128 \mathit{g2} -1280 x \right) z \left(x \right)^{4}+\left(16 \mathit{g2}^{2}+512 x \mathit{g2} +2560 x^{2}\right) z \left(x \right)^{3}+\left(-48 \mathit{g2}^{2} x -768 \mathit{g2} \,x^{2}-2560 x^{3}-16 \mathit{g3}^{2}\right) z \left(x \right)^{2}-8 \mathit{g3} z \left(x \right) \left(\frac{d}{d x}z \left(x \right)\right)^{2}+16 \mathit{g3} z \left(x \right) \left(\frac{d}{d x}z \left(x \right)\right)+\left(48 \mathit{g2}^{2} x^{2}+512 \mathit{g2} \,x^{3}+1280 x^{4}+32 \mathit{g3}^{2} x -8 \mathit{g3} \right) z \left(x \right)-\left(\frac{d}{d x}z \left(x \right)\right)^{4}+4 \left(\frac{d}{d x}z \left(x \right)\right)^{3}+\left(8 \mathit{g3} x -6\right) \left(\frac{d}{d x}z \left(x \right)\right)^{2}+\left(-16 \mathit{g3} x +4\right) \left(\frac{d}{d x}z \left(x \right)\right)-16 \mathit{g2}^{2} x^{3}-128 \mathit{g2} \,x^{4}-256 x^{5}-16 \mathit{g3}^{2} x^{2}+8 \mathit{g3} x -1 = 0\]

Every rational function satisfies a first-order algebraic differential equation. One can generate ADEs for rational functions with this command. Let us generate an ADE for \(x\mapsto \frac{(x+5)^2}{x^3+3x+7}\)

[9]:
unaryDalg(diff(y(x),x)=1,y(x),z=(y+5)^2/(x^3+3*x+7))
[9]:
\[\left(9 x^{4}+18 x^{2}+9\right) z \left(x \right)^{2}+\left(6 x^{5}+24 x^{3}+42 x^{2}+18 x +42\right) z \left(x \right) \left(\frac{d}{d x}z \left(x \right)\right)+\left(-4 x^{3}-12 x -28\right) z \left(x \right)+\left(x^{6}+6 x^{4}+14 x^{3}+9 x^{2}+42 x +49\right) \left(\frac{d}{d x}z \left(x \right)\right)^{2} = 0\]

Let us verify the result.

[10]:
simplify(eval(Out[9],z(x)=(x+5)^2/(x^3+3*x+7)))
[10]:
\[0 = 0\]

\(\texttt{arithmeticDalg}\)

Syntax and Description

Calling sequence: arithmeticDalg([ADE1,…,ADEN],[y1(x),…,yN(x)],z=r(x,y1,…,yN),options)

[ADE1,…,ADEN]: A list of algebraic differential equations in the dependent variables y1(x),…,yN(x) (and the independent variable x) given in the same order.

y1(x),…,yN(x): y1,…,yN, and x are variable names.

z=r(x,y1,…,yN): r is a rational function in x,y1,…,yN, and z is the variable name for the dependent variable in the output.

options: of the form keyword = value. There are three options for this procedure:

  • The keyword ordering: it has two possible values: lexdeg and plex (default). lexdeg is the elimination order defined by Bayer and Stillman. plex is the pure lexicographic ordering. Theoretically, the result is guaranteed when ordering=plex.

  • The keyword lho: it is a boolean variable with value true (default) or false. When lho=true the order is not optimal if at least one of the input equation is not linear in its highest order term. If lho=false, the optimal order is guaranteed; however, this might be computationally more expensive.

  • The keyword lhoplex: it has two possible values: lexdeg (default) and plex. This option is considered when lhô=false.

Description: Computes an algebraic differential equation (mostly of least order) that \(r(x,f_1(x),\ldots,f_N(x))\) satisfies, where \(f_1(x),\ldots,f_N(x)\) are generic solutions of ADE1,…,ADEN, respectively.

Examples

We consider two more ADEs: one for \(\exp(x)\) and another for \(\sqrt{1+x}\) One can find those using Maple’s command \(\texttt{DEtools:-FindODE}\)

[11]:
ADEexp:=DEtools:-FindODE(exp(x),y[1](x))=0
[11]:
\[\frac{d}{d x}y_{1}\left(x \right)-y_{1}\left(x \right) = 0\]
[12]:
ADEsqrt:=DEtools:-FindODE(sqrt(x+1),y[2](x))=0
[12]:
\[\left(2 x +2\right) \left(\frac{d}{d x}y_{2}\left(x \right)\right)-y_{2}\left(x \right) = 0\]

Let us find an ADE for the product \(\exp(x)\,\wp(x)\). Since the equation of \(\wp\) is not lho, we specify lho=false to obtain a least-order ADE.

[13]:
arithmeticDalg([ADEwp,ADEexp],[w(x),y[1](x)],z=w*y[1],lho=false)
kilobytes used=20492, alloc=18610, time=2.06
[13]:
\[z \left(x \right)^{5} \left(16 \mathit{g2}^{3}+\mathit{g2}^{2}-72 \mathit{g2} \mathit{g3} -432 \mathit{g3}^{2}-4 \mathit{g3} \right)+z \left(x \right)^{4} \left(\frac{d}{d x}z \left(x \right)\right) \left(-16 \mathit{g2}^{3}-5 \mathit{g2}^{2}+216 \mathit{g2} \mathit{g3} +432 \mathit{g3}^{2}+28 \mathit{g3} \right)+z \left(x \right)^{3} \left(\frac{d}{d x}z \left(x \right)\right)^{2} \left(10 \mathit{g2}^{2}-216 \mathit{g2} \mathit{g3} -84 \mathit{g3} \right)+z \left(x \right)^{3} \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right)^{2} \left(-4 \mathit{g2}^{2}+12 \mathit{g3} \right)+\left(\frac{d}{d x}z \left(x \right)\right)^{3} z \left(x \right)^{2} \left(-10 \mathit{g2}^{2}+72 \mathit{g2} \mathit{g3} +140 \mathit{g3} \right)+z \left(x \right)^{2} \left(\frac{d}{d x}z \left(x \right)\right)^{2} \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right) \left(8 \mathit{g2}^{2}-24 \mathit{g3} \right)+z \left(x \right)^{2} \left(\frac{d}{d x}z \left(x \right)\right) \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right)^{2} \left(4 \mathit{g2}^{2}-36 \mathit{g3} \right)+8 \mathit{g3} z \left(x \right)^{2} \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right)^{3}+z \left(x \right) \left(\frac{d}{d x}z \left(x \right)\right)^{4} \left(\mathit{g2}^{2}-128 \mathit{g3} \right)+z \left(x \right) \left(\frac{d}{d x}z \left(x \right)\right)^{3} \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right) \left(-8 \mathit{g2}^{2}+72 \mathit{g3} \right)+12 \mathit{g3} z \left(x \right) \left(\frac{d}{d x}z \left(x \right)\right)^{2} \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right)^{2}-8 \mathit{g3} z \left(x \right) \left(\frac{d}{d x}z \left(x \right)\right) \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right)^{3}+\left(\frac{d}{d x}z \left(x \right)\right)^{5} \left(3 \mathit{g2}^{2}+48 \mathit{g3} \right)-48 \mathit{g3} \left(\frac{d}{d x}z \left(x \right)\right)^{4} \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right)+12 \mathit{g3} \left(\frac{d}{d x}z \left(x \right)\right)^{3} \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right)^{2} = 0\]

The next one if for the ratio \(\frac{\exp(x)}{x+\sqrt{1+x}}\)

[14]:
arithmeticDalg([ADEexp,ADEsqrt],[y[1](x),y[2](x)],z=y[1]/(x+y[2]))
kilobytes used=27867, alloc=18610, time=2.81
[14]:
\[\left(-2 x^{2}-5 x -5\right) z \left(x \right)^{2}+\left(4 x^{2}+11 x +8\right) z \left(x \right) \left(\frac{d}{d x}z \left(x \right)\right)+z \left(x \right) \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right) \left(2 x^{2}+6 x +4\right)+\left(\frac{d}{d x}z \left(x \right)\right)^{2} \left(-4 x^{2}-12 x -8\right) = 0\]

\(\texttt{composeDalg}\)

Syntax and Description

Calling sequence: composeDalg([ADE1,ADE2],[y1(x),y2(x)],z(x),options)

[ADE1,ADE2]: A list of two algebraic differential equations in the dependent variables y1(x),y2(x) (and the independent variable x) given in the same order. The order in the list is the one use for the composition.

y1(x),y2(x),z(x): y1,y2,z and x are variable names. z(x) is the dependent variable for the output.

options: of the form keyword = value. There is only one option for this procedure:

  • The keyword ordering: it has two possible values: lexdeg and plex (default). lexdeg is the elimination order defined by Bayer and Stillman. plex is the pure lexicographic ordering. Theoretically, the result is guaranteed when ordering=plex. However, the computations are often faster when ordering=lexdeg.

Description: Computes an algebraic differential equation (mostly of least order) that \(f_1(f_2(x))\) satisfies, where \(f_1(x)\) and \(f_2(x)\) are generic solutions of ADE1 and ADE2, respectively.

Examples

Let us find an ADE satisfied by \(\wp(\sqrt{1+x})\).

[15]:
composeDalg([ADEwp,ADEsqrt],[w(x),y[2](x)],z(x),ordering=lexdeg)
[15]:
\[-36 z \left(x \right)^{2} \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right)+z \left(x \right)^{2} \left(\frac{d^{3}}{d x^{3}}z \left(x \right)\right) \left(-24 x -24\right)+24 z \left(x \right) \left(\frac{d}{d x}z \left(x \right)\right)^{2}+z \left(x \right) \left(\frac{d}{d x}z \left(x \right)\right) \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right) \left(48 x +48\right)+3 \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right) \mathit{g2} +\left(\frac{d^{3}}{d x^{3}}z \left(x \right)\right) \left(2 x \mathit{g2} +2 \mathit{g2} \right) = 0\]

The next one is for \(\sqrt{1+\exp(x)}\)

[16]:
composeDalg([ADEsqrt,ADEexp],[y[2](x),y[1](x)],z(x),ordering=lexdeg)
[16]:
\[-z \left(x \right) \left(\frac{d}{d x}z \left(x \right)\right)+z \left(x \right) \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right)+\left(\frac{d}{d x}z \left(x \right)\right)^{2} = 0\]

Observe that the latter output is the same quadratic differential equation obtained by \(\texttt{DEtools:-FindODE}\) directly from the expression \(\sqrt{1+\exp(x)}\). This is not always the case; here the result comes from pure algebraic computations with all solutions at once (no simplification knownledge is used). For \(\exp(\sqrt{1+x})\), the results are not the same.

[17]:
DEtools:-FindODE(sqrt(1+exp(x)),z(x),method=quadratic)
[17]:
\[-z \left(x \right) \left(\frac{d}{d x}z \left(x \right)\right)+z \left(x \right) \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right)+\left(\frac{d}{d x}z \left(x \right)\right)^{2}\]
[18]:
composeDalg([ADEexp,ADEsqrt],[y[1](x),y[2](x)],z(x),ordering=lexdeg)
[18]:
\[-z \left(x \right) \left(\frac{d}{d x}z \left(x \right)\right)+z \left(x \right) \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right) \left(-2 x -2\right)+\left(\frac{d}{d x}z \left(x \right)\right)^{2} \left(2 x +2\right) = 0\]
[19]:
DEtools:-FindODE(exp(sqrt(1+x)),z(x),method=quadratic)
[19]:
\[-\frac{\left(4 x +4\right) z \left(x \right)^{2}}{4 \left(x +1\right)}+\left(4 x +4\right) \left(\frac{d}{d x}z \left(x \right)\right)^{2}\]

\(\texttt{diffDalg}\)

Calling sequence: diffDalg(ADE,y(x),options)

ADE: An algebraic differential equation in the dependent variable y(x) (and the independent variable x).

y(x): y and x are variable names.

options: of the form value. There is only one option for this procedure:

  • A positive integer n: it represents the order. The default value is \(1\) for the first derivative.

Description: Computes a least-order algebraic differential equation that \(f^{(n)}(x)\) (\(f'(x)\) by default) satisfies, where \(f(x)\) is a solution of ADE.

Examples

Let us find the ADEs for any \(\wp'(x)\) and \(\wp''(x)\).

[20]:
diffDalg(ADEwp,w(x))
[20]:
\[-1728 w \left(x \right)^{4}+64 \mathit{g2}^{3}-192 \mathit{g2} \left(\frac{d}{d x}w \left(x \right)\right)^{2}-3456 \mathit{g3} w \left(x \right)^{2}+128 \left(\frac{d}{d x}w \left(x \right)\right)^{3}-1728 \mathit{g3}^{2} = 0\]
[21]:
diffDalg(ADEwp,w(x),2)
[21]:
\[16 \mathit{g2}^{5}+64 \mathit{g2}^{4} w \left(x \right)+16 \mathit{g2}^{3} w \left(x \right)^{2}-160 \mathit{g2}^{2} w \left(x \right)^{3}-64 \mathit{g2} w \left(x \right)^{4}+128 w \left(x \right)^{5}-432 \mathit{g2}^{2} \mathit{g3}^{2}-1728 \mathit{g2} \,\mathit{g3}^{2} w \left(x \right)-72 \mathit{g2} \mathit{g3} \left(\frac{d}{d x}w \left(x \right)\right)^{2}-1728 \mathit{g3}^{2} w \left(x \right)^{2}-144 \mathit{g3} w \left(x \right) \left(\frac{d}{d x}w \left(x \right)\right)^{2}-3 \left(\frac{d}{d x}w \left(x \right)\right)^{4} = 0\]

Let us compute for the first derivatives of \(\exp(x)\) and \(\sqrt{1+x}\). The result here can be recovered by algorithms for holonomic functions.

[22]:
diffDalg(ADEexp,y[1](x))
[22]:
\[\frac{d}{d x}y_{1}\left(x \right)-y_{1}\left(x \right) = 0\]
[23]:
diffDalg(ADEsqrt,y[2](x))
[23]:
\[2 \left(\frac{d}{d x}y_{2}\left(x \right)\right) x +y_{2}\left(x \right)+2 \frac{d}{d x}y_{2}\left(x \right) = 0\]

\(\texttt{invDalg}\)

Calling sequence: diffDalg(ADE,y(x),z(x))

ADE: An algebraic differential equation in the dependent variable y(x) (and the independent variable x).

y(x),z(x): y,z and x are variable names. z(x) is the dependent variable for the output.

Description: Computes the algebraic differential equation of the lowest degree among those of lowest order that \(f^{-1}(x)\) satisfies; where \(f^{-1}\) is such that \(f^{-1}\circ f= f\circ f^{-1} = \text{Id}\) (in the appropriate domains), and \(f(x)\) is a solution of ADE.

Examples

Let us find ADEs for \(\wp^{-1}, \exp^{-1}=\log\) and \(\left(x\mapsto \sqrt{1+x}\right)^{-1} = x\mapsto x^2-1\)

[24]:
invDalg(ADEwp,w(x),z(x))
[24]:
\[1+\left(-4 x^{3}+x \mathit{g2} +\mathit{g3} \right) \left(\frac{d}{d x}z \left(x \right)\right)^{2} = 0\]
[25]:
invDalg(ADEexp,y[1](x),z(x))
[25]:
\[-\left(\frac{d}{d x}z \left(x \right)\right) x +1 = 0\]
[26]:
invDalg(ADEsqrt,y[2](x),z(x))
[26]:
\[-\left(\frac{d}{d x}z \left(x \right)\right) x +2 z \left(x \right)+2 = 0\]

\(\texttt{SysToMinDiffPoly}\)

Syntax and Description

Calling sequence: SysToMinDiffPoly([r1,…,rN],F,[X1,…,XN],z(t),options)

[r1,…,rN]: A list of rational functions in the variables X1,…,XN.

X1,…,XN: The variable names of the dynamical system.

F: A rational function in the variables X1,…,XN.

z(t): z(t) is the dependent variable (with independent variable t) for the input-output equation sought.

options: of the form keyword = value. There is only one option for this procedure:

  • The keyword ordering: it has two possible values: lexdeg and plex (default). lexdeg is the elimination order defined by Bayer and Stillman. plex is the pure lexicographic ordering.

Description: Computes the input-output equation of a rational dynamical system. The system has the form

\[\begin{split}\begin{cases} X' = r(\text{X1},\ldots,\text{XN})\\ z=F(\text{X1},\ldots,\text{XN}) \end{cases} := \begin{cases} \text{X1}' = \text{r1}(\text{X1},\ldots,\text{XN})\\ \vdots\\ \text{XN}' = \text{rN}(\text{X1},\ldots,\text{XN})\\ z=F(\text{X1},\ldots,\text{XN}) \end{cases}.\end{split}\]

This is the core procedure of all procedures in \(\texttt{NLDE}\) that uses Groebner bases elimination (when lho=true).

Examples

SIR model where we replace \(I\) by \(T\), as \(I\) is a protected Maple symbol. We compute a differential equation for \(R\) (the recovered individual).

[27]:
SysToMinDiffPoly([-beta*S*T-delta*S + mu, beta*S*T - gamma*T + nu, delta*S+gamma*T],R,[S,T,R],w(t))
kilobytes used=67777, alloc=23730, time=6.76
[27]:
\[\left(\beta^{2} \delta^{2}-\beta^{2} \gamma^{2}\right) \left(\frac{d}{d t}w \left(t \right)\right)^{3} \left(\frac{d^{2}}{d t^{2}}w \left(t \right)\right)+\left(\beta^{2} \delta -\beta^{2} \gamma \right) \left(\frac{d}{d t}w \left(t \right)\right)^{2} \left(\frac{d^{2}}{d t^{2}}w \left(t \right)\right)^{2}+\left(-\beta^{2} \delta^{2} \mu -\beta^{2} \delta^{2} \nu +\beta^{2} \gamma^{2} \mu +\beta^{2} \gamma^{2} \nu +2 \beta \,\delta^{3} \gamma +8 \beta \,\delta^{2} \gamma^{2}+2 \beta \delta \,\gamma^{3}\right) \left(\frac{d}{d t}w \left(t \right)\right)^{2} \left(\frac{d^{2}}{d t^{2}}w \left(t \right)\right)+\left(6 \beta \,\delta^{2} \gamma +6 \beta \delta \,\gamma^{2}\right) \left(\frac{d^{2}}{d t^{2}}w \left(t \right)\right)^{2} \left(\frac{d}{d t}w \left(t \right)\right)+\left(-6 \beta \,\delta^{3} \gamma \mu -2 \beta \,\delta^{3} \gamma \nu -16 \beta \,\delta^{2} \gamma^{2} \mu -16 \beta \,\delta^{2} \gamma^{2} \nu -2 \beta \delta \,\gamma^{3} \mu -6 \beta \delta \,\gamma^{3} \nu +\delta^{4} \gamma^{2}-\delta^{2} \gamma^{4}\right) \left(\frac{d}{d t}w \left(t \right)\right) \left(\frac{d^{2}}{d t^{2}}w \left(t \right)\right)+\left(-\delta^{3} \gamma +\delta \,\gamma^{3}\right) \left(\frac{d^{3}}{d t^{3}}w \left(t \right)\right) \left(\frac{d^{2}}{d t^{2}}w \left(t \right)\right)+\left(\beta \,\delta^{2}+2 \beta \delta \gamma +\beta \,\gamma^{2}\right) \left(\frac{d^{2}}{d t^{2}}w \left(t \right)\right)^{3}+\left(-\beta \,\delta^{3} \mu -6 \beta \,\delta^{2} \gamma \mu -5 \beta \,\delta^{2} \gamma \nu -5 \beta \delta \,\gamma^{2} \mu -6 \beta \delta \,\gamma^{2} \nu -\beta \,\gamma^{3} \nu \right) \left(\frac{d^{2}}{d t^{2}}w \left(t \right)\right)^{2}+\left(4 \beta \,\delta^{3} \gamma \,\mu^{2}+4 \beta \,\delta^{3} \gamma \mu \nu +8 \beta \,\delta^{2} \gamma^{2} \mu^{2}+16 \beta \,\delta^{2} \gamma^{2} \mu \nu +8 \beta \,\delta^{2} \gamma^{2} \nu^{2}+4 \beta \delta \,\gamma^{3} \mu \nu +4 \beta \delta \,\gamma^{3} \nu^{2}-\delta^{4} \gamma^{2} \mu -\delta^{4} \gamma^{2} \nu +\delta^{2} \gamma^{4} \mu +\delta^{2} \gamma^{4} \nu \right) \left(\frac{d^{2}}{d t^{2}}w \left(t \right)\right)+\left(-\delta^{2} \gamma +\delta \,\gamma^{2}\right) \left(\frac{d^{3}}{d t^{3}}w \left(t \right)\right)^{2}+\delta^{4} \gamma^{3} \mu^{2}+\delta^{4} \gamma^{3} \nu^{2}-\delta^{3} \gamma^{4} \mu^{2}-\delta^{3} \gamma^{4} \nu^{2}-8 \beta \,\delta^{3} \gamma^{2} \mu^{2} \nu -4 \beta \,\delta^{3} \gamma^{2} \mu \,\nu^{2}-4 \beta \,\delta^{2} \gamma^{3} \mu^{2} \nu -8 \beta \,\delta^{2} \gamma^{3} \mu \,\nu^{2}-4 \beta \,\delta^{3} \gamma^{2} \mu^{3}-4 \beta \,\delta^{2} \gamma^{3} \nu^{3}+2 \delta^{4} \gamma^{3} \mu \nu -2 \delta^{3} \gamma^{4} \mu \nu +\left(-\beta \,\delta^{2}+2 \beta \delta \gamma -\beta \,\gamma^{2}\right) \left(\frac{d^{2}}{d t^{2}}w \left(t \right)\right) \left(\frac{d}{d t}w \left(t \right)\right) \left(\frac{d^{3}}{d t^{3}}w \left(t \right)\right)+\left(\beta^{2} \delta^{2} \gamma -\beta^{2} \delta \,\gamma^{2}\right) \left(\frac{d}{d t}w \left(t \right)\right)^{4}+\left(-2 \beta^{2} \delta^{2} \gamma \mu -2 \beta^{2} \delta^{2} \gamma \nu +2 \beta^{2} \delta \,\gamma^{2} \mu +2 \beta^{2} \delta \,\gamma^{2} \nu +2 \beta \,\delta^{3} \gamma^{2}+2 \beta \,\delta^{2} \gamma^{3}\right) \left(\frac{d}{d t}w \left(t \right)\right)^{3}+\left(\beta^{2} \delta^{2} \gamma \,\mu^{2}+2 \beta^{2} \delta^{2} \gamma \mu \nu +\beta^{2} \delta^{2} \gamma \,\nu^{2}-\beta^{2} \delta \,\gamma^{2} \mu^{2}-2 \beta^{2} \delta \,\gamma^{2} \mu \nu -\beta^{2} \delta \,\gamma^{2} \nu^{2}-8 \beta \,\delta^{3} \gamma^{2} \mu -4 \beta \,\delta^{3} \gamma^{2} \nu -4 \beta \,\delta^{2} \gamma^{3} \mu -8 \beta \,\delta^{2} \gamma^{3} \nu +\delta^{4} \gamma^{3}-\delta^{3} \gamma^{4}\right) \left(\frac{d}{d t}w \left(t \right)\right)^{2}+\left(10 \beta \,\delta^{3} \gamma^{2} \mu^{2}+12 \beta \,\delta^{3} \gamma^{2} \mu \nu +2 \beta \,\delta^{3} \gamma^{2} \nu^{2}+2 \beta \,\delta^{2} \gamma^{3} \mu^{2}+12 \beta \,\delta^{2} \gamma^{3} \mu \nu +10 \beta \,\delta^{2} \gamma^{3} \nu^{2}-2 \delta^{4} \gamma^{3} \mu -2 \delta^{4} \gamma^{3} \nu +2 \delta^{3} \gamma^{4} \mu +2 \delta^{3} \gamma^{4} \nu \right) \left(\frac{d}{d t}w \left(t \right)\right) = 0\]
[28]:
OrderDegreeADE(Out[27],w(t))
[28]:
\[[3, 4]\]

\(\texttt{DDfiniteToDalg}\)

Syntax and Description

Calling sequence: DDfiniteToDalg(DDeq,y(x),[HDE1,…,HDEN],[C1(x),…,CN(x)],options)

DDeq: A linear differential equation in dependent variable y(x) (and independent variable x) with D-finite function coefficients, among which C1,…,CN linearly appear.

y(x): y and x are variable names.

[HDE1,…,HDEN]: A list of holonomic differential equations in the dependent variables C1(x),…,CN(x) (and the independent variable x) given in the same order.

C1(x),…,CN(x): C1,…,CN, and x are variable names.

options: of the form keyword = value. There is only one option for this procedure:

  • The keyword ordering: it has two possible values: lexdeg and plex (default). lexdeg is the elimination order defined by Bayer and Stillman. plex is the pure lexicographic ordering.

Description: Computes a least-order algebraic differential equation that has the same solutions as DDeq. Note, however, that the scope of the algorithm goes beyond the conversion of DD-finite equation into ADE. In fact, DDeq can be a linear differential equation with DD-finite function coefficients.

Examples

We consider Mathieu functions. These are solutions of the following differential equation:

\[y^{''}(x) + (a-2\,q\,\cos(2\,x))\,y(x)=0,\]

where \(q\) and \(a\) are some parameters. We first compute a holonomic ODE (in the independent variable \(C(x)\)), satisfied by \(\cos(2\,x)\), and replace \(\cos(2\,x)\) in the equation by \(C\).

[29]:
DDeq:=diff(y(x),x,x)+(a-2*q*C)*y(x)=0
[29]:
\[\frac{d^{2}}{d x^{2}}y \left(x \right)+\left(-2 q C +a \right) y \left(x \right) = 0\]
[30]:
HDE:=DEtools:-FindODE(cos(2*x),C(x))=0
[30]:
\[4 C \left(x \right)+\frac{d^{2}}{d x^{2}}C \left(x \right) = 0\]
[31]:
ADE:=DDfiniteToDalg(DDeq,y(x),[HDE],[C(x)])
[31]:
\[4 a y \left(x \right)^{3}+4 y \left(x \right)^{2} \left(\frac{d^{2}}{d x^{2}}y \left(x \right)\right)+y \left(x \right)^{2} \left(\frac{d^{4}}{d x^{4}}y \left(x \right)\right)-2 \left(\frac{d^{3}}{d x^{3}}y \left(x \right)\right) y \left(x \right) \left(\frac{d}{d x}y \left(x \right)\right)-\left(\frac{d^{2}}{d x^{2}}y \left(x \right)\right)^{2} y \left(x \right)+2 \left(\frac{d}{d x}y \left(x \right)\right)^{2} \left(\frac{d^{2}}{d x^{2}}y \left(x \right)\right) = 0\]

One can verify this result in Maple. The solutions of Mathieu equations in Maple are MathieuC(a,q,x) and MathieurS(a,q,x).

[32]:
simplify(eval(ADE,y(x)=MathieuC(a,q,x)))
[32]:
\[0 = 0\]
[33]:
simplify(eval(ADE,y(x)=MathieuS(a,q,x)))
[33]:
\[0 = 0\]

For our next example, we consider

\[\left(\cos(x)+1\right)\, y'(x) + \left(\sin(x)-1\right)\, y(x) =0,\]

satisfied by \(\cos(x/2)^2\, \exp(\tan(x/2))\). This example is from [Jiménez-Pastor, A. and Pillwein, V., (2020)]

[34]:
DDeq:=(C+1)*diff(y(x),x) + (S-1)*y(x) = 0
[34]:
\[\left(C +1\right) \left(\frac{d}{d x}y \left(x \right)\right)+\left(S -1\right) y \left(x \right) = 0\]

For this example, since \(\cos(x)\) and \(\sin(x)\) satisfy the same differential equation, we cannot use their holnomic ODE here. Instead, we consider the equations

\[C'(x)=-S\,\quad\, (\cos'(x)=-\sin(x)),\, \quad \, \quad \, S'(x)=C\, \quad (\sin'(x)=\cos(x)),\]

for \(\cos(x)\) and \(\sin(x)\), respectively.

[35]:
HDE1:=diff(C(x),x)=-S
[35]:
\[\frac{d}{d x}C \left(x \right) = -S\]
[36]:
HDE2:=diff(S(x),x)=C
[36]:
\[\frac{d}{d x}S \left(x \right) = C\]
[37]:
ADE:=DDfiniteToDalg(DDeq,y(x),[HDE1,HDE2],[C(x),S(x)])
[37]:
\[-y \left(x \right)^{3}+y \left(x \right)^{2} \left(\frac{d}{d x}y \left(x \right)\right)-3 y \left(x \right)^{2} \left(\frac{d^{2}}{d x^{2}}y \left(x \right)\right)+\left(\frac{d^{3}}{d x^{3}}y \left(x \right)\right) y \left(x \right)^{2}+2 \left(\frac{d}{d x}y \left(x \right)\right)^{2} y \left(x \right)+\left(\frac{d^{3}}{d x^{3}}y \left(x \right)\right) y \left(x \right) \left(\frac{d}{d x}y \left(x \right)\right)-2 \left(\frac{d^{2}}{d x^{2}}y \left(x \right)\right)^{2} y \left(x \right)+\left(\frac{d}{d x}y \left(x \right)\right)^{2} \left(\frac{d^{2}}{d x^{2}}y \left(x \right)\right) = 0\]
[38]:
simplify(eval(ADE,y(x)=cos(x/2)^2*exp(tan(x/2))))
[38]:
\[0 = 0\]

\(\texttt{AnsatzDalg}\)

A subpackage of \(\texttt{NLDE}\) for doing arithmetic with D-algebraic functions. It (currently – April 2023) has two main procedures: \(\texttt{AnsatzDalg:-arithmeticDeltak}\) and \(\texttt{AnsatzDalg:-unaryDeltak}\). One can also use them without the prefix \(\texttt{AnsatzDalg}\) aftern loading the subpackage as \(\texttt{with(AnsatzDalg)}\). Sometimes these procedures are the best choice when the order and the degree of the expected ADE are small (\(\leq 6\)).

\(\texttt{AnsatzDalg:-unaryDeltak}\)

Syntax and Description

Calling sequence: AnsatzDalg:-unaryDeltak(ADE,y(x),z=F(x,y),options)

ADE: An algebraic differential equation in the dependent variable y(x) (and the independent variable x).

y(x): y and x are variable names.

z=F(x,y): F is a rational function in x, y, and their compositions by elementary functions. z is the variable name for the dependent variable in the output. Although, F can contain elementary functions, it is maint for rational function in x and y to have a reductionist approach of \(\texttt{unaryDalg}\).

options: of the form keyword = value. There are three options this procedure:

  • The keyword degreeDE: the possible values are positive integers. By default, degreeDE=2. When degreeDE=k, the code looks for an algebraic differential equation of degree at most k.

  • The keyword startingord: the possible values are positive integers. By default, startingord is the order of ADE. When startingord=s (larger than the order of ADE), the code starts the search from ADEs of order s.

  • The keyword maxdeorder: the possible values are positive integers. By default, maxdeorder is the order of ADE. When maxdeorder=m (larger than startingord), the code looks for an ADE of order at most m.

Description: Computes (looks for) the least-order algebraic differential equation of degree at most the value of degreeDE that \(\textbf{F}(x,f(x))\) satisfies, where \(f(x)\) is any solution of ADE.

Examples

Let us recover the results obtained by \(\texttt{unaryDalg}\).

[39]:
AnsatzDalg:-unaryDeltak(ADEwp,w(x),z=w/(w+x),degreeDE=4)
[39]:
\[\mathit{g3} +\left(x \mathit{g2} -4 \mathit{g3} \right) z \left(x \right)+\left(-3 x \mathit{g2} +6 \mathit{g3} +1\right) z \left(x \right)^{2}+\left(-4 x^{3}+3 x \mathit{g2} -4 \mathit{g3} -2\right) z \left(x \right)^{3}+\left(4 x^{3}-x \mathit{g2} +\mathit{g3} +1\right) z \left(x \right)^{4}+2 z \left(x \right) \left(\frac{d}{d x}z \left(x \right)\right) x -2 x z \left(x \right)^{2} \left(\frac{d}{d x}z \left(x \right)\right)+\left(\frac{d}{d x}z \left(x \right)\right)^{2} x^{2} = 0\]
[40]:
AnsatzDalg:-unaryDeltak(ADEwp,w(x),z=w^2+x,degreeDE=5)
[40]:
\[16 \mathit{g2}^{2} x^{3}+128 \mathit{g2} \,x^{4}+256 x^{5}+16 \mathit{g3}^{2} x^{2}-8 \mathit{g3} x +1+\left(-48 \mathit{g2}^{2} x^{2}-512 \mathit{g2} \,x^{3}-1280 x^{4}-32 \mathit{g3}^{2} x +8 \mathit{g3} \right) z \left(x \right)+\left(48 \mathit{g2}^{2} x +768 \mathit{g2} \,x^{2}+2560 x^{3}+16 \mathit{g3}^{2}\right) z \left(x \right)^{2}+\left(-16 \mathit{g2}^{2}-512 x \mathit{g2} -2560 x^{2}\right) z \left(x \right)^{3}+\left(128 \mathit{g2} +1280 x \right) z \left(x \right)^{4}-256 z \left(x \right)^{5}+\left(16 \mathit{g3} x -4\right) \left(\frac{d}{d x}z \left(x \right)\right)-16 \mathit{g3} z \left(x \right) \left(\frac{d}{d x}z \left(x \right)\right)+\left(-8 \mathit{g3} x +6\right) \left(\frac{d}{d x}z \left(x \right)\right)^{2}+8 \mathit{g3} z \left(x \right) \left(\frac{d}{d x}z \left(x \right)\right)^{2}-4 \left(\frac{d}{d x}z \left(x \right)\right)^{3}+\left(\frac{d}{d x}z \left(x \right)\right)^{4} = 0\]
[41]:
AnsatzDalg:-unaryDeltak(diff(y(x),x)=1,y(x),z=(y+5)^2/(x^3+3*x+7))
[41]:
\[\left(-4 x^{3}-12 x -28\right) z \left(x \right)+9 \left(x^{2}+1\right)^{2} z \left(x \right)^{2}+6 \left(x^{3}+3 x +7\right) \left(x^{2}+1\right) z \left(x \right) \left(\frac{d}{d x}z \left(x \right)\right)+\left(x^{3}+3 x +7\right)^{2} \left(\frac{d}{d x}z \left(x \right)\right)^{2} = 0\]

A different result for the composition \(\sqrt{1+\exp(x)}\). Remember that \(\texttt{composeDalg}\) finds an ADE fulfilled by \(\alpha_1\,\sqrt{1+\alpha_2\,\exp(x)}\) for arbitrary \(\alpha_1,\alpha_2\)

[42]:
AnsatzDalg:-unaryDeltak(ADEexp,y[1](x),z=sqrt(1+y[1]))
[42]:
\[1-z \left(x \right)^{2}+2 z \left(x \right) \left(\frac{d}{d x}z \left(x \right)\right) = 0\]
[43]:
simplify(eval(Out[42],z(x)=sqrt(1+exp(x))))
[43]:
\[0 = 0\]

The same result for \(\exp(\sqrt{1+x})\).

[44]:
AnsatzDalg:-unaryDeltak(ADEsqrt,y[2](x),z=exp(y[2]))
[44]:
\[z \left(x \right) \left(\frac{d}{d x}z \left(x \right)\right)+\left(-2 x -2\right) \left(\frac{d}{d x}z \left(x \right)\right)^{2}+\left(2 x +2\right) z \left(x \right) \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right) = 0\]

\(\texttt{AnsatzDalg:-arithmeticDeltak}\)

Syntax and Description

Calling sequence: AnsatzDalg:-arithmeticDeltak([ADE1,…,ADEN],[y1(x),…,yN(x)],z=F(x,y1,…,yN),options)

[ADE1,…,ADEN]: A list of algebraic differential equations in the dependent variables y1(x),…,yN(x) (and the independent variable x) given in the same order.

y1(x),…,yN(x): y1,…,yN, and x are variable names.

z=F(x,y1,…,yN): F is a rational function in x, y1,…,yN, and their compositions by elementary functions. z is the variable name for the dependent variable in the output. Although, F can contain elementary functions, it is maint for rational function in x and y1,…,yN to have a reductionist approach of \(\texttt{arithmeticDalg}\).

options: of the form keyword = value. There are three options this procedure:

  • The keyword degreeDE: the possible values are positive integers. By default, degreeDE=2. When degreeDE=k, the code looks for an algebraic differential equation of degree at most k.

  • The keyword startingord: the possible values are positive integers. By default, startingord is the smallest order among the orders of the input ADEs. When startingord=s (larger than the smallest order in the input ADEs), the code starts the search from ADEs of order s.

  • The keyword maxdeorder: the possible values are positive integers. By default, maxdeorder is the smallest order among the orders of the input ADEs. When maxdeorder=m (larger than startingord), the code looks for an ADE of order at most m.

Description: Computes (looks for) the least-order algebraic differential equation of degree at most the value of degreeDE that \(\textbf{F}(x,f_1(x),\ldots,f_N(x))\) satisfies, where \(f_1(x),\ldots,f_N(x)\) are any solutions of ADE1,…,ADEN, respectively.

Examples

Let us try the same examples of \(\texttt{arithmeticDalg}\).

[45]:
ADE:=CodeTools:-CPUTime(AnsatzDalg:-arithmeticDeltak([ADEwp,ADEexp],[w(x),y[1](x)],z=w*y[1],degreeDE=5))
kilobytes used=277133, alloc=23792, time=25.11
[45]:
\[16.500,\left(16 \mathit{g2}^{3}+\mathit{g2}^{2}-72 \mathit{g2} \mathit{g3} -432 \mathit{g3}^{2}-4 \mathit{g3} \right) z \left(x \right)^{4}+\left(-4 \mathit{g2}^{2}+144 \mathit{g2} \mathit{g3} +24 \mathit{g3} \right) \left(\frac{d}{d x}z \left(x \right)\right) z \left(x \right)^{3}+\left(6 \mathit{g2}^{2}-72 \mathit{g2} \mathit{g3} -60 \mathit{g3} \right) \left(\frac{d}{d x}z \left(x \right)\right)^{2} z \left(x \right)^{2}+\left(-4 \mathit{g2}^{2}+80 \mathit{g3} \right) \left(\frac{d}{d x}z \left(x \right)\right)^{3} z \left(x \right)+\left(-3 \mathit{g2}^{2}-48 \mathit{g3} \right) \left(\frac{d}{d x}z \left(x \right)\right)^{4}+\left(8 \mathit{g2}^{2}-24 \mathit{g3} \right) \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right) \left(\frac{d}{d x}z \left(x \right)\right)^{2} z \left(x \right)+48 \mathit{g3} \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right) \left(\frac{d}{d x}z \left(x \right)\right)^{3}+\left(-4 \mathit{g2}^{2}+12 \mathit{g3} \right) \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right)^{2} z \left(x \right)^{2}-24 \mathit{g3} \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right)^{2} \left(\frac{d}{d x}z \left(x \right)\right) z \left(x \right)-12 \mathit{g3} \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right)^{2} \left(\frac{d}{d x}z \left(x \right)\right)^{2}+8 \mathit{g3} \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right)^{3} z \left(x \right) = 0\]
[46]:
OrderDegreeADE(ADE[2],z(x))
[46]:
\[[2, 4]\]

As it often happens, \(\texttt{AnsatzDalg:-arithmeticDeltak}\) detected a smaller degree ADE for \(\wp(x)*\exp(x)\). It is thererfore enough (and computationally more efficient – as shown by the CPU time) to use the option degreeDE=4.

[47]:
CodeTools:-CPUTime(AnsatzDalg:-arithmeticDeltak([ADEwp,ADEexp],[w(x),y[1](x)],z=w*y[1],degreeDE=4))
kilobytes used=345495, alloc=23792, time=31.08
[47]:
\[6.235,\left(16 \mathit{g2}^{3}+\mathit{g2}^{2}-72 \mathit{g2} \mathit{g3} -432 \mathit{g3}^{2}-4 \mathit{g3} \right) z \left(x \right)^{4}+\left(-4 \mathit{g2}^{2}+144 \mathit{g2} \mathit{g3} +24 \mathit{g3} \right) \left(\frac{d}{d x}z \left(x \right)\right) z \left(x \right)^{3}+\left(6 \mathit{g2}^{2}-72 \mathit{g2} \mathit{g3} -60 \mathit{g3} \right) \left(\frac{d}{d x}z \left(x \right)\right)^{2} z \left(x \right)^{2}+\left(-4 \mathit{g2}^{2}+80 \mathit{g3} \right) \left(\frac{d}{d x}z \left(x \right)\right)^{3} z \left(x \right)+\left(-3 \mathit{g2}^{2}-48 \mathit{g3} \right) \left(\frac{d}{d x}z \left(x \right)\right)^{4}+\left(8 \mathit{g2}^{2}-24 \mathit{g3} \right) \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right) \left(\frac{d}{d x}z \left(x \right)\right)^{2} z \left(x \right)+48 \mathit{g3} \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right) \left(\frac{d}{d x}z \left(x \right)\right)^{3}+\left(-4 \mathit{g2}^{2}+12 \mathit{g3} \right) \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right)^{2} z \left(x \right)^{2}-24 \mathit{g3} \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right)^{2} \left(\frac{d}{d x}z \left(x \right)\right) z \left(x \right)-12 \mathit{g3} \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right)^{2} \left(\frac{d}{d x}z \left(x \right)\right)^{2}+8 \mathit{g3} \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right)^{3} z \left(x \right) = 0\]

We end with \(\frac{\exp(x)}{x+\sqrt{1+x}}\).

[48]:
AnsatzDalg:-arithmeticDeltak([ADEexp,ADEsqrt],[y[1](x),y[2](x)],z=y[1]/(x+y[2]))
[48]:
\[\left(-2 x^{2}-5 x -5\right) z \left(x \right)^{2}+\left(4 x^{2}+11 x +8\right) z \left(x \right) \left(\frac{d}{d x}z \left(x \right)\right)-4 \left(x +2\right) \left(x +1\right) \left(\frac{d}{d x}z \left(x \right)\right)^{2}+2 \left(x +2\right) \left(x +1\right) z \left(x \right) \left(\frac{d^{2}}{d x^{2}}z \left(x \right)\right) = 0\]

\(\texttt{AnsatzDalg:-deltakdiff}\)

Syntax and Description

Calling sequence: AnsatzDalg:-deltakdiff(expr,x,k,n)

expr: A symbolic mathematical expression depending on x.

x: A variable name.

k: A positive integer representing the degree bound.

n: A non-negative integer representing the rank (order) of the output according to the \(\delta_{\textbf{k}}\) derivation.

Description: Computes the \(n\)th \(\delta_{\textbf{k}}\) derivative of expr.

Examples

Let us show how the first 10 products of at most 2 derivatives, at most 3 derivatives, and at most 4 derivatives are ordered w.r.t. the derivation rules \(\delta_2, \delta_3,\) and \(\delta_4\), respectively.

[49]:
seq(AnsatzDalg:-deltakdiff(F(x),x,2,j),j=0..10)
[49]:
\[1,F \left(x \right),F \left(x \right)^{2},\frac{d}{d x}F \left(x \right),\left(\frac{d}{d x}F \left(x \right)\right) F \left(x \right),\left(\frac{d}{d x}F \left(x \right)\right)^{2},\frac{d^{2}}{d x^{2}}F \left(x \right),\left(\frac{d^{2}}{d x^{2}}F \left(x \right)\right) F \left(x \right),\left(\frac{d^{2}}{d x^{2}}F \left(x \right)\right) \left(\frac{d}{d x}F \left(x \right)\right),\left(\frac{d^{2}}{d x^{2}}F \left(x \right)\right)^{2},\frac{d^{3}}{d x^{3}}F \left(x \right)\]
[50]:
seq(AnsatzDalg:-deltakdiff(F(x),x,3,j),j=0..10)
[50]:
\[1,F \left(x \right),F \left(x \right)^{2},F \left(x \right)^{3},\frac{d}{d x}F \left(x \right),\left(\frac{d}{d x}F \left(x \right)\right) F \left(x \right),\left(\frac{d}{d x}F \left(x \right)\right) F \left(x \right)^{2},\left(\frac{d}{d x}F \left(x \right)\right)^{2},\left(\frac{d}{d x}F \left(x \right)\right)^{2} F \left(x \right),\left(\frac{d}{d x}F \left(x \right)\right)^{3},\frac{d^{2}}{d x^{2}}F \left(x \right)\]
[51]:
seq(AnsatzDalg:-deltakdiff(F(x),x,4,j),j=0..10)
[51]:
\[1,F \left(x \right),F \left(x \right)^{2},F \left(x \right)^{3},F \left(x \right)^{4},\frac{d}{d x}F \left(x \right),\left(\frac{d}{d x}F \left(x \right)\right) F \left(x \right),\left(\frac{d}{d x}F \left(x \right)\right) F \left(x \right)^{2},\left(\frac{d}{d x}F \left(x \right)\right) F \left(x \right)^{3},\left(\frac{d}{d x}F \left(x \right)\right)^{2},\left(\frac{d}{d x}F \left(x \right)\right)^{2} F \left(x \right)\]
[ ]: