This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Differential Elimination and Algebraic Invariants of Polynomial Dynamical Systems

William Simmons [email protected] André Platzer [email protected] High Assurance Solutions group, Two Six Technologies, Arlington, USA Computer Science Department, Carnegie Mellon University, Pittsburgh, USA Department of Informatics, Karlsruhe Institute of Technology, Karlsruhe, Germany
Abstract

Invariant sets are a key ingredient for verifying safety and other properties of cyber-physical systems that mix discrete and continuous dynamics. We adapt the elimination-theoretic Rosenfeld-Gröbner algorithm to systematically obtain algebraic invariants of polynomial dynamical systems without using Gröbner bases or quantifier elimination. We identify totally real varieties as an important class for efficient invariance checking.

keywords:
algebraic invariants , algebraic varieties , elimination theory , differential algebra , polynomial dynamical systems , Rosenfeld-Gröbner algorithm , characteristic set , Gröbner basis , totally real varieties , computational complexity

1 Introduction

Computers are increasingly hitting the road, taking to the skies, and interacting with people and the physical environment in unprecedented ways. Engineering concerns like realistic models and reliable sensors are critical, but just as important are the complex mathematical problems that lie at the heart of making cyber-physical systems (CPS) safe [1, 2]. One of these central problems is computing invariant sets [3] of continuous dynamical systems (Section 2.3), where an invariant set is a collection of states from which any trajectory starting in the set will never leave. Given a system of ordinary differential equations (ODEs) and a set of unsafe states, we must identify initial states that will never lead to an unsafe state under the specified dynamics. If an invariant does not intersect the unsafe set, then every state in the invariant set is a safe starting point. Beyond safety [4], invariant reasoning is an important part of other significant properties like stability [5] and liveness [6]. Due to its significance, the problem of invariant generation for ODEs has received substantial interest [7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22] and even has a dedicated tool [23], but most methods have nontrivial heuristic search parts.

In this article we employ strategies from elimination theory [24] to give new algorithms for systematically generating invariants and checking candidates for invariance. Elimination theory draws on algebra, geometry, and logic to give algorithmic procedures for understanding the polynomial systems that arise in many applications. In a narrow sense, elimination is the process of exposing explicit relationships and removing variables. The prototypical example of an elimination method is Gaussian elimination, which converts a system of linear equations into a simpler system with the same solutions from which those solutions can be read off easily. However, linear algebraic equations are merely the tip of the iceberg. Crucially, many elimination tools are extremely general. They apply to nonlinear problems of diverse forms, allowing an unusual degree of reuse across theories and applications. In this paper, our problems require methods for symbolically analyzing systems of ODEs that have real algebraic [25] constraints; i.e., are defined by polynomial equations over the real numbers (Section 2.3). In recent decades, researchers in differential algebra [26] have extended classical algebraic elimination methods to polynomial differential equations (Section 2.4). Broadly speaking, differential elimination [27] provides tools for finding all relations implied by a polynomial differential system, regardless of the form. The elimination procedures we develop in Sections 3 and 4 are intrinsically mathematical, but we show that the output corresponds directly to invariants of the input system, giving a novel, complementary view on systematically computing and checking ODE invariants.

As always, there are trade-offs involved. Elimination methods are exact, general and remarkably versatile, but used naively they can have high theoretical and practical costs [28]. We emphasize alternatives within elimination theory that have better computational complexity than standard choices.For example, characteristic sets [29] carry less information than the more ubiquitous Gröbner bases [30] but they have singly exponential complexity [31] in the number of variables instead of Gröbner bases’ doubly exponential growth [32]. We work extensively with regular systems (Section 2.6), a weak form of characteristic sets with lower complexity. Similarly, real number solutions are the main goal in applications, but obtaining them is often significantly more expensive than working over the complex numbers [33, 34]. We give a promising workaround that can equivalently replace real algebraic computation with more efficient complex111Ironically, computation over complex-valued structures is often less complex than over real-valued structures. alternatives in many situations (Sections 2.2 and 4.4).

Computation is our main motivation for restricting to polynomial differential and algebraic equations. Such equations are general [4], already powerful for applications [35] and undecidability typically ensues when we leave the polynomial setting [36].

Structure of the Paper

Section 2 reviews the algebraic geometry and differential algebra used to rigorously justify our results in Sections 3 and 4. If we do not have a reference at hand or the proof is short, we provide a proof without claiming originality.

Most of the material in Section 2 is standard and is self-contained assuming familiarity with basic linear algebra and multivariate calculus. That said, the ideas are nontrivial and, depending on background, readers may need to study most or all of Section 2 in order to fully understand the new results and proofs in Sections 3 and 4. However, skimming Section 2 for notation and definitions should provide a good initial picture even without carefully reading Section 2.

Sections 3 and 4 are the heart of the paper. In Section 3 the main contributions are Theorems 86 and 88. Theorem 86 identifies a novel sufficient condition for a system (A=0,S0)(A=0,S\neq 0) of polynomial equations and inequations to implicitly determine an invariant. Theorem 88 gives multiple criteria, frequently met in practice, that allow (A=0,S0)(A=0,S\neq 0) to define the associated invariant more explicitly. A detailed example (Section 3.3) illustrates the necessary computations while postponing a full explanation until Section 4.2.

Section 4.1 introduces 𝚁𝙶𝙰o{\tt RGA}_{o}, our new variant of the Rosenfeld-Gröbner algorithm (RGA) of Boulier et al. [37]. 𝚁𝙶𝙰o{\tt RGA}_{o} takes in a system of ordinary differential equations 𝐱=𝐟(𝐱)\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x}) and polynomial equations A=0A=0 and systematically extracts a structured, maximal invariant satisfying the equations. In particular, Theorem 98 shows that 𝚁𝙶𝙰o{\tt RGA}_{o} produces output that meets the requirements of Theorem 86 for an invariant. Section 4.2 revisits the example of Section 3.3 in the context of RGA. In Section 4.3 we analyze the computational complexity of 𝚁𝙶𝙰o{\tt RGA}_{o} and find an explicit upper bound (Theorem 109) on the degrees of polynomials in the output. (Prior works on RGA have either ignored complexity or only found bounds on the order of intermediate differential equations.)Our focus in Section 4.4 is a simple and efficient—compared to standard methods from the literature—test for invariance (Theorem 112) based on totally real varieties. These geometric objects provide a bridge that lets us draw conclusions about real number solutions using tools that are naturally suited to the complex numbers with their computational advantages.

Section 5 compares and contrasts 𝚁𝙶𝙰o{\tt RGA}_{o} with related approaches for generating and checking invariants. Finally, Section 6 summarizes our contributions and outlines promising future research questions.

2 Mathematical Background

2.1 Ideals and Varieties

We work extensively with multivariate polynomials over various fields [38] like the rational numbers \mathbb{Q}, the real numbers \mathbb{R}, and the complex numbers \mathbb{C}. We often write KK or LL for an unspecified field. (A field is essentially a set equipped with some “addition” and “multiplication” operations that satisfy the usual properties of arithmetic in ,\mathbb{Q},\mathbb{R}, or \mathbb{C}. In particular, we have the ability to divide by nonzero elements.) In Section 2.4 we consider differential fields, which are fields having additional structure inspired by calculus. We sometimes restrict to polynomials over the real or complex numbers even when results apply more generally. The fact that \mathbb{R} has an ordering (given by the usual << relation) is important, but we try to work algebraically as much as possible (in which case \mathbb{C} is particularly convenient.) Occasionally we use the Euclidean metric properties of \mathbb{R} and \mathbb{C} [39].

Unless indicated otherwise, we use nn for the number of variables and write 𝐱\mathbf{x} for the nn-tuple (x1,x2,,xn)(x_{1},x_{2},\ldots,x_{n}); then the polynomial ring K[𝐱]K[\mathbf{x}] is the set of all polynomials in variables x1,x2,,xnx_{1},x_{2},\ldots,x_{n} over field KK. We denote by KnK^{n} the collection of all nn-tuples of elements from KK.

2.1.1 Ideals

Definition 1.

Let KK be a field. If IK[𝐱]I\subseteq K[\mathbf{x}], 0I0\in I, and p+qI,gpIp+q\in I,gp\in I for all p,qIp,q\in I and gK[𝐱]g\in K[\mathbf{x}], then we say II is an ideal of K[𝐱]K[\mathbf{x}] and write IK[𝐱]I\unlhd K[\mathbf{x}]. If IK[𝐱]I\unlhd K[\mathbf{x}] and IK[𝐱]I\neq K[\mathbf{x}], we call II a proper ideal and write IK[𝐱]I\lhd K[\mathbf{x}].

If AK[𝐱]A\subseteq K[\mathbf{x}], then the collection of all finite sums igipi\sum_{i}g_{i}p_{i}, where piAp_{i}\in A and gig_{i} is any polynomial in K[𝐱]K[\mathbf{x}], is the ideal generated by AA in K[𝐱]K[\mathbf{x}]. We write (A)K(A)_{K} or just (A)(A) to denote this ideal of K[𝐱]K[\mathbf{x}].

Our interest in ideals comes from the fact that they correspond to systems of polynomial equations. If pIp\in I, we associate pp with the equation p=0p=0. The definition of an ideal mirrors the behavior of polynomial equation solutions: given 𝐚Kn\mathbf{a}\in K^{n}, if pp and qq are simultaneously 0 when evaluated at 𝐚\mathbf{a}, then p(𝐚)+q(𝐚)p(\mathbf{a})+q(\mathbf{a}) and g(𝐚)p(𝐚)g(\mathbf{a})p(\mathbf{a}) are also 0 for any gK[𝐱]g\in K[\mathbf{x}].

Note that (A)(A) is the minimal ideal of K[𝐱]K[\mathbf{x}] containing AA. Elements of an ideal are linear combinations of generators of the ideal, although the “coefficients” multiplied by the generators are arbitrary polynomials over KK, not necessarily elements of KK.

Even though nonzero ideals in K[𝐱]K[\mathbf{x}] are infinite, they can always be represented in a finite way:

Theorem 2 (Hilbert’s basis theorem [30, Thm. 4, p. 77]).

Let KK be a field. Every ideal in the multivariate polynomial ring K[𝐱]K[\mathbf{x}] is finitely generated (has a finite generating set).

We generally rely on context to indicate the polynomial ring of which II or (A)(A) is an ideal (namely, the ring mentioned whenever the ideal’s name is introduced), but we use the following notation when changing fields:

Notation 3.

Let KLK\subseteq L be fields and let IK[𝐱]I\unlhd K[\mathbf{x}]. We write ILI_{L} for the ideal generated by II in L[𝐱]L[\mathbf{x}].

For instance, if (A)KK[𝐱](A)_{K}\unlhd K[\mathbf{x}], then (A)L(A)_{L} is the ideal generated by AA (or equivalently by (A)K(A)_{K}) in L[𝐱]L[\mathbf{x}].

Lemma 4.

Let KLK\subseteq L be fields. If pK[𝐱]p\in K[\mathbf{x}] and pILp\in I_{L} for IK[𝐱]I\unlhd K[\mathbf{x}], then pIp\in I.

Proof.

This is immediate from the definition of ideal membership and the linear algebra fact that linear equations with coefficients from a field KK are solvable in KK if and only if they are solvable in the extension LL. ∎

Two types of ideals play a particularly fundamental role in relating geometry (specifically, solution sets of polynomial equations) to algebra.

Definition 5.

A prime ideal PK[𝐱]P\lhd K[\mathbf{x}] is a proper ideal such that for all p,qK[𝐱]p,q\in K[\mathbf{x}] for which pqPpq\in P, either pPp\in P or qPq\in P.

A radical ideal IK[𝐱]I\unlhd K[\mathbf{x}] has the property that for all pK[𝐱]p\in K[\mathbf{x}] such that pNIp^{N}\in I for some natural number NN, already pIp\in I. The radical I\sqrt{I} of an arbitrary ideal II is the intersection of all radical ideals containing II.

The radical I\sqrt{I} is a radical ideal and consists precisely of those polynomials pp such that pNIp^{N}\in I for some NN. Ideal II is radical if and only if I=II=\sqrt{I}. Prime ideals are radical, but not necessarily vice versa (for instance, (xy)[x,y](xy)\subseteq\mathbb{R}[x,y] is radical but not prime).

2.1.2 Algebraic Varieties and Constructible Sets

Sets definable by polynomial equations, as well as the corresponding ideals, are central players in our work:

Definition 6.

Let KK be a field, AK[𝐱]A\subseteq K[\mathbf{x}], and XKnX\subseteq K^{n}. The zero set of AA, denoted 𝐕K(A)\mathbf{V}_{K}(A), is the set of all 𝐚Kn\mathbf{a}\in K^{n} such that f(𝐚)=0f(\mathbf{a})=0 for all fAf\in A. If X=𝐕K(B)X=\mathbf{V}_{K}(B) for some BK[𝐱]B\subseteq K[\mathbf{x}], we call XX a variety, algebraic set, or Zariski closed set over KK. We refer to subsets of XX that are themselves zero sets of polynomials in K[𝐱]K[\mathbf{x}] as subvarieties, algebraic subsets, or Zariski closed subsets over KK.

Even if XX is not algebraic, we define the vanishing ideal of XX, denoted 𝐈K(X)\mathbf{I}_{K}(X), to be the collection of all gK[𝐱]g\in K[\mathbf{x}] such that g(𝐛)=0g(\mathbf{b})=0 for all 𝐛X\mathbf{b}\in X. (Note that 𝐈K(X)\mathbf{I}_{K}(X) is a radical ideal.) If KK is understood from context, we may write 𝐕(A)\mathbf{V}(A) or 𝐈(X)\mathbf{I}(X) for the zero set and vanishing ideal, respectively. If AA contains only one polynomial pp, we write 𝐕(p)\mathbf{V}(p) instead of 𝐕(A)\mathbf{V}(A).

Example 7.

Trivial examples of algebraic sets are the empty set and all of KnK^{n}. A more interesting example is 𝐕K(det(𝐱))Kn2\mathbf{V}_{K}(\text{det}(\mathbf{x}))\subseteq K^{n^{2}}, where det(𝐚)\text{det}(\mathbf{a}) is the determinant of the n×nn\times n matrix corresponding to 𝐚Kn2\mathbf{a}\in K^{n^{2}}. The points of 𝐕K(det(𝐱))\mathbf{V}_{K}(\text{det}(\mathbf{x})) represent singular matrices.

Lemma 8 ([30, Thm. 15, p. 196]).

Let KK be a field and let I,JK[𝐱]I,J\unlhd K[\mathbf{x}]. Then 𝐕K(IJ)=𝐕K(I)𝐕K(J)\mathbf{V}_{K}(I\cap J)=\mathbf{V}_{K}(I)\cup\mathbf{V}_{K}(J).

Lemma 9 ([30, Thm. 7(ii), p. 183]; Table 1).

Let KK be a field and AK[𝐱]A\subseteq K[\mathbf{x}]. Then 𝐕(𝐈(𝐕(A)))=𝐕(A)\mathbf{V}(\mathbf{I}(\mathbf{V}(A)))=\mathbf{V}(A).

Remark 10.

Lemma 9 suggests an inverse relationship between 𝐕\mathbf{V} and 𝐈\mathbf{I}. A deeper companion result that fills out this intuition is Hilbert’s Nullstellensatz (Theorem 20). We will review several similar results involving various fields (,,\mathbb{R},\mathbb{C}, and differential fields (Section 2.4)), so for convenience we list all of them in Table 1 on p. 1. (The table is referenced prior to the statement of each such theorem.) These theorems are instances of Galois connections [40, 41].

Table 1: Summary of Galois connection theorems
Any field KK: (Lemma 9) Let AK[𝐱]A\subseteq K[\mathbf{x}]. Then 𝐕(𝐈(𝐕(A)))=𝐕(A)\mathbf{V}(\mathbf{I}(\mathbf{V}(A)))=\mathbf{V}(A). (Lemma 15) An algebraic variety XX over KK is irreducible if and only if its vanishing ideal 𝐈K(X)\mathbf{I}_{K}(X) is a prime ideal. \mathbb{C} (or any algebraically closed field): (Theorem 20, Hilbert’s Nullstellensatz) Polynomial p[𝐱]p\in\mathbb{C}[\mathbf{x}] vanishes at every point in the complex zero set of I[𝐱]I\unlhd\mathbb{C}[\mathbf{x}] if and only if pIp\in\sqrt{I}. (Corollary 25, complex algebra-geometry dictionary) Let A,B[𝐱]A,B\subseteq\mathbb{C}[\mathbf{x}]. Then 𝐕(A)𝐕(B)\mathbf{V}_{\mathbb{C}}(A)\subseteq\mathbf{V}_{\mathbb{C}}(B) if and only if (A)(B)\sqrt{(A)}\supseteq\sqrt{(B)}. (Theorem 29, Hilbert’s Nichtnullstellensatz) Let A[𝐱]A\subseteq\mathbb{C}[\mathbf{x}], and let 0S[𝐱]0\notin S\subseteq\mathbb{C}[\mathbf{x}] be finite. A polynomial p[𝐱]p\in\mathbb{C}[\mathbf{x}] vanishes at every complex solution of (A=0,S0)(A=0,S\neq 0) if and only if p(A):Sp\in\sqrt{{(A)}:S^{\infty}}. \mathbb{R} (or any real closed field [25]): (Theorem 24, real Nullstellensatz) Polynomial p[𝐱]p\in\mathbb{R}[\mathbf{x}] vanishes at every point in the real zero set of I[𝐱]I\unlhd\mathbb{R}[\mathbf{x}] if and only if pIp\in\sqrt[\mathbb{R}]{I}. (Corollary 25, real algebra-geometry dictionary) Let A,B[𝐱]A,B\subseteq\mathbb{R}[\mathbf{x}]. Then 𝐕(A)𝐕(B)\mathbf{V}_{\mathbb{R}}(A)\subseteq\mathbf{V}_{\mathbb{R}}(B) if and only if (A)(B)\sqrt[\mathbb{R}]{(A)}\supseteq\sqrt[\mathbb{R}]{(B)}. Any differential field K (characteristic 0): (Theorem 61, differential Nullstellensatz) Given AK{𝐱}A\subseteq{K}\{\mathbf{x}\}, a differential polynomial pK{𝐱}p\in{K}\{\mathbf{x}\} vanishes at every point of 𝐕K,δ(A)\mathbf{V}_{K,\delta}(A) if and only if p[A]p\in\sqrt{[A]}. (Corollary 62, differential algebra-geometry dictionary) Let A,BK{𝐱}A,B\subseteq{K}\{\mathbf{x}\}. Then 𝐕K,δ(A)𝐕K,δ(B)\mathbf{V}_{K,\delta}(A)\subseteq\mathbf{V}_{K,\delta}(B) if and only if [A][B]\sqrt{[A]}\supseteq\sqrt{[B]}. (Theorem 63, differential Nichtnullstellensatz) Let AK{𝐱}A\subseteq{K}\{\mathbf{x}\}, and let 0SK{𝐱}0\notin S\subseteq{K}\{\mathbf{x}\} be finite. A differential polynomial pK{𝐱}p\in{K}\{\mathbf{x}\} vanishes at every solution of (A=0,S0)(A=0,S\neq 0) in every differential extension field of KK if and only if p[A]:Sp\in\sqrt{{[A]}:S^{\infty}}.

Complements of algebraic sets (i.e., points not satisfying certain polynomial equations) are also important for our results in Sections 3 and 4.

Definition 11.

Let KK be a field. KK-constructible sets are Boolean combinations (i.e., complements, finite intersections, and finite unions) of Zariski closed sets over KK. We write constructible sets if KK is understood.

A typical example of a constructible set that might not be an algebraic set is the set difference XYX\setminus Y of two algebraic sets X,YX,Y. However, finite unions and arbitrary intersections of algebraic sets are still algebraic [42, p. 24]. Said differently, Zariski open sets (complements of Zariski closed sets) form a topology on KnK^{n}.

2.1.3 Zariski Closure

Even if a constructible set is not algebraic, it can be augmented to one that is equivalent from the perspective of polynomial equations.

Definition 12.

Let KK be a field. Given a set XKnX\subseteq K^{n}, the intersection of all Zariski closed sets over KK that contain XX is the Zariski closure of XX over KK. We denote the Zariski closure by X¯K{\overline{X}}^{{K}}, or simply X¯{\overline{X}} if KK is understood.

Being an intersection of Zariski closed sets, the Zariski closure is itself a Zariski closed set. As suggested above, the Zariski closure is the best algebraic overapproximation (using coefficients from KK) to the original set. In particular, two sets having the same Zariski closure are indistinguishable using polynomial equations. (For a more precise statement, see Lemma 17.)

Over \mathbb{R} or \mathbb{C}, Zariski open sets form a topology that is coarser than the usual Euclidean topology. That is, Zariski open sets are Euclidean open, but not necessarily vice versa (for instance, the open interval (0,1)1(0,1)\subseteq\mathbb{R}^{1} is Euclidean open but not Zariski open because its complement is not the set of roots of a univariate polynomial). However, the following is true:

Lemma 13.

Real (respectively, complex) Zariski-closed sets are closed in the real (respectively, complex) Euclidean topology, and the real (respectively, complex) Zariski closure of a real (respectively, complex) constructible set is the real (respectively, complex) Euclidean closure of the set.

Proof.

See [43, Cor. 4.20]. The cited proof shows that the complex Euclidean closure of the image of a complex variety under a polynomial map equals the complex Zariski closure of the image, but the constructible set version (real or complex) reduces to that result. (Overview of the idea: Use the identity map. Since the complex Euclidean and Zariski closures are equal by [43, Cor. 4.20], it now suffices to show i) the real Zariski closure is the restriction of the complex Zariski closure to n\mathbb{R}^{n}, and ii) likewise for the real versus the complex Euclidean topologies. Claim i) is Lemma 19, which is not dependent on the current lemma. Claim ii) is immediate using the Euclidean metric on n\mathbb{R}^{n} and n\mathbb{C}^{n}.)∎

To distinguish between the Zariski and the Euclidean closures of a set XX over \mathbb{R} or \mathbb{C}, we write X¯-euc\overline{X}^{\mathbb{R}\text{-euc}} or X¯-euc\overline{X}^{\mathbb{C}\text{-euc}} for the Euclidean closures.

Definition 14.

Let KK be a field and X,YKnX,Y\subseteq K^{n} where YY is Zariski closed over KK. We say that XX is KK-Zariski dense (or just Zariski dense) in YY if Y=X¯KY={\overline{X}}^{{K}}.

Here the difference between the Zariski and Euclidean topologies is evident: for instance, \mathbb{R} is \mathbb{C}-Zariski dense in \mathbb{C} (because the only univariate polynomial with infinitely many roots is 0) but \mathbb{R} is not dense in \mathbb{C} with respect to the Euclidean topology since points of \mathbb{C}\setminus\mathbb{R} are not limit points of \mathbb{R}. This does not violate Lemma 13 because \mathbb{R} is not a \mathbb{C}-constructible set.

The next lemma concerns irreducible algebraic sets, i.e., algebraic sets over a field KK that are not the union of two smaller algebraic subsets over KK.

Lemma 15 ([42, p. 35]; Table 1).

An algebraic variety XX over KK is irreducible if and only if its vanishing ideal 𝐈K(X)\mathbf{I}_{K}(X) is a prime ideal.

A typical example is an algebraic set defined by a single polynomial that is irreducible in K[𝐱]K[\mathbf{x}]. Some authors require an algebraic set to be irreducible to qualify for the name “variety”, but we do not impose that restriction.

Lemma 16.

Let KK be a field and let X,YKnX,Y\subseteq K^{n} be Zariski closed sets. If XX is irreducible over KK and XYX\setminus Y is nonempty, then XY¯K=X\overline{X\setminus Y}^{K}=X.

Proof.

If XY¯K\overline{X\setminus Y}^{K} were not all of XX, then XY¯K(XY)\overline{X\setminus Y}^{K}\cup(X\cap Y) would be a decomposition of XX that contradicts irreducibility. ∎

Lemma 17.

Let KK be a field.

  1. 1.

    If XKnX\subseteq K^{n} and pK[𝐱]p\in K[\mathbf{x}], then pp vanishes at every point of XX if and only if pp vanishes at every point of the Zariski closure X¯K\overline{X}^{K} of XX; i.e., 𝐈K(X)=𝐈K(X¯K)\mathbf{I}_{K}(X)=\mathbf{I}_{K}(\overline{X}^{K}).

  2. 2.

    Given X,YKnX,Y\subseteq K^{n}, we have X¯K=Y¯K\overline{X}^{K}=\overline{Y}^{K} if and only 𝐈K(X)=𝐈K(Y)\mathbf{I}_{K}(X)=\mathbf{I}_{K}(Y).

Proof.

1. In both cases 𝐕K(p)\mathbf{V}_{K}(p) is a Zariski-closed set containing XX.

2. If X¯K=Y¯K\overline{X}^{K}=\overline{Y}^{K}, then 𝐈K(X)=𝐈K(X¯K)=𝐈K(Y¯K)=𝐈K(Y)\mathbf{I}_{K}(X)=\mathbf{I}_{K}(\overline{X}^{K})=\mathbf{I}_{K}(\overline{Y}^{K})=\mathbf{I}_{K}(Y) by 1. Conversely, suppose 𝐈K(X)=𝐈K(Y)\mathbf{I}_{K}(X)=\mathbf{I}_{K}(Y). Then similarly 𝐈K(X¯K)=𝐈K(Y¯K)\mathbf{I}_{K}(\overline{X}^{K})=\mathbf{I}_{K}(\overline{Y}^{K}) by 1. Since X¯K\overline{X}^{K},Y¯K\overline{Y}^{K} are Zariski closed, we have X¯K=𝐕K(𝐈K(X¯K))=𝐕K(𝐈K(Y¯K))=Y¯K\overline{X}^{K}=\mathbf{V}_{K}(\mathbf{I}_{K}(\overline{X}^{K}))=\mathbf{V}_{K}(\mathbf{I}_{K}(\overline{Y}^{K}))=\overline{Y}^{K} by Lemma 9. ∎

Definition 18.

Let KLK\subseteq L be fields and let YLnY\subseteq L^{n}. We call YKnY\cap K^{n} the KK-points of YY or the restriction of YY to KnK^{n}. We denote this set by Y(K)Y(K).

Lemma 19.

Let XnX\subseteq\mathbb{R}^{n}. Then the real Zariski closure X¯\overline{X}^{\mathbb{R}} equals X¯n\overline{X}^{\mathbb{C}}\cap\mathbb{R}^{n}, the restriction of the complex Zariski closure to the reals.

Proof.

\subseteq: We must show that X¯n\overline{X}^{\mathbb{C}}\cap\mathbb{R}^{n} contains XX and is real Zariski closed. Containment of XX is clear. For real Zariski closedness, note that X¯n\overline{X}^{\mathbb{C}}\cap\mathbb{R}^{n} is the zero set of the real and imaginary parts of the defining polynomials of X¯\overline{X}^{\mathbb{C}}. (That is, suppose X¯=𝐕(A)\overline{X}^{\mathbb{C}}=\mathbf{V}_{\mathbb{C}}(A) for some A[𝐱]A\subseteq\mathbb{C}[\mathbf{x}]. For all pAp\in A, distribute over the real and imaginary parts of each monomial’s coefficient to write p=p1+ip2p=p_{1}+ip_{2} where p1,p2[𝐱]p_{1},p_{2}\in\mathbb{R}[\mathbf{x}]. We only care about real solutions 𝐚n\mathbf{a}\in\mathbb{R}^{n} here, so p(𝐚)=0p(\mathbf{a})=0 if and only if p1(𝐚)=p2(𝐚)=0p_{1}(\mathbf{a})=p_{2}(\mathbf{a})=0.)

\supseteq: We must show that X¯n\overline{X}^{\mathbb{C}}\cap\mathbb{R}^{n} is contained in every real Zariski closed set YY that contains XX. Observe that 𝐕(𝐈(Y))\mathbf{V}_{\mathbb{C}}(\mathbf{I}_{\mathbb{R}}(Y)) is a complex Zariski closed set containing YY and thus XX. Then X¯𝐕(𝐈(Y))\overline{X}^{\mathbb{C}}\subseteq\mathbf{V}_{\mathbb{C}}(\mathbf{I}_{\mathbb{R}}(Y)) and so X¯n𝐕(𝐈(Y))n=𝐕(𝐈(Y))=Y\overline{X}^{\mathbb{C}}\cap\mathbb{R}^{n}\subseteq\mathbf{V}_{\mathbb{C}}(\mathbf{I}_{\mathbb{R}}(Y))\cap\mathbb{R}^{n}=\mathbf{V}_{\mathbb{R}}(\mathbf{I}_{\mathbb{R}}(Y))=Y, with the last equality following from Lemma 9. ∎

2.1.4 The Nullstellensatz: Connecting geometry and algebra

The following well-known result is fundamental for going back and forth between varieties and ideals over \mathbb{C}:

Theorem 20 (Hilbert’s Nullstellensatz [30, Thm. 2, p. 179]; Table 1).

Polynomial p[𝐱]p\in\mathbb{C}[\mathbf{x}] vanishes at every point in the complex zero set of I[𝐱]I\unlhd\mathbb{C}[\mathbf{x}] if and only if pIp\in\sqrt{I}. Equivalently, 𝐈(𝐕(I))=I\mathbf{I}_{\mathbb{C}}(\mathbf{V}_{\mathbb{C}}(I))=\sqrt{I} for I[𝐱]I\unlhd\mathbb{C}[\mathbf{x}].

Real algebraic geometry requires a more refined (but computationally less tractable) notion than the radical, the real radical:

Definition 21.

Let I[𝐱]I\unlhd\mathbb{R}[\mathbf{x}]. The real radical I\sqrt[\mathbb{R}]{I} of II is the set of all polynomials p[𝐱]p\in\mathbb{R}[\mathbf{x}] such that for some natural number mm and polynomials g1,g2,,gs[𝐱]g_{1},g_{2},\ldots,g_{s}\in\mathbb{R}[\mathbf{x}], the sum p2m+g12+g22++gs2p^{2m}+g_{1}^{2}+g_{2}^{2}+\cdots+g_{s}^{2} belongs to II.

Remark 22.

An expression of the form g12+g22++gs2g_{1}^{2}+g_{2}^{2}+\cdots+g_{s}^{2} is a sum-of-squares. Sums-of-squares are important for real algebraic geometry because g(𝐱)=(g1(𝐱))2+(g2(𝐱))2++(gs(𝐱))2g(\mathbf{x})=(g_{1}(\mathbf{x}))^{2}+(g_{2}(\mathbf{x}))^{2}+\cdots+(g_{s}(\mathbf{x}))^{2} is zero at 𝐚n\mathbf{a}\in\mathbb{R}^{n} if and only if gi(𝐚)=0g_{i}(\mathbf{a})=0 for all 1is1\leq i\leq s.

The following straightforward properties follow immediately from the definitions and Remark 22. We may use them without comment but record them here for completeness.

Proposition 23.

ghost

  1. 1.

    If I[𝐱]I\unlhd\mathbb{R}[\mathbf{x}], then I\sqrt[\mathbb{R}]{I} is a radical ideal that contains I\sqrt{I} (possibly strictly) .

  2. 2.

    If I[𝐱]I\unlhd\mathbb{C}[\mathbf{x}] (respectively, [𝐱]\mathbb{R}[\mathbf{x}]), then I=I\sqrt{\sqrt{I}}=\sqrt{I} (respectively, I=I\sqrt[\mathbb{R}]{\sqrt[\mathbb{R}]{I}}=\sqrt[\mathbb{R}]{I} and I=I\sqrt[\mathbb{R}]{\sqrt{I}}=\sqrt[\mathbb{R}]{I}).

  3. 3.

    If I,J[𝐱]I,J\unlhd\,\mathbb{C}[\mathbf{x}] (respectively, [𝐱]\mathbb{R}[\mathbf{x}]) and IJII\subseteq J\subseteq\sqrt{I} (respectively, I\sqrt[\mathbb{R}]{I}), then

    1. (a)

      J=I\sqrt{J}=\sqrt{I} (respectively, J=I\sqrt[\mathbb{R}]{J}=\sqrt[\mathbb{R}]{I}) and

    2. (b)

      𝐕(I)=𝐕(J)=𝐕(I)\mathbf{V}_{\mathbb{C}}(I)=\mathbf{V}_{\mathbb{C}}(J)=\mathbf{V}_{\mathbb{C}}(\sqrt{I}) (respectively, 𝐕(I)=𝐕(J)=𝐕(I)\mathbf{V}_{\mathbb{R}}(I)=\mathbf{V}_{\mathbb{R}}(J)=\mathbf{V}_{\mathbb{R}}(\sqrt[\mathbb{R}]{I})).

A much deeper result known as the real Nullstellensatz tells us that I\sqrt[\mathbb{R}]{I} is the largest collection of polynomials over \mathbb{R} that has the same real zero set as II:

Theorem 24 (Real Nullstellensatz [25, Cor. 4.1.8]; Table 1).

Polynomial p[𝐱]p\in\mathbb{R}[\mathbf{x}] vanishes at every point in the real zero set of I[𝐱]I\unlhd\mathbb{R}[\mathbf{x}] if and only if pIp\in\sqrt[\mathbb{R}]{I}. Equivalently, 𝐈(𝐕(I))=I\mathbf{I}_{\mathbb{R}}(\mathbf{V}_{\mathbb{R}}(I))=\sqrt[\mathbb{R}]{I} for I[𝐱]I\unlhd\mathbb{R}[\mathbf{x}].

With the Nullstellensatz and real Nullstellensatz, we may give an “algebra-geometry dictionary” connecting ideals and algebraic sets :

Corollary 25 (Algebra-geometry dictionary [30, Thm. 7, p. 183]; Table 1).

Let A,B[𝐱]A,B\subseteq\mathbb{C}[\mathbf{x}] (respectively, [𝐱]\mathbb{R}[\mathbf{x}]). Then 𝐕(A)𝐕(B)\mathbf{V}_{\mathbb{C}}(A)\subseteq\mathbf{V}_{\mathbb{C}}(B) (respectively, 𝐕(A)𝐕(B)\mathbf{V}_{\mathbb{R}}(A)\subseteq\mathbf{V}_{\mathbb{R}}(B)) if and only if (A)(B)\sqrt{(A)}\supseteq\sqrt{(B)} (respectively, (A)(B)\sqrt[\mathbb{R}]{(A)}\supseteq\sqrt[\mathbb{R}]{(B)}).

The cited result only deals with the complex case, but the argument is identical given the real Nullstellensatz in place of the Nullstellensatz.

2.1.5 Inequations and Saturation

Just as the definition of an ideal corresponds to the behavior of equations, we need an operation on ideals that reflects the presence of inequations. Note that 101\neq 0 and if two polynomials g,hg,h are not 0 at some point, then ghgh is not zero at the point either. These simple observations motivate the saturation of an ideal by a multiplicative set:

Definition 26.

Let KK be a field. A subset SS of K[𝐱]K[\mathbf{x}] is a multiplicative set if 1S,0S1\in S,0\notin S, and ghSgh\in S for all g,hSg,h\in S. If IK[𝐱]I\unlhd K[\mathbf{x}], the saturation of II by multiplicative set SS is the set of all pK[𝐱]p\in K[\mathbf{x}] such that for some sSs\in S we have spIsp\in I. We write I:SI:S^{\infty} to denote the saturation of II by SS.

We think of the elements of II as equations and the elements of SS as inequations; i.e., for all pIp\in I and gSg\in S we include p(𝐱)=0,g(𝐱)0p(\mathbf{x})=0,g(\mathbf{x})\neq 0 in the system of simultaneous equations and inequations. Lemma 28 (2) makes this interpretation precise. The superscript \infty in the notation refers to the fact that SS is closed under multiplication and typically the elements of SS are arbitrary products of some finite subset of elements.

Note that the saturation I:S{I}:S^{\infty} is an ideal containing II and equals the entire polynomial ring if and only if SS contains some element of II.

Usually the saturation adds to or “saturates” II with new elements, but sometimes the ideal is unchanged:

Lemma 27.

If II is a prime ideal containing no element of SS, then I:S=I{I}:S^{\infty}=I.

Proof.

\subseteq: By definition we have spIsp\in I for some sSs\in S if pI:Sp\in{I}:S^{\infty}, but for II prime either ss or pp must then belong to II. If IS=I\cap S=\emptyset, then pIp\in I.

\supseteq: Immediate. ∎

We make the convention that if 0SK[𝐱]0\notin S\subseteq K[\mathbf{x}], then by I:SI:S^{\infty} we mean the saturation of II by the multiplicative set generated by SS (i.e., the set containing 11 and every finite product of elements from SS). When we write I:SI:S^{\infty} we automatically assume that IK[𝐱]I\unlhd K[\mathbf{x}] even if we do not explicitly state this. Note that if S=S=\emptyset, then I:S=I:{1}=I{I}:S^{\infty}={I}:\{1\}^{\infty}=I.

Our main interest is the case where S={s1,s2,,sm}S=\{s_{1},s_{2},\ldots,s_{m}\} is finite. In this case it is equivalent to saturate by the single element defined by the product of the sjs_{j}. Let ΠS:=jsj=s1s2sm\mathrm{\Pi}S:=\prod_{j}s_{j}=s_{1}s_{2}\cdots s_{m}. We write I:(ΠS){I}:(\mathrm{\Pi}S)^{\infty} to denote the saturation of II by the multiplicative set {1,ΠS,(ΠS)2,(ΠS)3,}\{1,\mathrm{\Pi}S,(\mathrm{\Pi}S)^{2},(\mathrm{\Pi}S)^{3},\ldots\} that is generated by the single element ΠS\mathrm{\Pi}S (note that ΠS\mathrm{\Pi}S is not 0 because 0S0\notin S).

The solution set 𝐕(I)𝐕(ΠS)\mathbf{V}(I)\setminus\mathbf{V}(\mathrm{\Pi}S) (points that make all elements of II, but no elements of SS, vanish) is closely related to I:S{I}:S^{\infty}. The following lemma will help prove our central results in Section 3 by making the connection between saturation ideals, equations, and inequations (and hence constructible sets):

Lemma 28.

Let I[𝐱]I\,\unlhd\,\mathbb{C}[\mathbf{x}] and let 0S[𝐱]0\notin S\subseteq\mathbb{C}[\mathbf{x}] be finite. Then

  1. 1.

    I:S=I:(ΠS){I}:S^{\infty}={I}:(\mathrm{\Pi}S)^{\infty} and

  2. 2.

    𝐕(I:S)=𝐕(I:(ΠS))=𝐕(I)𝐕(ΠS)¯\mathbf{V}_{\mathbb{C}}(I:S^{\infty})=\mathbf{V}_{\mathbb{C}}({I}:(\mathrm{\Pi}S)^{\infty})=\overline{\mathbf{V}_{\mathbb{C}}(I)\setminus\mathbf{V}_{\mathbb{C}}(\mathrm{\Pi}S)}^{\mathbb{C}}.

Proof.
  1. 1.

    \subseteq: If pI:Sp\in{I}:S^{\infty}, then (s1k1s2k2smkm)pI(s_{1}^{k_{1}}s_{2}^{k_{2}}\cdots s_{m}^{k_{m}})p\in I for some sjSs_{j}\in S and kj0k_{j}\geq 0. Multiplying by appropriate powers of the sjs_{j} to equalize the exponents, we see that (ΠS)max{k1,,km}pI(\mathrm{\Pi}S)^{max\{k_{1},\ldots,k_{m}\}}p\in I (recall that ideals are closed under multiplication by anything). Hence pI:(ΠS)p\in{I}:(\mathrm{\Pi}S)^{\infty}.

    \supseteq: This direction holds because ΠS\mathrm{\Pi}S is in the multiplicative set generated by SS.

  2. 2.

    Part 1 implies the first equality. For the last equality:

    \subseteq: Let 𝐚𝐕(I:(ΠS))\mathbf{a}\in\mathbf{V}_{\mathbb{C}}({I}:(\mathrm{\Pi}S)^{\infty}). By definition of Zariski closure, it suffices to show that q(𝐚)=0q(\mathbf{a})=0 for every q[𝐱]q\in\mathbb{C}[\mathbf{x}] that vanishes everywhere on 𝐕(I)𝐕(ΠS)\mathbf{V}_{\mathbb{C}}(I)\setminus\mathbf{V}_{\mathbb{C}}(\mathrm{\Pi}S).

    We claim that qI:(ΠS)q\in\sqrt{{I}:(\mathrm{\Pi}S)^{\infty}}. This is equivalent to (ΠS)qI(\mathrm{\Pi}S)q\in\sqrt{I}. (By definition, qI:(ΠS)q\in\sqrt{{I}:(\mathrm{\Pi}S)^{\infty}} means that (ΠS)MqNI(\mathrm{\Pi}S)^{M}q^{N}\in I for some natural numbers M,NM,N. Multiplying by appropriate powers of ΠS\mathrm{\Pi}S and qq as in the proof of part 1, we have ((ΠS)q)max{M,N}I((\mathrm{\Pi}S)q)^{max\{M,N\}}\in I, whence (ΠS)qI(\mathrm{\Pi}S)q\in\sqrt{I}.) By the Nullstellensatz (Theorem 20), we must prove that (ΠS)q(\mathrm{\Pi}S)q vanishes at every point of 𝐕(I)\mathbf{V}_{\mathbb{C}}(I). But this is true since qq vanishes everywhere on 𝐕(I)\mathbf{V}_{\mathbb{C}}(I) except possibly at some points of 𝐕(ΠS)\mathbf{V}_{\mathbb{C}}(\mathrm{\Pi}S) (where ΠS\mathrm{\Pi}S vanishes by definition). Hence qI:(ΠS)q\in\sqrt{{I}:(\mathrm{\Pi}S)^{\infty}} and so q(𝐚)=0q(\mathbf{a})=0.

    \supseteq: Since 𝐕(I:(ΠS))\mathbf{V}_{\mathbb{C}}(I:(\mathrm{\Pi}S)^{\infty}) is \mathbb{C}-Zariski closed, it already contains 𝐕(I)𝐕(ΠS)¯\overline{\mathbf{V}_{\mathbb{C}}(I)\setminus\mathbf{V}_{\mathbb{C}}(\mathrm{\Pi}S)}^{\mathbb{C}} if 𝐕(I:(ΠS))\mathbf{V}_{\mathbb{C}}(I:(\mathrm{\Pi}S)^{\infty}) contains the smaller set 𝐕(I)𝐕(ΠS)\mathbf{V}_{\mathbb{C}}(I)\setminus\mathbf{V}_{\mathbb{C}}(\mathrm{\Pi}S). Hence we only need to show that p(𝐛)=0p(\mathbf{b})=0 for every pI:(ΠS)p\in{I}:(\mathrm{\Pi}S)^{\infty} and 𝐛𝐕(I)𝐕(ΠS)\mathbf{b}\in\mathbf{V}_{\mathbb{C}}(I)\setminus\mathbf{V}_{\mathbb{C}}(\mathrm{\Pi}S). This holds because (ΠS)MpI(\mathrm{\Pi}S)^{M}p\in I for some MM and so ((ΠS)Mp)(𝐛)=0((\mathrm{\Pi}S)^{M}p)(\mathbf{b})=0; we have (ΠS)(𝐛)0(\mathrm{\Pi}S)(\mathbf{b})\neq 0 by assumption, so it must be that p(𝐛)=0p(\mathbf{b})=0.

Lemma 28 (1) holds for any field. In Lemma 28 (2) we work over \mathbb{C} because the proof uses the Nullstellensatz. The algebraic version of Lemma 28 (2) is:

Theorem 29 (Hilbert’s Nichtnullstellensatz; Table 1).

Let A[𝐱]A\subseteq\mathbb{C}[\mathbf{x}], and let 0S[𝐱]0\notin S\subseteq\mathbb{C}[\mathbf{x}] be finite. A polynomial p[𝐱]p\in\mathbb{C}[\mathbf{x}] vanishes at every complex solution of (A=0,S0)(A=0,S\neq 0) if and only if p(A):Sp\in\sqrt{{(A)}:S^{\infty}}.

Proof.

The ()(\subseteq) case in the proof of Lemma 28 (2) (in particular, the argument there showing qI:(ΠS)q\in\sqrt{{I}:(\mathrm{\Pi}S)^{\infty}}) establishes that vanishing at every complex solution of (A=0,S0A=0,S\neq 0) implies membership in (A):S\sqrt{{(A)}:S^{\infty}}.

For the other direction, if p(A):Sp\in\sqrt{{(A)}:S^{\infty}}, then pN(A):Sp^{N}\in{(A)}:S^{\infty} for some natural number NN. Substitute this pNp^{N} for the pp that appears in the proof of the ()(\supseteq) case in Lemma 28 (2). Follow the argument given there to show that pNp^{N}, and hence pp, vanishes at every complex solution 𝐛\mathbf{b} of (A=0,S0)(A=0,S\neq 0). ∎

The next result will help prove correctness (Theorem 93) of an important elimination algorithm in Section 4.

Theorem 30 (Splitting, algebraic case [44, Cor. 5]).

Let A[𝐱]A\subseteq\mathbb{C}[\mathbf{x}], and let 0S[𝐱]0\notin S\subseteq\mathbb{C}[\mathbf{x}] be finite. If h[𝐱]{0}h\in\mathbb{C}[\mathbf{x}]\setminus\{0\}, then

(A):S=(A,h):S(A):(S{h}).\sqrt{{(A)}:S^{\infty}}=\sqrt{{(A,h)}:S^{\infty}}\cap\sqrt{{(A)}:(S\cup\{h\})^{\infty}}.
Proof.

The claim follows from Theorem 29 and the fact that every point either makes hh vanish or not. ∎

In Section 3 we will need the following fact about zero sets of saturations and extending ideals of [𝐱]\mathbb{R}[\mathbf{x}] to [𝐱]\mathbb{C}[\mathbf{x}]:

Lemma 31.

For I[𝐱]I\unlhd\mathbb{R}[\mathbf{x}] and multiplicative set S[𝐱]S\subseteq\mathbb{R}[\mathbf{x}], 𝐕(I:S)n=𝐕(I:S)n\mathbf{V}_{\mathbb{C}}(I_{\mathbb{C}}:S^{\infty})\cap\mathbb{R}^{n}=\mathbf{V}_{\mathbb{C}}(I:S^{\infty})\cap\mathbb{R}^{n}.

Proof.

\subseteq: Clear because I:SI:SI:S^{\infty}\subseteq I_{\mathbb{C}}:S^{\infty}.

\supseteq: Assume 𝐚𝐕(I:S)n\mathbf{a}\in\mathbf{V}_{\mathbb{C}}(I:S^{\infty})\cap\mathbb{R}^{n} and pI:Sp\in I_{\mathbb{C}}:S^{\infty}. Note that the real and imaginary parts of pp both belong to I:SI:S^{\infty}. Hence both vanish at 𝐚\mathbf{a} and p(𝐚)=0p(\mathbf{a})=0 as needed. ∎

2.2 Totally Real Varieties: Keeping complex things real

As suggested earlier, real radicals are usually considered computationally intractable [34, 33]. A recurring theme of our work in Sections 3 and 4 is that we can sometimes circumvent the complications of real algebraic geometry by working over \mathbb{C}. For instance, we would like to use, without loss of precision, complex radical ideals instead of unwieldy real radical ideals. The following is an important condition that, if satisfied, makes this possible.

Definition 32.

Let XnX\subseteq\mathbb{C}^{n} be a complex variety that is defined over \mathbb{R}. (That is, X=𝐕(A)X=\mathbf{V}_{\mathbb{C}}(A) for some A[𝐱]A\subseteq\mathbb{R}[\mathbf{x}].) We say XX is totally real if the real points of XX are \mathbb{C}-Zariski dense in XX; i.e., X()¯=Xn¯=X\overline{X(\mathbb{R})}^{\mathbb{C}}={\overline{X\cap\mathbb{R}^{n}}}^{{\mathbb{C}}}=X.

The key intuition about a totally real variety XX is that it has “enough real points” for the real variety X()X(\mathbb{R}) to closely resemble XX. More precisely, the real points are not contained in a proper complex subvariety of XX and in that sense are algebraically indistinguishable from the strictly complex points. Proposition 38 below characterizes this phenomenon in terms of dimension. If XX is totally real, we can often transfer simpler proofs or more efficient algorithms for XX to the real variety X()X(\mathbb{R}) [45].

The following fact illustrates that being totally real allows us to replace real radicals with complex radical ideals:

Proposition 33 ([46]).

(A)[𝐱](A)\unlhd\mathbb{R}[\mathbf{x}] is real radical (i.e.,(A)=(A)\sqrt[\mathbb{R}]{(A)}=(A)) if and only if (A)(A) is radical and 𝐕(A)\mathbf{V}_{\mathbb{C}}(A) is totally real.

We need an alternative characterization that is more amenable to computation. To state it, we require the notions of irreducible component, dimension of a variety, and nonsingular point.

Definition 34.

Let XnX\subseteq\mathbb{C}^{n} be a complex variety (not necessarily defined over \mathbb{R}). An irreducible component YY of XX is a maximal irreducible complex subvariety of XX (i.e., YY is not strictly contained in any irreducible complex subvariety of XX).

Example 35.

The complex variety 𝐕(x2+y2)=𝐕((x+iy)(xiy))\mathbf{V}_{\mathbb{C}}(x^{2}+y^{2})=\mathbf{V}_{\mathbb{C}}((x+iy)(x-iy)) is not irreducible, but it has two irreducible components defined by x+iy=0x+iy=0 and xiy=0x-iy=0 (these are lines in 2\mathbb{C}^{2}).

Definition 36.

Let XnX\subseteq\mathbb{C}^{n} be a nonempty complex variety, and let 𝐚X\mathbf{a}\in X. We define the (complex) dimension of XX at 𝐚\mathbf{a} (written dim𝐚(X)\text{dim}_{\mathbf{a}}(X)) to be dd if i) there are distinct irreducible complex subvarieties X1,,XdX_{1},\ldots,X_{d} of XX such that {𝐚}X1Xd\{\mathbf{a}\}\subsetneq X_{1}\subsetneq\cdots\subsetneq X_{d} and ii) this is the longest such sequence of subvarieties in XX. If there is no such X1X_{1}, we define dim𝐚(X)\text{dim}_{\mathbf{a}}(X) to be 0. The dimension of XX is the maximal dimension of XX at any of its points.

By the correspondence between prime ideals and irreducible varieties, this definition is equivalent to the maximal length of a chain of prime ideals in the coordinate ring of the variety (the quotient of [𝐱]\mathbb{C}[\mathbf{x}] by the ideal of all polynomials in [𝐱]\mathbb{C}[\mathbf{x}] that vanish at every complex point of the variety; this ideal is radical) [42, p. 25]. This version is often referred to as the Krull dimension.

Example 37.

If X={𝐚1,,𝐚m}X=\{\mathbf{a}_{1},\ldots,\mathbf{a}_{m}\} is finite, where 𝐚in\mathbf{a}_{i}\in\mathbb{C}^{n}, then dim𝐚i(X)=0\text{dim}_{\mathbf{a}_{i}}(X)=0. If X=𝐕(p)X=\mathbf{V}_{\mathbb{C}}(p) for some non-constant polynomial p[𝐱]p\in\mathbb{C}[\mathbf{x}], then dim𝐚(X)=n1\text{dim}_{\mathbf{\mathbf{a}}}(X)=n-1 at all points of XX. The dimension of n\mathbb{C}^{n} at any point is n.n.

If a variety is reducible, then different components can have different dimensions. For instance, X=𝐕(x(yz),y(yz))3X=\mathbf{V}_{\mathbb{C}}(x(y-z),y(y-z))\subseteq\mathbb{C}^{3} is a union of a line (x=y=0x=y=0, dimension 1) and a plane (yz=0y-z=0, dimension 2). At the intersection point (0,0,0)(0,0,0), XX has dimension 2.

The same definitions are used, mutatis mutandis, for the real dimension of a real variety [25, Def. 2.8.1]; we just replace n\mathbb{C}^{n} with n\mathbb{R}^{n} and “complex” with “real” in Definition 36. For the prime ideal/Krull dimension version, we use the real coordinate ring (the quotient of [𝐱]\mathbb{R}[\mathbf{x}] by all polynomials over \mathbb{R} that vanish at the real points of the variety; this ideal is real radical and not just radical). The real dimension could be smaller than the complex if the variety is not totally real (see Example 42), but not otherwise:

Proposition 38 ([47, Thm. 12.6.1 (3)][48, Thm. 2.4]).

Let XnX\subseteq\mathbb{C}^{n} be an irreducible complex variety defined over \mathbb{R}. Then XX is totally real if and only if the real dimension of XX equals the complex dimension.

Whether or not this happens is determined by nonsingular points.

Definition 39.

Let X=𝐕(A)X=\mathbf{V}_{\mathbb{C}}(A) where A={p1,p2,,ps}[𝐱]A=\{p_{1},p_{2},\ldots,p_{s}\}\subseteq\mathbb{C}[\mathbf{x}] and (A)(A) is a radical ideal; recall |𝐱|=n|\mathbf{x}|=n. The Jacobian matrix corresponding to AA is the s×ns\times n-matrix JA:=[pixj]J_{A}:=\left[\frac{\partial p_{i}}{\partial x_{j}}\right] whose ijij-th entry is the formal partial derivative of polynomial pip_{i} with respect to variable xjx_{j}. We say 𝐚X\mathbf{a}\in X is a nonsingular point of the variety XX if the matrix JA(𝐚)J_{A}(\mathbf{a}) (that is, JAJ_{A} with 𝐚\mathbf{a} substituted for 𝐱\mathbf{x}) has rank equal to ndim𝐚(X)n-\text{dim}_{\mathbf{\mathbf{a}}}(X). (In other words, there is a maximal choice of ndim𝐚(X)n-\text{dim}_{\mathbf{\mathbf{a}}}(X) rows of JA(𝐚)J_{A}(\mathbf{a}) that form a linearly independent set of \mathbb{C}-vectors in n\mathbb{C}^{n}.) Otherwise we say 𝐚\mathbf{a} is a singular point of XX.

If X=𝐕(A1)=𝐕(A2)X=\mathbf{V}_{\mathbb{C}}(A_{1})=\mathbf{V}_{\mathbb{C}}(A_{2}) and both (A1)(A_{1}) and (A2)(A_{2}) are radical, then nonsingularity of 𝐚X\mathbf{a}\in X is independent of the choice of A1A_{1} or A2A_{2} in the sense that JA1(𝐚)J_{A_{1}}(\mathbf{a}) and JA2(𝐚)J_{A_{2}}(\mathbf{a}) have the same rank. This follows from the Nullstellensatz (which implies in our case that (A1)=(A2)=𝐈(X))(A_{1})=(A_{2})=\mathbf{I}_{\mathbb{C}}(X)) and [49, Thm. 5.1, p. 32].

Example 40.

Suppose X=𝐕(p)X=\mathbf{V}_{\mathbb{C}}(p) for some square-free (has no repeated factors) p[𝐱]p\in\mathbb{C}[\mathbf{x}]; then (p)(p) is radical. Moreover, matrix J{p}(𝐚)J_{\{p\}}(\mathbf{a}) has the form [px1(𝐚),,pxn(𝐚)]\left[\frac{\partial p}{\partial x_{1}}(\mathbf{a}),\ldots,\frac{\partial p}{\partial x_{n}}(\mathbf{a})\right] and either has rank 0 (if all pxi\frac{\partial p}{\partial x_{i}} vanish at 𝐚\mathbf{a}; then 𝐚\mathbf{a} is singular) or rank 1=n(n1)=ndim𝐚(X)1=n-(n-1)=n-\text{dim}_{\mathbf{\mathbf{a}}}(X) (in which case 𝐚\mathbf{a} is a nonsingular point of XX).

While the definition is technical, the intuitive picture is simpler: at a nonsingular point the variety looks “smooth”, while at a singular point we find cusps/sharp corners, self-intersections, etc. For instance, points in the intersection of two irreducible components are always singular [42, Thm. 2.9]. Importantly, smooth points give us a characterization of totally real varieties that we can calculate with:

Proposition 41 ([47, Thm. 12.6.1 (4)][50, p. 736]).

Let XnX\subseteq\mathbb{C}^{n} be a complex variety defined over \mathbb{R}. Then XX is totally real if and only if every irreducible component of XX contains a nonsingular real point of XX.

In light of Proposition 38, the equivalence given by Proposition 41 is not surprising because the real dimension of a variety (defined over \mathbb{R}) at a smooth real point is the same as the complex dimension [51, p. 185].

Decomposition into irreducible components [52] and finding smooth points [48] are both well-studied (albeit computationally intensive) problems in algorithmic algebraic geometry, so we can decide if any given complex variety is totally real.

Example 42.

As a simple example, the complex variety defined by x2+y2=0x^{2}+y^{2}=0 is not totally real because the lone real point (0,0)(0,0) is singular, being the intersection of two complex lines x+iy=0,xiy=0x+iy=0,x-iy=0 (the irreducible components of 𝐕(x2+y2)\mathbf{V}_{\mathbb{C}}(x^{2}+y^{2})). Alternatively, the partial derivatives 2x2x and 2y2y vanish simultaneously at (0,0)(0,0); note that x2+y2x^{2}+y^{2} is square-free so (x2+y2)(x^{2}+y^{2}) is radical. Nevertheless, the equations x=0,y=0x=0,y=0 define the same real points and the corresponding singleton set {(0,0)}\{(0,0)\} is a totally real complex variety (see Proposition 43). In terms of dimension, all this happens because 𝐕(x2+y2)\mathbf{V}_{\mathbb{R}}(x^{2}+y^{2}) has real dimension 0 but 𝐕(x2+y2)\mathbf{V}_{\mathbb{C}}(x^{2}+y^{2}) has complex dimension 1. We give further examples in Section 3.

In general, totally real varieties contain non-real points as well; the definition only requires that the complex solutions to the defining equations form the smallest algebraic set containing all the real solutions.

The next result shows more generally than Example 42 that being totally real depends on the complex variety and not only on the set of real points.

Proposition 43.

For any A[𝐱]A\subseteq\mathbb{R}[\mathbf{x}], there exists a finite set B[𝐱]B\subseteq\mathbb{R}[\mathbf{x}] such that 𝐕(B)\mathbf{V}_{\mathbb{C}}(B) is totally real and 𝐕(A)=𝐕(B)\mathbf{V}_{\mathbb{R}}(A)=\mathbf{V}_{\mathbb{R}}(B).

Proof.

By Hilbert’s basis theorem there is a finite generating set BB of (A)\sqrt[\mathbb{R}]{(A)}, the real radical of the ideal generated by AA. The definition of the real radical implies that 𝐕(A)=𝐕((A))=𝐕(B)\mathbf{V}_{\mathbb{R}}(A)=\mathbf{V}_{\mathbb{R}}(\sqrt[\mathbb{R}]{(A)})=\mathbf{V}_{\mathbb{R}}(B).

To show that 𝐕(B)\mathbf{V}_{\mathbb{C}}(B) is totally real, we must establish 𝐕(B)¯=𝐕(B){\overline{\mathbf{V}_{\mathbb{R}}(B)}}^{{\mathbb{C}}}=\mathbf{V}_{\mathbb{C}}(B). By Lemma 17 (2) it suffices to show that any p[𝐱]p\in\mathbb{C}[\mathbf{x}] that vanishes everywhere on 𝐕(B)\mathbf{V}_{\mathbb{R}}(B) also vanishes on 𝐕(B)\mathbf{V}_{\mathbb{C}}(B) (i.e, 𝐈(𝐕(B))𝐈(𝐕(B))\mathbf{I}_{\mathbb{C}}(\mathbf{V}_{\mathbb{R}}(B))\subseteq\mathbf{I}_{\mathbb{C}}(\mathbf{V}_{\mathbb{C}}(B)); the reverse containment is immediate). Splitting p=p1+ip2p=p_{1}+ip_{2} into real and imaginary parts (see the proof of Lemma 19), it follows from the real Nullstellensatz (Theorem 24) that both p1,p2p_{1},p_{2} vanish everywhere on 𝐕(B)\mathbf{V}_{\mathbb{R}}(B) and so must belong to (B)=(B)\sqrt[\mathbb{R}]{(B)}=(B) (since (B)=(A)(B)=\sqrt[\mathbb{R}]{(A)} is real radical). Thus p1,p2p_{1},p_{2} (and consequently pp) vanish at each point of 𝐕(B)\mathbf{V}_{\mathbb{C}}(B).∎

Following up on Example 42, an illustration of Proposition 43 is A={x2+y2}A=\{x^{2}+y^{2}\} and B={x,y}B=\{x,y\}.

Proposition 43 shows that any real variety has a representation (i.e., some choice of defining polynomial equations) such that the corresponding complex variety is totally real. Theoretically, this suggests that we can always assume our real varieties are totally real as complex varieties. Computationally, though, this is a nontrivial assumption because it may require computing generators of the real radical to transform the representation if the original equations have “too many complex solutions”/define a complex variety that is not totally real.

However, in our experience most systems of polynomial equations over \mathbb{R} that arise from applications already define a totally real variety. Indeed, the only counterexamples we are aware of have the form 𝐕(p)\mathbf{V}_{\mathbb{C}}(p) where p[𝐱]p\in\mathbb{R}[\mathbf{x}] and p(𝐚)0p(\mathbf{a})\geq 0 for all 𝐚n\mathbf{a}\in\mathbb{R}^{n} (for instance, sums of squares like in Example 42). The property of being totally real is common and even appears to be the typical situation. Evidence of this is the following theorem, sometimes called the “sign-changing criterion” in the literature:

Theorem 44 ([47, Thm. 12.7.1]).

Let p[𝐱]p\in\mathbb{R}[\mathbf{x}] be irreducible. Then 𝐕(p)\mathbf{V}_{\mathbb{C}}(p) is totally real if and only if there exist 𝐚,𝐛n\mathbf{a},\mathbf{b}\in\mathbb{R}^{n} such that p(𝐚)>0p(\mathbf{a})>0 and p(𝐛)<0p(\mathbf{b})<0.

In Section 4.4 we discuss the intriguing relationship between this result and efficiently verifying algebraic invariants (Definition 48) of polynomial dynamical systems.

We extend the notion of totally real varieties to constructible sets. (We are not aware of this definition appearing in the literature, but it is only a minor generalization of the concept for varieties.) This will enable us to use results about saturation ideals over \mathbb{C} (in particular, Lemma 28 (2)) when handling inequations over \mathbb{R}.

Definition 45.

Let A,B[𝐱]A,B\subseteq\mathbb{R}[\mathbf{x}]. We say that the constructible set 𝐕(A)𝐕(B)\mathbf{V}_{\mathbb{C}}(A)\setminus\mathbf{V}_{\mathbb{C}}(B) is a totally real constructible set if 𝐕(A)𝐕(B)¯=𝐕(A)𝐕(B)¯\overline{\mathbf{V}_{\mathbb{C}}(A)\setminus\mathbf{V}_{\mathbb{C}}(B)}^{\mathbb{C}}=\overline{\mathbf{V}_{\mathbb{R}}(A)\setminus\mathbf{V}_{\mathbb{R}}(B)}^{\mathbb{C}} ; i.e., the real constructible set 𝐕(A)𝐕(B)\mathbf{V}_{\mathbb{R}}(A)\setminus\mathbf{V}_{\mathbb{R}}(B) is Zariski dense in 𝐕(A)𝐕(B)¯\overline{\mathbf{V}_{\mathbb{C}}(A)\setminus\mathbf{V}_{\mathbb{C}}(B)}^{\mathbb{C}}.

The main way to obtain a totally real constructible set is to take the set difference of a totally real variety with an arbitrary variety:

Lemma 46.

Let A,B[𝐱]A,B\subseteq\mathbb{R}[\mathbf{x}]. If 𝐕(A)\mathbf{V}_{\mathbb{C}}(A) is totally real, then 𝐕(A)𝐕(B)\mathbf{V}_{\mathbb{C}}(A)\setminus\mathbf{V}_{\mathbb{C}}(B) is a totally real constructible set.

Proof.

By Lemma 17 (2) it suffices to show that if p[𝐱]p\in\mathbb{C}[\mathbf{x}] vanishes on 𝐕(A)𝐕(B)\mathbf{V}_{\mathbb{R}}(A)\setminus\mathbf{V}_{\mathbb{R}}(B), then pp vanishes on 𝐕(A)𝐕(B)\mathbf{V}_{\mathbb{C}}(A)\setminus\mathbf{V}_{\mathbb{C}}(B). Let 𝐚𝐕(A)𝐕(B)\mathbf{a}\in\mathbf{V}_{\mathbb{C}}(A)\setminus\mathbf{V}_{\mathbb{C}}(B) with the goal of showing p(𝐚)=0p(\mathbf{a})=0. Note that for every qBq\in B the product pqpq vanishes on all of 𝐕(A)\mathbf{V}_{\mathbb{R}}(A) since pp vanishes on 𝐕(A)𝐕(B)\mathbf{V}_{\mathbb{R}}(A)\setminus\mathbf{V}_{\mathbb{R}}(B) and qq vanishes on 𝐕(B)\mathbf{V}_{\mathbb{R}}(B). It follows by Lemma 17 (1) that pqpq vanishes on 𝐕(A)\mathbf{V}_{\mathbb{C}}(A) because 𝐕(A)\mathbf{V}_{\mathbb{C}}(A) is totally real by assumption and so 𝐕(A)\mathbf{V}_{\mathbb{R}}(A) is Zariski dense in 𝐕(A)\mathbf{V}_{\mathbb{C}}(A). Since 𝐚𝐕(A)𝐕(B)\mathbf{a}\in\mathbf{V}_{\mathbb{C}}(A)\setminus\mathbf{V}_{\mathbb{C}}(B), we have q~(𝐚)0\tilde{q}(\mathbf{a})\neq 0 for some q~B\tilde{q}\in B. Thus p(𝐚)q~(𝐚)=0p(\mathbf{a})\tilde{q}(\mathbf{a})=0 and p(𝐚)=0p(\mathbf{a})=0 as needed. ∎

Totally real constructible sets play an important role in Theorem 88 (Section 3), where they give a simpler characterization of one of our main results (Theorem 86).

2.3 Lie Derivatives and Algebraic Invariants of Polynomial Vector Fields

A system of ODEs

𝐱=(x1,,xn)=(f1(x1,,xn),,fn(x1,,xn))=𝐟(𝐱)\mathbf{x^{\prime}}=(x_{1}^{\prime},\ldots,x_{n}^{\prime})=(f_{1}(x_{1},\ldots,x_{n}),\ldots,f_{n}(x_{1},\ldots,x_{n}))=\mathbf{f}(\mathbf{x})

defines a vector field 𝐅:nn\mathbf{F}:\mathbb{R}^{n}\rightarrow\mathbb{R}^{n} [53] that describes the motion of a hypothetical object moving according to the given differential equations. (In particular, 𝐅(𝐚)=𝐟(𝐚)=(f1(𝐚),,fn(𝐚))\mathbf{F}(\mathbf{a})=\mathbf{f}(\mathbf{a})=(f_{1}(\mathbf{a}),\ldots,f_{n}(\mathbf{a})) is the velocity vector at 𝐚n\mathbf{a}\in\mathbb{R}^{n}.) Abusing terminology, we also refer to the corresponding system 𝐱=𝐟(𝐱)\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x}) as a vector field. In this paper we assume that the fif_{i} are multivariate polynomials over \mathbb{R}, so 𝐱=𝐟(𝐱)\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x}) satisfies the Picard-Lindelöf existence and uniqueness theorem for ODEs at all points of n\mathbb{R}^{n} [54, Thm. 10.VI]. We write 𝐱𝐟(𝐱)\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x}) for the set {x1f1(𝐱),,xnfn(𝐱)}\{x_{1}^{\prime}-f_{1}(\mathbf{x}),\ldots,x_{n}^{\prime}-f_{n}(\mathbf{x})\}.

The rate of change of a function p:np:\mathbb{R}^{n}\rightarrow\mathbb{R} along vector 𝐅(𝐱)\mathbf{F}(\mathbf{x}) is given by the Lie derivative 𝐅(p)\mathcal{L}_{\mathbf{F}}(p) of pp with respect to 𝐅\mathbf{F} at 𝐱\mathbf{x}:

𝐅(p)(𝐱):=p𝐅(𝐱)=i=1n(pxi(𝐱))fi(𝐱).\mathcal{L}_{\mathbf{F}}(p)(\mathbf{x}):=\nabla p\boldsymbol{\cdot}\mathbf{F}(\mathbf{x})=\sum_{i=1}^{n}\left(\frac{\partial p}{\partial x_{i}}(\mathbf{x})\right)f_{i}(\mathbf{x}).

We repeat the procedure on 𝐅(p)\mathcal{L}_{\mathbf{F}}(p) to get higher-order Lie derivatives 𝐅(2)(p)\mathcal{L}_{\mathbf{F}}^{(2)}(p), 𝐅(3)(p),\mathcal{L}_{\mathbf{F}}^{(3)}(p),\ldots (take 𝐅(0)(p)\mathcal{L}_{\mathbf{F}}^{(0)}(p) to be pp and 𝐅(n+1)(p)\mathcal{L}_{\mathbf{F}}^{(n+1)}(p) to be 𝐅(𝐅(n)(p))\mathcal{L}_{\mathbf{F}}(\mathcal{L}_{\mathbf{F}}^{(n)}(p))).

To emphasize the particular ODEs, we sometimes write 𝐱=𝐟(𝐱)(p)\mathcal{L}_{\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x})}(p) instead of 𝐅(p)\mathcal{L}_{\mathbf{F}}(p). If the vector field 𝐅\mathbf{F} is understood, we simply write p˙\dot{p} for the Lie derivative 𝐅(p)\mathcal{L}_{\mathbf{F}}(p). As with 𝐅\mathbf{F}, we only consider p[𝐱]p\in\mathbb{R}[\mathbf{x}].

The following is straightforward:

Lemma 47.

Lie derivatives with respect to a vector field 𝐅\mathbf{F} obey the sum and product rules: 𝐅(p+q)=𝐅(p)+𝐅(q)\mathcal{L}_{\mathbf{F}}{(p+q)}=\mathcal{L}_{\mathbf{F}}(p)+\mathcal{L}_{\mathbf{F}}(q) and 𝐅(qp)=𝐅(q)p+q𝐅(p)\mathcal{L}_{\mathbf{F}}{(qp)}=\mathcal{L}_{\mathbf{F}}(q)p+q\mathcal{L}_{\mathbf{F}}(p).

Lie derivatives have a close relationship with invariant sets of a vector field 𝐅\mathbf{F}.

Definition 48.

Let 𝐅\mathbf{F} be a vector field on n\mathbb{R}^{n} defined by a system of ODEs 𝐱=𝐟(𝐱)\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x}). A subset XnX\subseteq\mathbb{R}^{n} is invariant with respect to 𝐅\mathbf{F} if for every 𝐱𝟎X\mathbf{x_{0}}\in X and solution φ𝐱0:Dn\varphi_{\mathbf{x}_{0}}:D\rightarrow\mathbb{R}^{n} to the initial value problem (𝐱=𝐟(𝐱),𝐱(0)=𝐱𝟎)(\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x}),\mathbf{x}(0)=\mathbf{x}_{\mathbf{0}}), we have φ𝐱𝟎(t)X\varphi_{\mathbf{x}_{\mathbf{0}}}(t)\in X for all t0t\geq 0 such that φ𝐱0\varphi_{\mathbf{x}_{0}} is defined. (DD could be a proper open subset of \mathbb{R} if φ𝐱𝟎\varphi_{\mathbf{x}_{\mathbf{0}}} does not exist for all time.)

Intuitively, if XX is invariant, then an object starting at any point of XX will remain in XX as the object follows the dynamics described by 𝐅\mathbf{F}. We restrict our focus to invariant sets that are real algebraic varieties. The following well-known result (Theorem 50) characterizes such invariant sets. Its statement uses Lie derivatives of all orders as well as the concept of invariant ideals. An ideal I[𝐱]I\unlhd\mathbb{R}[\mathbf{x}] is an invariant ideal with respect to 𝐅\mathbf{F} if for all pIp\in I, the Lie derivative 𝐅(p)\mathcal{L}_{\mathbf{F}}(p) belongs to II (i.e., II is closed under Lie differentiation, written 𝐅(I)={𝐅(p)pI}I\mathcal{L}_{\mathbf{F}}(I)=\{\mathcal{L}_{\mathbf{F}}(p)\mid p\in I\}\subseteq I).

Notation 49.

Given a subset A[𝐱]A\subseteq\mathbb{R}[\mathbf{x}] and polynomial vector field 𝐅\mathbf{F}, we write (𝐅(A))(\mathcal{L}^{*}_{\mathbf{F}}(A)) (or simply ((A))(\mathcal{L}^{*}(A)) if the vector field is understood) to denote the ideal (𝐅(k)(p)pA,k)[𝐱](\mathcal{L}_{\mathbf{F}}^{(k)}(p)\mid p\in A,k\in\mathbb{N})\,\unlhd\mathbb{R}[\mathbf{x}] generated by the collection of higher Lie derivatives 𝐅(k)(p)\mathcal{L}_{\mathbf{F}}^{(k)}(p) for all k0k\geq 0 and pAp\in A. (Note that (𝐅(A))(\mathcal{L}^{*}_{\mathbf{F}}(A)) is distinct from 𝐅(A)\mathcal{L}_{\mathbf{F}}(A), which is the set of first Lie derivatives of the elements of AA.)

Observe that (𝐅(A))(\mathcal{L}^{*}_{\mathbf{F}}(A)) is an invariant ideal of 𝐅\mathbf{F} by construction because the given generating set is closed under Lie differentiation with respect to 𝐅\mathbf{F}.

Theorem 50 (Characterization of algebraic invariants [33, Lemma 5][55, Lemma 2.1]).

Let 𝐅\mathbf{F} be a polynomial vector field and let XnX\subseteq\mathbb{R}^{n}. The following are equivalent:

  1. 1.

    XX is an algebraic invariant set of 𝐅\mathbf{F}.

  2. 2.

    For all p1,,pm[𝐱]p_{1},\ldots,p_{m}\in\mathbb{R}[\mathbf{x}] such that X=𝐕(p1,,pm)X=\mathbf{V}_{\mathbb{R}}(p_{1},\ldots,p_{m}), we have 𝐅(k)(pi)(𝐚)=0\mathcal{L}_{\mathbf{F}}^{(k)}(p_{i})(\mathbf{a})=0 for all k0k\geq 0, 1im1\leq i\leq m, and 𝐚X\mathbf{a}\in X.

  3. 3.

    There exists I[𝐱]I\unlhd\mathbb{R}[\mathbf{x}] such that X=𝐕(I)X=\mathbf{V}_{\mathbb{R}}(I) and II is an invariant ideal with respect to 𝐅\mathbf{F} (i.e., 𝐅(I)I\mathcal{L}_{\mathbf{F}}(I)\subseteq I).

Proof.

(1)(2)(1)\Rightarrow(2): Part (ii) of [55, Lemma 2.1] proves that if X=𝐕(p1,,pm)X=\mathbf{V}_{\mathbb{R}}(p_{1},\ldots,p_{m}) is invariant with respect to 𝐅\mathbf{F}, then 𝐅(pi)(p1,,pm)\mathcal{L}_{\mathbf{F}}(p_{i})\in\sqrt{(p_{1},\ldots,p_{m})} for 1im1\leq i\leq m. Hence 𝐅(pi)\mathcal{L}_{\mathbf{F}}(p_{i}) vanishes at every point of XX. Reapply part (ii) of [55, Lemma 2.1] to 𝐕(p1,,pm,\mathbf{V}_{\mathbb{R}}(p_{1},\ldots,p_{m}, 𝐅(p1),\mathcal{L}_{\mathbf{F}}(p_{1}), ,𝐅(pm))\ldots,\mathcal{L}_{\mathbf{F}}(p_{m})), which is still the same invariant XX. This shows that second-order Lie derivatives of the pip_{i} vanish on XX. Continue the process for any order kk. (See also [56, Thm. 1] for a variant of (1)(2)(1)\Leftrightarrow(2).)

(2)(3)(2)\Rightarrow(3): Assuming (2), if A={p1,,pm}A=\{p_{1},\ldots,p_{m}\} then we have 𝐕(p1,,pm)=𝐕((𝐅(A)))\mathbf{V}_{\mathbb{R}}(p_{1},\ldots,p_{m})=\mathbf{V}_{\mathbb{R}}((\mathcal{L}^{*}_{\mathbf{F}}(A))); as noted above, (𝐅(A))(\mathcal{L}^{*}_{\mathbf{F}}(A)) is an invariant ideal.

(1)(3)(1)\Leftrightarrow(3): This is precisely [33, Lemma 5]. ∎

Corollary 51.

Let 𝐅\mathbf{F} be a polynomial vector field and let X=𝐕(p1,,pm)X=\mathbf{V}_{\mathbb{R}}(p_{1},\ldots,p_{m}). If 𝐅(pi)(p1,,pm)\mathcal{L}_{\mathbf{F}}(p_{i})\in(p_{1},\ldots,p_{m}) for all 1im1\leq i\leq m, then XX is an algebraic invariant set of 𝐅\mathbf{F}.

Proof.

By the sum and product rules (Lemma 47), for I=(p1,,pm)I=(p_{1},\ldots,p_{m}) to be an invariant ideal (and hence satisfy statement 3 of Theorem 50) it suffices that the Lie derivatives of the generators p1,,pmp_{1},\ldots,p_{m} belong to II. ∎

The useful Lemma 52 and Proposition 53 below are probably folklore but we know of no specific references.

Lemma 52.

If I[𝐱]I\unlhd\mathbb{R}[\mathbf{x}] is an invariant ideal of 𝐅\mathbf{F}, then I\sqrt[\mathbb{R}]{I} is also an invariant ideal.

Proof.

We use all three equivalent statements in Theorem 50. Since II is an invariant ideal of 𝐅\mathbf{F}, we know X:=𝐕(I)X:=\mathbf{V}_{\mathbb{R}}(I) is an invariant set by (3)(1)(3)\Rightarrow(1) in Theorem 50. We have X=𝐕(I)X=\mathbf{V}_{\mathbb{R}}(\sqrt[\mathbb{R}]{I}) by Proposition 23 (3b). By Hilbert’s basis theorem (Theorem 2), there exist p1,,pm[𝐱]p_{1},\ldots,p_{m}\in\mathbb{R}[\mathbf{x}] that generate I\sqrt[\mathbb{R}]{I}. Since XX is invariant and X=𝐕(p1,,pm)X=\mathbf{V}_{\mathbb{R}}(p_{1},\ldots,p_{m}), (1)(2)(1)\Rightarrow(2) implies that 𝐅(k)(pi)(𝐚)=0\mathcal{L}_{\mathbf{F}}^{(k)}(p_{i})(\mathbf{a})=0 for all k0k\geq 0, 1im1\leq i\leq m, and 𝐚X\mathbf{a}\in X. By the real Nullstellensatz (Theorem 24), each order of Lie derivative 𝐅(k)(pi)\mathcal{L}_{\mathbf{F}}^{(k)}(p_{i}) belongs to (p1,,pm)=I\sqrt[\mathbb{R}]{(p_{1},\ldots,p_{m})}=\sqrt[\mathbb{R}]{\sqrt[\mathbb{R}]{I}} (since the pip_{i} generate I\sqrt[\mathbb{R}]{I}) =I=\sqrt[\mathbb{R}]{I} (Proposition 23 (2)). Hence 𝐅(I)I\mathcal{L}_{\mathbf{F}}(\sqrt[\mathbb{R}]{I})\subseteq\sqrt[\mathbb{R}]{I} as needed. ∎

Finally, we show that 𝐕(𝐅(A))\mathbf{V}_{\mathbb{R}}(\mathcal{L}^{*}_{\mathbf{F}}(A)) is the “largest” invariant contained in 𝐕(A)\mathbf{V}_{\mathbb{R}}(A):

Proposition 53.

Let A[𝐱]A\subseteq\mathbb{R}[\mathbf{x}] and let 𝐅\mathbf{F} be a polynomial vector field. The real variety 𝐕(𝐅(A))\mathbf{V}_{\mathbb{R}}(\mathcal{L}^{*}_{\mathbf{F}}(A)) is invariant with respect to 𝐅\mathbf{F}, is contained in 𝐕(A)\mathbf{V}_{\mathbb{R}}(A), and contains every invariant set XX of 𝐅\mathbf{F} such that X𝐕(A)X\subseteq\mathbf{V}_{\mathbb{R}}(A).

Proof.

The ideal (𝐅(A))(\mathcal{L}^{*}_{\mathbf{F}}(A)) is an invariant ideal, so 𝐕(𝐅(A))\mathbf{V}_{\mathbb{R}}(\mathcal{L}^{*}_{\mathbf{F}}(A)) is an invariant set by Theorem 50. We have 𝐕(𝐅(A))𝐕(A)\mathbf{V}_{\mathbb{R}}(\mathcal{L}^{*}_{\mathbf{F}}(A))\subseteq\mathbf{V}_{\mathbb{R}}(A) by Corollary 25 because A𝐅(A)A\subseteq\mathcal{L}^{*}_{\mathbf{F}}(A). For the last claim, by Theorem 50 there is an invariant ideal II such that X=𝐕(I)X=\mathbf{V}_{\mathbb{R}}(I). By Corollary 25, I(A)\sqrt[\mathbb{R}]{I}\supseteq\sqrt[\mathbb{R}]{(A)} since 𝐕(I)𝐕(A)\mathbf{V}_{\mathbb{R}}(I)\subseteq\mathbf{V}_{\mathbb{R}}(A). Note that I\sqrt[\mathbb{R}]{I} is invariant by Lemma 52 and that IA\sqrt[\mathbb{R}]{I}\supseteq A since (A)A\sqrt[\mathbb{R}]{(A)}\supseteq A. Because (𝐅(A))(\mathcal{L}^{*}_{\mathbf{F}}(A)) is contained in every invariant ideal containing AA, we have (𝐅(A))I(\mathcal{L}^{*}_{\mathbf{F}}(A))\subseteq\sqrt[\mathbb{R}]{I} and thus by Corollary 25 𝐕(𝐅(A))𝐕(I)=𝐕(I)=X\mathbf{V}_{\mathbb{R}}(\mathcal{L}^{*}_{\mathbf{F}}(A))\supseteq\mathbf{V}_{\mathbb{R}}(\sqrt[\mathbb{R}]{I})=\mathbf{V}_{\mathbb{R}}(I)=X. ∎

2.4 Differential Polynomial Rings and Differential Ideals

Differential algebra extends commutative algebra and algebraic geometry to settings that involve differentiation. This makes the theory a natural choice for exploring algebraic invariants of polynomial dynamical systems. In particular, differential elimination [27] is the algorithmic engine that powers our main results, Theorem 86 in Section 3 and Theorem 98 in Section 4.

Most of the following definitions and basic lemmas are found in standard references [57, 58].

Definition 54.

An (ordinary) differential field is a field KK equipped with a single derivation operator that satisfies (a+b)=a+b(a+b)^{\prime}=a^{\prime}+b^{\prime} and (ab)=ab+ab(ab)^{\prime}=a^{\prime}b+ab^{\prime} for all a,bKa,b\in K.

Examples are standard fields with the trivial zero derivation, the fraction field (x)\mathbb{Q}(x) of [x]\mathbb{Q}[x] with derivation given by the quotient rule, and the field of meromorphic functions (quotients of complex analytic functions) with the usual complex derivative [59]. Many of the definitions and results in Sections 2.4,2.5,and 2.6 apply to more general differential fields, but in this paper we restrict to ordinary differential fields of characteristic 0 (repeated addition of 11 never yields 0; equivalently, the field contains the rational numbers \mathbb{Q} as a subfield). Henceforth we simply refer to differential fields, with these restrictions being understood even if not stated explicitly. We generally leave the differential field unspecified and assume that it contains all the solutions that interest us (e.g., real analytic functions solving systems of ODEs with rational number coefficients).

Definition 55.

Let KK be a differential field and let xx be an indeterminate. The differential polynomial ring K{x}K\{x\} with differential indeterminate xx and coefficients KK is the polynomial ring K[x=x(0),x=x(1),,x(k),]K[x=x^{(0)},x^{\prime}=x^{(1)},\ldots,x^{(k)},\ldots] having infinitely many algebraic indeterminates (named in a suggestive way). The derivation on KK extends to all of K{x}K\{x\} by defining (x(k))=x(k+1)(x^{(k)})^{\prime}=x^{(k+1)}, (p+q)=p+q(p+q)^{\prime}=p^{\prime}+q^{\prime}, and (pq)=pq+pq(pq)^{\prime}=p^{\prime}q+pq^{\prime} for p,qK{x}p,q\in K\{x\}. We call x(k)x^{(k)} the kk-th derivative of xx. The largest such kk appearing for any variable in a differential polynomial is the order of the polynomial. If k1k\geq 1 we call x(k)x^{(k)} a proper derivative of xx. For uniformity we call x=x(0)x=x^{(0)} a derivative (just not a proper one.) Differential polynomial rings having several differential indeterminates (x1,x2,,xn)=𝐱(x_{1},x_{2},\ldots,x_{n})=\mathbf{x} are defined analogously and are denoted by K{𝐱}K\{\mathbf{x}\}. If an element pK{𝐱}p\in K\{\mathbf{x}\} has no proper derivatives of 𝐱\mathbf{x} (i.e., pK[𝐱]p\in K[\mathbf{x}]), we say pp is a nondifferential polynomial.

Intuitively, differential polynomials are standard polynomials except for the presence of variables representing “derivatives” of the (finitely many) differential indeterminates. For instance, x(y)3+(x′′)23x(y^{\prime})^{3}+(x^{\prime\prime})^{2}-3 is an order 2 differential polynomial of total degree 4 (from the term x(y)3x(y^{\prime})^{3}) in two differential variables x,yx,y.

The derivatives are formal and do not necessarily represent limits of difference quotients like in calculus; we only require that they obey the sum and product rules. However, just as we can substitute elements of a field for the variables of a nondifferential polynomial, we can substitute differentiable functions into a differential polynomial and treat as the usual analytic derivative. For example, p:=x′′+x{𝐱}p:=x^{\prime\prime}+x\in\mathbb{C}\{\mathbf{x}\} is a differential polynomial and sin:\sin:\mathbb{C}\rightarrow\mathbb{C} is an element of the differential field of complex meromorphic functions (which contains the elements of \mathbb{C} considered as constant functions). Substituting sin\sin for xx and interpreting as the usual complex derivative, we find that p(sin)=sin′′+sin=sin+sin=0p(\sin)=\sin^{\prime\prime}+\sin=-\sin+\sin=0, the zero function (which is the zero element in this differential field).

Note that p(sin)p^{\prime}(\sin) is also 0 : p=x′′′+xp^{\prime}=x^{\prime\prime\prime}+x^{\prime} and p(sin)=sin′′′+(sin)=cos+cos=0p^{\prime}(\sin)=\sin^{\prime\prime\prime}+(\sin)^{\prime}=-\cos+\cos=0. More generally, if 𝐚Kn\mathbf{a}\in K^{n} for differential field KK and qK{𝐱}q\in{K}\{\mathbf{x}\}, then q(𝐚)=(q(𝐚))q^{\prime}(\mathbf{a})=(q(\mathbf{a}))^{\prime}. For instance, q(𝐚)=0q(\mathbf{a})=0 implies q(𝐚)=0q^{\prime}(\mathbf{a})=0. Commutativity of differentiation and substitution is analogous to commutativity of polynomial addition and substitution; e.g., (r+s)(𝐚)=r(𝐚)+s(𝐚)(r+s)(\mathbf{a})=r(\mathbf{a})+s(\mathbf{a}).

2.4.1 Differential Ideals

Just as ideals give us an algebraic way to approach polynomial equations, differential ideals correspond to systems of polynomial differential equations.

Definition 56.

Let KK be a differential field. A differential ideal is an ideal IK{𝐱}I\unlhd{K}\{\mathbf{x}\} that is also closed under differentiation: pIp\in I implies pIp^{\prime}\in I. A radical differential ideal is a differential ideal that is also a radical ideal in K{𝐱}{K}\{\mathbf{x}\}.

Let AK{𝐱}A\subseteq K\{\mathbf{x}\}. We write [A]K[A]_{K} or just [A][A] to denote the differential ideal generated by AA in K{𝐱}K\{\mathbf{x}\}: the collection of all finite sums i,jgi,jpi(j)\sum_{i,j}g_{i,j}p_{i}^{(j)} where piAp_{i}\in A, pi(j)p_{i}^{(j)} is the jj-th derivative of pip_{i}, and gi,jK{𝐱}g_{i,j}\in K\{\mathbf{x}\} is any differential polynomial.

We write (A)K(A)_{K} or (A)(A) to denote the ideal generated by AA in K{𝐱}K\{\mathbf{x}\} viewed as a polynomial ring. (That is, (A)(A) consists of sums igipi\sum_{i}g_{i}p_{i} where piAp_{i}\in A and giK{𝐱}g_{i}\in K\{\mathbf{x}\} is any differential polynomial.) If there is risk of confusion, we specify whether (A)(A) is the ideal generated by AA in K{𝐱}{K}\{\mathbf{x}\} or in K[𝐱]K[\mathbf{x}], but context usually makes it clear (for instance, this could only be an issue if AK[𝐱]A\subseteq K[\mathbf{x}]).

The ideal (A)(A) is defined similarly to [A][A], except that in forming (A)(A) we do not allow differentiation of the elements of AA. Hence (A)[A](A)\subseteq[A] but generally (A)[A](A)\subsetneq[A]. Note that [A][A] is the minimal differential ideal containing AA.

We remark that invariant ideals with respect to a polynomial vector field 𝐅\mathbf{F} are essentially differential ideals in the sense of Definition 56 (the only difference being that [𝐱]\mathbb{R}[\mathbf{x}] is a polynomial ring and not a differential polynomial ring). By Lemma 47 (sum and product rule for the Lie derivative), the operator 𝐅:[𝐱][𝐱]\mathcal{L}_{\mathbf{F}}:\mathbb{R}[\mathbf{x}]\rightarrow\mathbb{R}[\mathbf{x}] is a derivation on the polynomial ring [𝐱]\mathbb{R}[\mathbf{x}]. Since 𝐅(I)I\mathcal{L}_{\mathbf{F}}(I)\subseteq I for an invariant ideal II, such an ideal is a differential ideal with respect to the derivation 𝐅\mathcal{L}_{\mathbf{F}}. See Lemma 66 for the converse relating a given differential ideal to an invariant ideal.

Radical differential ideals are theoretically and practically more tractable than general differential ideals. We need the following straightforward properties:

Lemma 57.

Let KK be a differential field and let IK{𝐱}I\unlhd K\{\mathbf{x}\} be a differential ideal.

  1. 1.

    The radical I\sqrt{I} of differential ideal II in K{𝐱}K\{\mathbf{x}\} is also a differential ideal.

  2. 2.

    IK[𝐱]=IK[𝐱]\sqrt{I\cap K[\mathbf{x}]}=\sqrt{I}\cap K[\mathbf{x}] as ideals in K[𝐱]K[\mathbf{x}].

Proof.
  1. 1.

    [59, Lemma 1.15].

  2. 2.

    Immediate from the definition of the radical of an ideal. Note that IK[𝐱]\sqrt{I\cap K[\mathbf{x}]} is the radical of IK[𝐱]I\cap K[\mathbf{x}] taken in K[𝐱]K[\mathbf{x}] while the I\sqrt{I} is the radical of II taken in K{𝐱}K\{\mathbf{x}\}.

Remark 58.

By Lemma 57 (1), the radical ideal [A]\sqrt{[A]} is a differential ideal and hence the smallest radical differential ideal containing AA. This radical differential ideal is often denoted by {A}\{A\} in the differential algebra literature. Because we work so often with finite sets containing differential polynomials, we do not follow this usage and by {p1,,pr}\{p_{1},\ldots,p_{r}\} we mean the set of differential polynomials with elements pip_{i}, not the radical differential ideal [p1,,pr]\sqrt{[p_{1},\ldots,p_{r}]}.

2.4.2 Differential Nullstellensatz and Differential Saturation Ideals

On the “geometric” side, we are interested in zero sets of collections of differential polynomials. In the differential setting, there is no specific field playing the role of \mathbb{C} that contains solutions to all polynomial differential equations with coefficients in the field. (Differentially closed fields [60], named in analogy to algebraically closed fields like \mathbb{C}, do exist but we do not explicitly need them in this paper. Moreover, there are no known natural examples.) Instead we use the following terminology and notation.

Definition 59.

Let KK be a differential field with A,BK{𝐱}A,B\subseteq{K}\{\mathbf{x}\}. Let LL be any differential field extending KK and let 𝐚Ln\mathbf{a}\in L^{n} satisfy p(𝐚)=0p(\mathbf{a})=0 for all pAp\in A. Then we say that 𝐚\mathbf{a} is a point (or element) of the differential zero set 𝐕K,δ(A)\mathbf{V}_{K,\delta}(A). (We write 𝐕δ(A)\mathbf{V}_{\delta}(A) if KK is understood.) If every point of 𝐕K,δ(A)\mathbf{V}_{K,\delta}(A) is also a point of 𝐕K,δ(B)\mathbf{V}_{K,\delta}(B), we write 𝐕K,δ(A)𝐕K,δ(B)\mathbf{V}_{K,\delta}(A)\subseteq\mathbf{V}_{K,\delta}(B) (i.e., for all differential field extensions LL of KK, all solutions of A=0A=0 in LnL^{n} are solutions of B=0B=0.) If also 𝐕K,δ(B)𝐕K,δ(A)\mathbf{V}_{K,\delta}(B)\subseteq\mathbf{V}_{K,\delta}(A), we write 𝐕K,δ(A)=𝐕K,δ(B)\mathbf{V}_{K,\delta}(A)=\mathbf{V}_{K,\delta}(B) and say that AA and BB have the same differential zero sets (or the same differential solutions). (See Remark 60 about our use of the term “set” in this context.)

We also refer to differential zero sets as differential varieties, differential algebraic sets, or Kolchin closed sets (over KK, when we specify a differential field containing the coefficients of the defining differential polynomials).

Analogous definitions hold for differential constructible sets (i.e., Boolean combinations of Kolchin closed sets). See, for instance, Example 71.

Remark 60.

We could have defined algebraic varieties in an analogous way, having points in any extension field containing the coefficients of the defining polynomials. In that case Hilbert’s Nullstellensatz (Theorem 20) would read as follows: Let KK be a field and let AK[𝐱]A\subseteq K[\mathbf{x}]. Then a polynomial fK[𝐱]f\in K[\mathbf{x}] belongs to (A)\sqrt{(A)} if and only if for all fields LL extending KK and all 𝐚Ln\mathbf{a}\in L^{n} such that q(𝐚)=0q(\mathbf{a})=0 for all qAq\in A, we have f(𝐚)=0f(\mathbf{a})=0. However, \mathbb{C} is algebraically closed and thus has the property that a system of polynomial equations over \mathbb{C} has a solution in some extension field if and only if it has a solution in \mathbb{C} [61]. Hence there is no need to mention extensions in the algebraic case. We merely do so in the differential case because there is no natural analogue of \mathbb{C} available.

Strictly speaking, the collection of all points of 𝐕K,δ(A)\mathbf{V}_{K,\delta}(A) is not a set, but rather a proper class [62] containing the solutions of AA from all differential fields extending KK. However, in this paper we never need to treat it as a single completed object and so do not risk set-theoretic difficulties. We simply use 𝐕K,δ(A)\mathbf{V}_{K,\delta}(A) as shorthand for universal quantification over differential field extensions. The terms “differential zero set” and “differential algebraic set” are harmless abuses of terminology that we use to mirror the corresponding algebraic concepts. We introduce the notion so that we can conveniently state the differential Nullstellensatz without a technical detour into differentially closed fields. Like its algebraic counterpart, the differential Nullstellensatz connects algebra and geometry, giving us a correspondence between radical differential ideals and differential varieties. In this paper, the differential Nullstellensatz is mainly used in the form of Theorems 63 and 64. In turn, these will help prove correctness (Theorem 96) of our main algorithm 𝚁𝙶𝙰o{\tt RGA}_{o} in Section 4.

Theorem 61 (Differential Nullstellensatz [44, Thm. 2]; Table 1).

Let KK be a differential field of characteristic 0. Given AK{𝐱}A\subseteq{K}\{\mathbf{x}\}, a differential polynomial pK{𝐱}p\in{K}\{\mathbf{x}\} vanishes at every point of 𝐕K,δ(A)\mathbf{V}_{K,\delta}(A) if and only if p[A]p\in\sqrt{[A]}. (Here [A]\sqrt{[A]} is the radical in K{𝐱}{K}\{\mathbf{x}\} of the differential ideal generated by AA.)

Phrased differently, [A]\sqrt{[A]} consists precisely of those differential polynomials over KK that vanish at all differential solutions of AA in any differential extension field of KK.

The differential Nullstellensatz immediately implies a differential analogue of the algebra-geometry dictionary from Corollary 25:

Corollary 62 (Differential algebra-geometry dictionary; Table 1).

Let A,BK{𝐱}A,B\subseteq{K}\{\mathbf{x}\}, where KK is a differential field of characteristic 0. Then 𝐕K,δ(A)𝐕K,δ(B)\mathbf{V}_{K,\delta}(A)\subseteq\mathbf{V}_{K,\delta}(B) if and only if [A][B]\sqrt{[A]}\supseteq\sqrt{[B]}.

Given an ideal IK{𝐱}I\unlhd K\{\mathbf{x}\} and multiplicative set SK{𝐱}S\subseteq K\{\mathbf{x}\}, the saturation ideal I:SI:S^{\infty} is defined as before by I:S:={pK{𝐱}spI for some sS}I:S^{\infty}:=\{p\in K\{\mathbf{x}\}\mid sp\in I\text{ for some }s\in S\}. We have II:S[I]:SI\subseteq{I}:S^{\infty}\subseteq{[I]}:S^{\infty}. If II is a differential ideal, then [I]:S=I:S[I]:S^{\infty}={I}:S^{\infty} is also a differential ideal (called a differential saturation ideal) [59, Lemma 1.3].

Much like algebraic saturation ideals, differential saturation ideals represent systems of polynomial differential equations and inequations. (Example 71 and Lemma 94 show that inequations, and not just equations, are important for differential elimination.) The differential Nichtnullstellensatz makes the following important connection between solutions of differential polynomial (in)equations and radicals of differential saturation ideals. (See Theorem 29 for the algebraic version.)

Theorem 63 (Differential Nichtnullstellensatz [44, Cor. 3]; Table 1).

Let KK be a differential field of characteristic 0, let AK{𝐱}A\subseteq{K}\{\mathbf{x}\}, and let 0SK{𝐱}0\notin S\subseteq{K}\{\mathbf{x}\} be finite. A differential polynomial pK{𝐱}p\in{K}\{\mathbf{x}\} vanishes at every solution of (A=0,S0)(A=0,S\neq 0) in every differential extension field of KK if and only if p[A]:Sp\in\sqrt{{[A]}:S^{\infty}}.

The last result in this subsection is a differential analogue of Theorem 30:

Theorem 64 (Splitting, differential case [44, Cor. 5]).

Let KK be a differential field of characteristic 0, let AK{𝐱}A\subseteq{K}\{\mathbf{x}\}, and let 0SK{𝐱}0\notin S\subseteq{K}\{\mathbf{x}\} be finite. If hK{𝐱}{0}h\in{K}\{\mathbf{x}\}\setminus\{0\}, then

[A]:S=[A,h]:S[A]:(S{h}).\sqrt{{[A]}:S^{\infty}}=\sqrt{{[A,h]}:S^{\infty}}\cap\sqrt{{[A]}:(S\cup\{h\})^{\infty}}.

.

2.4.3 Explicit Form and Lie Derivatives in Differential Ideals

Since we intend to compute algebraic invariants of polynomial vector fields, we naturally focus on differential polynomials of the following form:

Definition 65.

Let KK be a differential field. We say a differential polynomial pK{𝐱}p\in K\{\mathbf{x}\} of order 1 is in explicit form (or is explicit) if p=xi+qp=x_{i}^{\prime}+q for some 1in1\leq i\leq n and qK[𝐱]q\in K[\mathbf{x}]. (In particular, no proper derivative appears in qq.) We also say the corresponding differential equation xi=qx_{i}^{\prime}=-q is in explicit form. (Note that explicit form is desirable because it essentially replaces a derivative with a polynomial.)

In the following lemma and thereafter, if I{𝐱}I\unlhd\mathbb{R}\{\mathbf{x}\} we write 𝐱𝐟(𝐱)I\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x})\in I as shorthand indicating that each element xifi(𝐱)x_{i}^{\prime}-f_{i}(\mathbf{x}) of 𝐱𝐟(𝐱)\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x}) belongs to II. This property connects differential ideals to invariant ideals and allows us to use differential algebra to find sets invariant with respect to 𝐱=𝐟(𝐱)\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x}):

Lemma 66.

If 𝐱𝐟(𝐱)I{𝐱}\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x})\in I\unlhd\mathbb{R}\{\mathbf{x}\} and II is a differential ideal, then for any pI[𝐱]p\in I\cap\mathbb{R}[\mathbf{x}] we have 𝐱=𝐟(𝐱)(p)=p˙I[𝐱]\mathcal{L}_{\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x})}(p)=\dot{p}\in I\cap\mathbb{R}[\mathbf{x}]. (In other words, I[𝐱]I\cap\mathbb{R}[\mathbf{x}] is an invariant ideal with respect to 𝐱=𝐟(𝐱)\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x}).)

Proof.

We have pIp^{\prime}\in I because II is a differential ideal. Since p[𝐱]p\in\mathbb{R}[\mathbf{x}], all monomials mim_{i} of pp^{\prime} have the form (ki)(a)x1k1xiki1xixnkn(k_{i})(a)x_{1}^{k_{1}}\cdots x_{i}^{k_{i}-1}x_{i}^{\prime}\cdots x_{n}^{k_{n}} for some aa\in\mathbb{R} and k1,knk_{1},\ldots k_{n}\in\mathbb{N}. (This is one of the summands produced by the product rule applied to a monomial m=ax1k1xikixnknm=ax_{1}^{k_{1}}\cdots x_{i}^{k_{i}}\cdots x_{n}^{k_{n}} in pp.) Subtracting (ki)(a)x1k1xiki1xnkn(xifi(𝐱))(k_{i})(a)x_{1}^{k_{1}}\cdots x_{i}^{k_{i}-1}\cdots x_{n}^{k_{n}}(x_{i}^{\prime}-f_{i}(\mathbf{x})) from pp^{\prime} produces an element of II (since xifi(𝐱)Ix_{i}^{\prime}-f_{i}(\mathbf{x})\in I by assumption) that replaces the monomial mim_{i} with (ki)(a)x1k1xiki1(fi(𝐱))xnkn(k_{i})(a)x_{1}^{k_{1}}\cdots x_{i}^{k_{i}-1}(f_{i}(\mathbf{x}))\cdots x_{n}^{k_{n}}. Doing this for each xix_{i} in monomial mm and summing the output replaces mm^{\prime} in pp^{\prime} with the Lie derivative m˙\dot{m} of mm. It follows from Lemma 47 that substituting 𝐟(𝐱)\mathbf{f}(\mathbf{x}) for 𝐱\mathbf{x^{\prime}} in pp^{\prime} this way yields p˙I[𝐱]\dot{p}\in I\cap\mathbb{R}[\mathbf{x}]. (Recall that p˙[𝐱]\dot{p}\in\mathbb{R}[\mathbf{x}] by definition.) ∎

2.5 Rankings and Reduction

As discussed in the introduction, the central aim of this paper is to use differential elimination to algorithmically generate algebraic invariants of polynomial dynamical systems. Elimination identifies the core content of a system of polynomial (or differential polynomial) equations by “reducing” some polynomials with respect to others. In addition to Gaussian elimination, another classic example is long division of one univariate polynomial by another. If the divisor does not evenly divide the dividend, we are left with a nonzero remainder. One way to extend this to multivariate differential polynomials is to use a differential ranking (or ranking, if the context is clear) [63]. Differential rankings identify a “leading derivative” in any differential polynomial (e.g., to determine if xx^{\prime} or y′′y^{\prime\prime} is eliminated first) and ensure termination of algorithms by eliminating “large terms” first. Rankings are analogous to monomial orderings in the theory of Gröbner bases [30, Sect. 2.2, Def. 1]. However, rankings only apply to individual variables and their derivatives, whereas monomial orderings concern monomials. Many of the following results do not depend on the choice of ranking (the main exceptions are algorithm 𝚁𝙶𝙰o{\tt RGA}_{o} on p. 4.1 and the proof of Theorem 96) and we do not specify a ranking except when necessary.

Definition 67.

A differential ranking is a well-founded linear ordering << of derivatives (i.e., every nonempty subset of derivatives has a least element with respect to <<) that goes up with differentiation and respects : x(k)<x(k+1)x^{(k)}<x^{(k+1)} and x<yx<y implies x<yx^{\prime}<y^{\prime}.

There are different rankings for different purposes. Two prominent classes are elimination rankings (sort variables lexicographically irrespective of their order; e.g., if x<yx<y, then x(k)<yx^{(k)}<y for any kk) and orderly rankings (the derivative of highest order ranks highest, regardless of the base variable; ties in order are decided according to the ordering on the variables). For instance, if x<yx<y for an orderly ranking, then y(l)<x(k)y^{(l)}<x^{(k)} if l<kl<k and x(k)<y(l)x^{(k)}<y^{(l)} if klk\leq l.

We identify several important components of a differential polynomial with respect to a ranking. These constituents are useful for specifying the control flow of algorithms involving systems of differential polynomials. (For instance, in Section 4 we split cases by either setting a given separant equal to 0 or not.)

Definition 68.

Fix a differential ranking. The highest-ranking derivative that appears in a non-constant differential polynomial pK{𝐱}Kp\in K\{\mathbf{x}\}\setminus K is the leader of pp (denoted lpl_{p}). Note that lpl_{p} is a derivative of a single differential indeterminate and does not involve powers or multiple variables. The initial of pp (denoted ipi_{p}) is the coefficient (viewing pp as a univariate polynomial in lpl_{p} with coefficients in K{𝐱}K\{\mathbf{x}\} that do not involve lpl_{p}) of the highest power of lpl_{p}. The separant of pp (denoted sps_{p}) is the initial of any derivative p(k)p^{(k)} where k1k\geq 1 (equivalently, the formal partial derivative plp\frac{\partial p}{\partial l_{p}} of pp with respect to lpl_{p}). Unlike the initial ipi_{p}, the separant sps_{p} could contain lpl_{p}, but with a lower degree than lpl_{p} has in pp. We do not define leaders, initials, or separants for constants (i.e., elements of the field KK).

Example 69.

Fix any differential ranking such that x<yx<y and let p:=x(x+1)(y′′)2+xy′′+x4p:=x(x+1)(y^{\prime\prime})^{2}+x^{\prime}y^{\prime\prime}+x^{4}. Then

p\displaystyle p^{\prime} =2x(x+1)(y′′)(y′′′)+(x)(x+1)(y′′)2+x(x)(y′′)2+xy′′′+x′′y′′+4x3x\displaystyle=2x(x+1)(y^{\prime\prime})(y^{\prime\prime\prime})+(x^{\prime})(x+1)(y^{\prime\prime})^{2}+x(x^{\prime})(y^{\prime\prime})^{2}+x^{\prime}y^{\prime\prime\prime}+x^{\prime\prime}y^{\prime\prime}+4x^{3}x^{\prime}
=(2x(x+1)y′′+x)(y′′′)+(2x+1)(x)(y′′)2+x′′y′′+4x3x.\displaystyle=(2x(x+1)y^{\prime\prime}+x^{\prime})(y^{\prime\prime\prime})+(2x+1)(x^{\prime})(y^{\prime\prime})^{2}+x^{\prime\prime}y^{\prime\prime}+4x^{3}x^{\prime}.

The leader lpl_{p} of pp is y′′y^{\prime\prime} (and not (y′′)2(y^{\prime\prime})^{2}, x(x+1)(y′′)2x(x+1)(y^{\prime\prime})^{2}, etc.), the initial ipi_{p} is the coefficient x(x+1)x(x+1) of (y′′)2(y^{\prime\prime})^{2}, and the separant sps_{p} is 2x(x+1)y′′+x2x(x+1)y^{\prime\prime}+x^{\prime}.

Remark 70.

Rankings induce a well-partial-ordering on differential polynomials (q<pq<p if the leader of pp is greater than the leader of qq or if they are the same and the degree of the leader is greater in pp than in qq) and, in turn, on sets of polynomials. See [58, Sect. I.10] and [29, Ch. 5] for exact definitions; also see our remarks about the RGA algorithm at the beginning of Section 4.

Rankings for nondifferential polynomial rings K[𝐱]K[\mathbf{x}] are simply linear orderings of the variables. The leader, initial, and separant of a polynomial pK[𝐱]p\in K[\mathbf{x}] are defined as in the differential case.

2.5.1 Differential Pseudodivision

Rankings give us a systematic way of generalizing long division via differential pseudodivision (or just pseudodivision; we also say differential pseudoreduction or Ritt reduction). Here we view multivariate differential polynomials as univariate differential polynomials whose coefficients are differential polynomials in one fewer variable. Differential pseudodivision is like univariate long division except the coefficients are differential polynomials and we usually cannot divide without introducing fractions. We give a concrete example before describing the process more formally.

Example 71.

Choose any differential ranking with x<yx<y and let p=(x+1)(y′′)+x4p=(x+1)(y^{\prime\prime})+x^{4} and q=(x21)(y)2q=(x^{2}-1)(y^{\prime})^{2}. Observe that yy^{\prime} is the leader lql_{q} of qq and y′′y^{\prime\prime} is the highest derivative of yy^{\prime} in pp. Pseudodividing/pseudoreducing pp by qq consists of first differentiating qq to match the y′′y^{\prime\prime} and then “dividing” pp by qq^{\prime} (in quotation marks because we must premultiply pp by something in order to divide by qq^{\prime} without fractions). This eliminates y′′y^{\prime\prime}. If the resulting pseudoremainder contains (y)2(y^{\prime})^{2}, we “divide” the pseudoremainder by qq to obtain another pseudoremainder. The final reduced pseudoremainder does not contain any proper derivative of lql_{q} and has degree less than 2 in lql_{q}.

  • Differentiate qq to find q=2(x21)(y)y′′+(2xx)(y)2q^{\prime}=2(x^{2}-1)(y^{\prime})y^{\prime\prime}+(2xx^{\prime})(y^{\prime})^{2}. (Note that y′′y^{\prime\prime} has degree 1 in qq^{\prime}.)

  • Then premultiply pp by (x1)y(x-1)y^{\prime} because x+1x+1 is the coefficient of lq=y′′l_{q^{\prime}}=y^{\prime\prime} in pp and 2(x+1)(x1)y=2(x21)y=iq=sq2(x+1)(x-1)y^{\prime}=2(x^{2}-1)y^{\prime}=i_{q^{\prime}}=s_{q}.

  • Now subtract (12)q(\frac{1}{2})q^{\prime} from (x1)yp(x-1)y^{\prime}p to obtain pseudoremainder r=(x1)(y)(x4)xx(y)2.r=(x-1)(y^{\prime})(x^{4})-xx^{\prime}(y^{\prime})^{2}.

    Notice that p,qp,q^{\prime} vanish precisely when either p,q,sqp,q^{\prime},s_{q} all vanish or q,rq^{\prime},r vanish and sqs_{q} does not. Using the notation of Definition 59 we have 𝐕K,δ(p,q)=(𝐕K,δ(p,q,sq))(𝐕K,δ(q,r)𝐕K,δ(sq))\mathbf{V}_{K,\delta}(p,q^{\prime})=(\mathbf{V}_{K,\delta}(p,q^{\prime},s_{q}))\cup(\mathbf{V}_{K,\delta}(q^{\prime},r)\setminus\mathbf{V}_{K,\delta}(s_{q})). In other words, using splitting and differential pseudodivision to eliminate differential polynomials splits differential varieties into a union of differential constructible sets. The same idea appears in Equations 3,4 on p. 4.

  • With one more round of premultiplication and subtraction, we can eliminate xx(y)2xx^{\prime}(y^{\prime})^{2} in rr. Premultiply rr by x21x^{2}-1 (this is the initial iqi_{q} of qq and xxxx^{\prime} doesn’t already contain any factors of iqi_{q}) and subtract xxq-xx^{\prime}q to obtain the final answer (x21)(x1)(y)(x4)(x^{2}-1)(x-1)(y^{\prime})(x^{4}). This pseudoremainder has no variables that can be eliminated using qq.

In general, let p,qp,q be differential polynomials (qq non-constant so that leaders, etc., are well defined; in particular, q0q\neq 0). Pseudodividing pp by qq involves the following steps (see [58, Sect. I.9] and [64, Sect. 2.2] for other versions):

𝙳𝚒𝚏𝚏𝙿𝚜𝚎𝚞𝚍𝚘𝙳𝚒𝚟(p,q){\tt DiffPseudoDiv}(p,q):

  1. 1.

    If a proper derivative of the leader lql_{q} of qq appears in pp:

    • Let (lq)(k)(l_{q})^{(k)}, k1k\geq 1, be the highest proper derivative of lql_{q} appearing in pp. Compute q(k)q^{(k)}.

    • Let rk:=r_{k}:= 𝙳𝚒𝚏𝚏𝙿𝚜𝚎𝚞𝚍𝚘𝙳𝚒𝚟{\tt DiffPseudoDiv}(p,q(k))(p,q^{(k)}). (Note that the initial of q(k)q^{(k)} is the separant sqs_{q} of qq since k1k\geq 1.) Then return 𝙳𝚒𝚏𝚏𝙿𝚜𝚎𝚞𝚍𝚘𝙳𝚒𝚟{\tt DiffPseudoDiv}(rk,q)(r_{k},q).

    (Note that the call 𝙳𝚒𝚏𝚏𝙿𝚜𝚎𝚞𝚍𝚘𝙳𝚒𝚟{\tt DiffPseudoDiv}(p,q(k))(p,q^{(k)}) must proceed to step 2 because (lq)(k)(l_{q})^{(k)} is the leader of q(k)q^{(k)}. Also note that the degree of (lq)(k)(l_{q})^{(k)} in q(k)q^{(k)} is 1.)

  2. 2.

    If lql_{q} (but no proper derivative thereof) appears in pp and the highest power dd of lql_{q} that appears in pp is at least the degree ee of lql_{q} in qq:

    • Let cK{𝐱}c\in{K}\{\mathbf{x}\} be the coefficient of lqdl_{q}^{d} in pp. Multiply pp by an appropriate factor α\alpha of the initial iqi_{q} of qq to ensure that (α)(c)(\alpha)(c) is divisible by iqi_{q}. This is called premultiplication. It suffices to premultiply pp by α:=iq/g\alpha:=i_{q}/g, where gg is the GCD of iqi_{q} and cc.

    • Now subtract the necessary multiple of qq (namely, (c/g)(lq)deq\left(c/{g}\right)(l_{q})^{d-e}q) to eliminate (lq)d(l_{q})^{d} from pp and obtain a pseudoremainder rr whose highest power of lql_{q} is less than dd:

      r:=(iq/g)p(c/g)(lq)deq.r:=(i_{q}/g)p-(c/{g})(l_{q})^{d-e}q.

      Note that iq/gi_{q}/g and c/gc/g are both differential polynomials and not fractions because gg divides both iqi_{q} and cc by definition. Also note that the total degree deg(r)deg(r) of rr is at most the sum of the total degrees deg(p),deg(q)deg(p),deg(q) of pp and qq. (This is because degrees of products are additive and the degrees of iq/gi_{q}/g and (c/g)(lq)de(c/{g})(l_{q})^{d-e} are at most deg(q)edeg(q)-e and deg(p)d+(de)=deg(p)edeg(p)-d+(d-e)=deg(p)-e, respectively. Hence deg(r)deg(p)+deg(q)edeg(r)\leq deg(p)+deg(q)-e, but for simplicity we use the larger bound deg(p)+deg(q)deg(p)+deg(q).)

    • Return 𝙳𝚒𝚏𝚏𝙿𝚜𝚎𝚞𝚍𝚘𝙳𝚒𝚟{\tt DiffPseudoDiv}(r,q)(r,q).

    If lql_{q} (but no proper derivative thereof) appears in pp and d<ed<e, return pp.

  3. 3.

    If neither lql_{q} nor any proper derivative of lql_{q} appears in pp, return pp.

Remark 72.

The algorithm 𝙳𝚒𝚏𝚏𝙿𝚜𝚎𝚞𝚍𝚘𝙳𝚒𝚟{\tt DiffPseudoDiv} terminates because step 1 reduces the order of the highest proper derivative of lql_{q} that appears in pp and step 2 reduces the degree of lql_{q} in pp to a value below ee. (In particular, (lq)(k)(l_{q})^{(k)} is eliminated by the call 𝙳𝚒𝚏𝚏𝙿𝚜𝚎𝚞𝚍𝚘𝙳𝚒𝚟{\tt DiffPseudoDiv}(p,q(k))(p,q^{(k)}) because the degree of (lq)(k)(l_{q})^{(k)} in q(k)q^{(k)} is e=1e=1.)

The same concepts apply in the nondifferential case (i.e., rankings on variables in K[𝐱]K[\mathbf{x}]). Algebraic pseudodivision is the same process as 𝙳𝚒𝚏𝚏𝙿𝚜𝚎𝚞𝚍𝚘𝙳𝚒𝚟{\tt DiffPseudoDiv}, except that step 1 never applies because there are no derivatives.

If 𝙳𝚒𝚏𝚏𝙿𝚜𝚎𝚞𝚍𝚘𝙳𝚒𝚟{\tt DiffPseudoDiv}(p,q)=r(p,q)=r, we say rr is the (differential) pseudoremainder resulting from (differential) pseudodivision of pp by qq. The core component of pseudodivision is a single round of premultiplication and subtraction (the first and second items in step 2 of 𝙳𝚒𝚏𝚏𝙿𝚜𝚎𝚞𝚍𝚘𝙳𝚒𝚟{\tt DiffPseudoDiv}). We refer to this as a “single step” of pseudodivision and call the result a pseudoremainder even though it is an intermediate element that may be used for further steps of pseudodivision until the final pseudoremainder is reached. See Remark 91 immediately preceding the description of algorithm 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate}.

The next proposition makes explicit the differential-algebraic relationship between p,qp,q, and rr when 𝙳𝚒𝚏𝚏𝙿𝚜𝚎𝚞𝚍𝚘𝙳𝚒𝚟{\tt DiffPseudoDiv}(p,q)=r(p,q)=r. (The analogue for division of integer aa by nonzero integer bb is the equation a=cb+da=cb+d, where cc is the quotient and dd is the remainder.)

Proposition 73.

Let 𝙳𝚒𝚏𝚏𝙿𝚜𝚎𝚞𝚍𝚘𝙳𝚒𝚟{\tt DiffPseudoDiv}(p,q)=r(p,q)=r. Then for some s~\widetilde{s} a product of factors of sqs_{q}, i~\widetilde{i} a product of factors of iqi_{q}, and q~[q]\widetilde{q}\in[q] we have (s~)(i~)pq~=r(\widetilde{s})(\widetilde{i})p-\widetilde{q}=r. In particular, we have p[q]:{sq,iq}p\in{[q]}:\{s_{q},i_{q}\}^{\infty} if rr is 0.

In the nondifferential case (or if pp contains no proper derivatives of the leader lql_{q} of qq) we have (i~)pq~=r(\widetilde{i})p-\widetilde{q}=r, with q~(q)\widetilde{q}\in(q) now, and p(q):{iq}p\in{(q)}:\{i_{q}\}^{\infty} if rr is 0.

Proof.

This follows from the form of operations in 𝙳𝚒𝚏𝚏𝙿𝚜𝚎𝚞𝚍𝚘𝙳𝚒𝚟{\tt DiffPseudoDiv}. If pp contains a highest proper derivative (lq)(k)(l_{q})^{(k)} of the leader of qq, then the first intermediate pseudoremainder (from the call 𝙳𝚒𝚏𝚏𝙿𝚜𝚎𝚞𝚍𝚘𝙳𝚒𝚟{\tt DiffPseudoDiv}(p,q(k))(p,q^{(k)}) using step 2 is

r~:=(sq/g)p(c/g)((lq)(k))d1q(k),\widetilde{r}:=(s_{q}/g)p-(c/{g})((l_{q})^{(k)})^{d-1}q^{(k)},

where sqs_{q} is the initial of q(k)q^{(k)}, dd is the highest power of (lq)(k)(l_{q})^{(k)} in pp, cc is the coefficient of ((lq)(k))d((l_{q})^{(k)})^{d} in pp, and gg is the GCD of sqs_{q} and cc. Note that r~\widetilde{r} has the claimed property. (Consequently, Proposition 73 also applies to a single step of pseudodivision as defined in Remark 72.) By induction on kk and dd we may assume that (sq)(iq)r~q=r(s_{q}^{*})(i_{q}^{*})\widetilde{r}-q^{*}=r for some sqs_{q}^{*} a product of factors of sqs_{q}, iqi_{q}^{*} a product of factors of iqi_{q}, and q[q]q^{*}\in[q]. Multiplying r~\widetilde{r} by (sq)(iq)(s_{q}^{*})(i_{q}^{*}) and subtracting qq^{*}, the two preceding equations imply that

(sq)(sq/g)(iq)p((sq)(iq)(c/g)((lq)(k))d1q(k)+q)=r,(s_{q}^{*})(s_{q}/g)(i_{q}^{*})p-((s_{q}^{*})(i_{q}^{*})(c/{g})((l_{q})^{(k)})^{d-1}q^{(k)}+q^{*})=r,

which has the correct form.

Analogous arguments hold for the case that pp contains no proper derivative of lql_{q} and the nondifferential case. The assertions for r=0r=0 follow from the definition of a saturation ideal. (Multiply both sides by appropriate factors of sq,iqs_{q},i_{q} so that s~\widetilde{s} and i~\widetilde{i} become powers of sq,iqs_{q},i_{q} and not just arbitrary products of their factors.) ∎

Just as the process in Example 71 eliminated y′′y^{\prime\prime} and cut the degree of yy^{\prime} from 2 to 1, more generally we have the following definition:

Definition 74.

Given a differential polynomial ring K{𝐱}K\{\mathbf{x}\}, a differential ranking, and p,qK{𝐱}p,q\in{K}\{\mathbf{x}\}, we say pp is partially reduced with respect to qq if no proper derivative of the leader lql_{q} of qq appears in pp. (In the nondifferential case there are no derivatives and so partial reducedness holds vacuously.) We say pp is reduced with respect to qq if pp is partially reduced with respect to qq and any instances of lql_{q} in pp have strictly lower degree than the maximum degree of lql_{q} in qq. (In particular, it is impossible to pseudodivide pp by qq any further.) We say that a subset AK{𝐱}A\subseteq{K}\{\mathbf{x}\} is partially reduced if all members of AA are pairwise partially reduced. We likewise call AA autoreduced if the elements of AA are pairwise reduced. Similarly, we say pK{𝐱}p\in{K}\{\mathbf{x}\} is (partially) reduced with respect to AA if pp is (partially) reduced with respect to each element of AA.

It follows from Remark 72 that the pseudoremainder rr resulting from pseudodividing pp by qq is reduced with respect to qq. After a “single step” of pseudoreduction as defined in Remark 72, the pseudoremainder is not necessarily reduced yet with respect to qq, but it does have degree in lql_{q} strictly less than that of pp.

2.6 Regular Systems

Systems of polynomial equations and inequations can “hide” their information in the sense that deciding the system’s properties may require substantial computation. We focus on structured collections known as regular systems and regular sets that are easier to analyze. The basic intuition is that “enough” pseudodivision has been done beforehand so that there is no redundancy left to obscure relations between the system’s elements.

Definition 75 ([44, Def. 1]).

Let KK be a field, let A,SK[𝐱]A,S\subseteq K[\mathbf{x}] be finite with 0S0\notin S, and fix a ranking. The equation/inequation pair (A=0,S0)(A=0,S\neq 0) (or simply (A,S)(A,S)) denoting f(𝐱)=0f(\mathbf{x})=0 and g(𝐱)0g(\mathbf{x})\neq 0 for each fAf\in A and gSg\in S, respectively, is a regular algebraic system over KK if

  1. 1.

    the elements of AA have distinct leaders and

  2. 2.

    SS contains the separant of each element of AA.

Definition 76 ([44, Def. 7]).

Let KK be a differential field, let A,SK{𝐱}A,S\subseteq K\{\mathbf{x}\} be finite with 0S0\notin S, and fix a differential ranking. The equation/inequation pair (A=0,S0)(A=0,S\neq 0) is a regular differential system over KK if

  1. 1.

    AA is partially reduced and the elements of AA have distinct leaders and

  2. 2.

    the elements of SS are partially reduced with respect to AA, and SS contains the separant of each element of AA.

Our statement is simpler than the general definition [44] because we restrict ourselves to a single derivation. The “coherence property” in [44] holds vacuously in the ordinary differential case. Definitions 75 (1), 76 (1) force AA to be finite (since there are only nn indeterminates), so there is no loss of generality in assuming AA is finite to begin with.

We often omit “over KK” when the field is clear from context. Also, nonzero constant multiples in SS are irrelevant because we interpret the elements of SS as inequations. Thus, for example, if sf:=2xs_{f}:=2x is the separant of fAf\in A and xSx\in S, we take that as satisfying the requirement that SS contain sfs_{f}. Similarly, we do not explicitly show nonzero scalars when listing the elements of SS even if, like in xxyx^{\prime}-xy, the separant is 1.

An equation/inequation pair (A=0,S0)(A=0,S\neq 0) from K[𝐱]K[\mathbf{x}] (respectively, K{𝐱}K\{\mathbf{x}\}) is an algebraic system (respectively, differential system) if it is not necessarily regular.

While an arbitrary differential system need not be regular, there always exists a decomposition into one or more regular differential systems (Theorem 90). Our main algorithm 𝚁𝙶𝙰o{\tt RGA}_{o} from Section 4 yields such a decomposition if the differential equations have explicit form 𝐱=𝐟(𝐱)\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x}) (Theorem 96).

Definition 77.

Let KK be a differential field and let A,SK{𝐱}A,S\subseteq K\{\mathbf{x}\}. The restrictions of AA and SS, respectively, to K[𝐱]K[\mathbf{x}] are AK[𝐱]:=AK[𝐱]A_{K[\mathbf{x}]}:=A\cap K[\mathbf{x}] and SK[𝐱]:=SK[𝐱]S_{K[\mathbf{x}]}:=S\cap K[\mathbf{x}]. If 𝒞:=(A=0,S0)\mathcal{C}:=(A=0,S\neq 0) is a differential system, we call 𝒞K[𝐱]:=(AK[𝐱]=0,SK[𝐱]0)\mathcal{C}_{K[\mathbf{x}]}:=(A_{K[\mathbf{x}]}=0,S_{K[\mathbf{x}]}\neq 0) the restriction of 𝒞\mathcal{C} to K[𝐱]K[\mathbf{x}].

Every regular differential system naturally contains a regular algebraic system.

Lemma 78.

Let 𝒞:=(A=0,S0\mathcal{C}:=(A=0,S\neq 0) be a regular differential system. Then the restriction 𝒞K[𝐱]\mathcal{C}_{K[\mathbf{x}]} of 𝒞\mathcal{C} to K[𝐱]K[\mathbf{x}] is a regular algebraic system (with respect to the ranking inherited from that of 𝒞\mathcal{C}).

Proof.

The elements of AK[𝐱]AA_{K[\mathbf{x}]}\subseteq A have distinct leaders, as do all elements of AA. By definition SK[𝐱]=SK[𝐱]S_{K[\mathbf{x}]}=S\cap K[\mathbf{x}]; this implies that the separants of elements of AK[𝐱]A_{K[\mathbf{x}]} belong to SK[𝐱]S_{K[\mathbf{x}]} because SS contains the separants of elements of AAK[𝐱]A\supseteq A_{K[\mathbf{x}]} and the separants of elements of AK[𝐱]A_{K[\mathbf{x}]} belong to K[𝐱]K[\mathbf{x}]. ∎

For some purposes regular systems are not strong enough. In particular, they do not suffice for testing membership in (A):S{(A)}:S^{\infty} or [A]:S{[A]}:S^{\infty}. For that we need the related notion of a regular set. We first give the definition, but the connection to saturation ideal membership is contained in Theorem 81. This in turn plays an important role in the proof of Theorem 97 in Section 3.

Definition 79 ([65, Def. 2]).

Let KK be a field, let A={p1,,pm}K[𝐱]A=\{p_{1},\ldots,p_{m}\}\subseteq K[\mathbf{x}], and fix a ranking. For 1jm1\leq j\leq m let Aj={p1,,pj}A_{j}=\{p_{1},\ldots,p_{j}\} and let SjS_{j} be the multiplicative set generated by the initials i1,,iji_{1},\ldots,i_{j} of p1,,pjp_{1},\ldots,p_{j}. We say AA is a regular set (or regular chain) if

  1. 1.

    the elements of AA have distinct leaders and

  2. 2.

    for 2jm2\leq j\leq m, if qK[𝐱]q\in K[\mathbf{x}] and qq does not belong to (Aj1):Sj1{(A_{j-1})}:S_{j-1}^{\infty}, then ijq(Aj1):Sj1i_{j}q\notin{(A_{j-1})}:S_{j-1}^{\infty}.

In the usual terminology of the area, AA is a triangular set (having distinct leaders is suggestive of the triangular shape of an invertible matrix in row echelon form) and for 2jm2\leq j\leq m the initial iji_{j} of pjp_{j} is regular (i.e., a non-zerodivisor) in the quotient ring K[𝐱]/((Aj1):Sj1)K[\mathbf{x}]/({(A_{j-1})}:S_{j-1}^{\infty}).

2.6.1 Key Results for Regular Systems

To round out the necessary mathematical background, we cite three deeper properties of regular systems and sets that we need in Sections 3 and 4. The first is a technical lemma that, in light of the Nullstellensatz, allows us to go back and forth between zero sets and ideals when dealing with regular algebraic systems.

Lemma 80 (Lazard’s lemma [44, Thm. 1.1 and Thm. 4]).

Let (A=0,S0)(A=0,S\neq 0) be a regular algebraic system. Then (A):S(A):S^{\infty} is a radical ideal; i.e., (A):S=(A):S(A):S^{\infty}=\sqrt{(A):S^{\infty}}. Likewise, if (A=0,S0)(A=0,S\neq 0) is a regular differential system, then [A]:S{[A]}:S^{\infty} is a radical differential ideal; i.e., [A]:S=[A]:S{[A]}:S^{\infty}=\sqrt{{[A]}:S^{\infty}}.

The second gives a decision procedure for membership in saturation ideals determined by regular sets.

Theorem 81 ([65, Prop. 11][66, Thm. 6.1]).

Let AA be a regular set over field KK and let SS be the multiplicative set generated by the initials of the elements of AA. Then for any pK[𝐱]p\in K[\mathbf{x}], we have p(A):Sp\in{(A)}:S^{\infty} if and only if the pseudoremainder of pp with respect to AA is 0 (i.e., the pseudoremainder after reducing as much as possible with respect to all elements of AA).

This is analogous to how Gröbner bases decide membership in arbitrary polynomial ideals [30, Sect. 2.6, Cor. 2]. See Theorem 90 for a differential version of Theorem 81.

The last result provides a link between differential and algebraic ideals. This is critical because computation becomes less complicated when we do not have to keep differentiating. Moreover, theory and tools for symbolic computation are more developed in the algebraic case than the differential.

Lemma 82 (Rosenfeld’s lemma [44, Thm. 3]).

Let (A=0,S0(A=0,S\neq 0) be a regular differential system. Then for all differential polynomials pK{𝐱}p\in K\{\mathbf{x}\} partially reduced with respect to AA, we have p[A]:Sp\in[A]:S^{\infty} if and only if p(A):Sp\in(A):S^{\infty}.

Remark 83.

Since nondifferential polynomials are (trivially) partially reduced with respect to any set, Rosenfeld’s lemma implies that ([A]:S)K[𝐱]=((A):S)K[𝐱]({[A]}:S^{\infty}{})\cap K[\mathbf{x}]=({(A)}:S^{\infty}{})\cap K[\mathbf{x}].

The key lesson of Rosenfeld’s lemma is that, given a regular differential system, a partially reduced polynomial p[A]:Sp\in{[A]}:S^{\infty} belongs to the differential saturation for essentially algebraic reasons; we do not have to differentiate AA to prove it.

3 Regular Differential Systems and Algebraic Invariants of Polynomial Vector Fields

3.1 Explicit Regular Differential Systems

We have now covered the background needed for our new method that uses differential elimination to generate algebraic invariants of polynomial dynamical systems. The principal results of the current section are Theorems 86 and 88. Example 3.3 demonstrates these theorems using the well-known Lorenz system.

To abbreviate theorem statements, we make the following definition that specifies our systems of interest. As stated earlier, we restrict to differential polynomials in explicit form (Definition 65) because we want to apply the theory to finding algebraic invariants of polynomial vector fields. Moreover, this application naturally concerns nondifferential inequations (which we can use, for instance, to indicate “unsafe” locations/states).

Definition 84.

Let KK be a differential field and let 𝒞:=(A=0,S0\mathcal{C}:=(A=0,S\neq 0) be a differential system over KK. We say 𝒞\mathcal{C} is an explicit differential system over KK with nondifferential inequations (or just an explicit system with nondifferential inequations if KK and the differential system are understood) if i) all elements of AA that have a proper derivative are in explicit form and ii) all elements of SS are nondifferential polynomials (in which case S=SK[𝐱]=SK[𝐱]S=S_{K[\mathbf{x}]}=S\cap K[\mathbf{x}]).

We prove an important technical lemma that, along with Rosenfeld’s lemma (Lemma 82), implies the central result of this section (Theorem 86).

Lemma 85.

Let 𝒞:=(A=0,S0\mathcal{C}:=(A=0,S\neq 0) be an explicit regular differential system over \mathbb{R} with nondifferential inequations. Then ((A):S)[𝐱]=((A):S)[𝐱]=(A[𝐱]):S((A):S^{\infty})\cap\mathbb{R}[\mathbf{x}]=((A):S^{\infty})_{\mathbb{R}[\mathbf{x}]}=(A_{\mathbb{R}[\mathbf{x}]}):S^{\infty}.

Proof.

The reverse containment ((A):S)[𝐱](A[𝐱]):S((A):S^{\infty})\cap\mathbb{R}[\mathbf{x}]\supseteq(A_{\mathbb{R}[\mathbf{x}]}):S^{\infty} is automatic. For the forward containment, we must show that if q((A):S)[𝐱]q\in((A):S^{\infty})\cap\mathbb{R}[\mathbf{x}] is a nondifferential polynomial, then q(A[𝐱]):Sq\in(A_{\mathbb{R}[\mathbf{x}]}):S^{\infty}. Each explicit differential polynomial in AA has the form xi+gix_{i}^{\prime}+g_{i} for some variable xix_{i} and nondifferential polynomial gig_{i}. Let I{1,,n}I\subseteq\{1,\ldots,n\} be the subset of indices ii for which such an xi+gix_{i}^{\prime}+g_{i} belongs to AA. The remaining elements of AA belong to A[𝐱]A_{\mathbb{R}[\mathbf{x}]}. Since q(A):Sq\in(A):S^{\infty} and S=S[𝐱]S=S_{\mathbb{R}[\mathbf{x}]}, there exist nondifferential polynomials rS[𝐱]r\in S_{\mathbb{R}[\mathbf{x}]} and hjA[𝐱]h_{j}\in A_{\mathbb{R}[\mathbf{x}]} as well as differential polynomials αj,βi\alpha_{j},\beta_{i} such that rq=jαjhj+iIβi(xi+gi)rq=\sum_{j}\alpha_{j}h_{j}+\sum_{i\in I}\beta_{i}(x_{i}^{\prime}+g_{i}).

We claim that qq vanishes at all complex solutions of the restriction 𝒞[𝐱]\mathcal{C}_{\mathbb{R}[\mathbf{x}]}. (In other words, q𝐈(𝐕(A[𝐱])𝐕(ΠS))q\in\mathbf{I}_{\mathbb{C}}(\mathbf{V}_{\mathbb{C}}(A_{\mathbb{R}[\mathbf{x}]})\setminus\mathbf{V}_{\mathbb{C}}(\mathrm{\Pi}S)). Recall that ΠS\mathrm{\Pi}S is the product of the (finitely many) elements of SS.) Let 𝐚=(a1,a2,,an)n\mathbf{a}=(a_{1},a_{2},\ldots,a_{n})\in\mathbb{C}^{n} be such that h(𝐚)=0h(\mathbf{a})=0 and s(𝐚)0s(\mathbf{a})\neq 0 for all hA[𝐱]h\in A_{\mathbb{R}[\mathbf{x}]} and sS[𝐱]s\in S_{\mathbb{R}[\mathbf{x}]} (in particular, the hjh_{j} and rr from the previous paragraph). By Peano’s existence theorem for (complex-valued) ODEs [54, Thm. X, p. 110], there exists a solution 𝐱(t)\mathbf{x}(t) to the initial value problem (IVP) xi(t)=gi(𝐱(t))x_{i}^{\prime}(t)=-g_{i}(\mathbf{x}(t)), xi(0)=aix_{i}(0)=a_{i}, 1in1\leq i\leq n. (If iIi\notin I, for the IVP simply let xi(t)=0,xi(0)=aix_{i}^{\prime}(t)=0,x_{i}(0)=a_{i}. For such ii, the choice xi(t)=0x_{i}^{\prime}(t)=0 does not affect the following argument.)

Substituting 𝐱(t)\mathbf{x}(t) into the various differential and nondifferential polynomials, we obtain

r(𝐱(t))q(𝐱(t))=jαj(𝐱(t))hj(𝐱(t))+iIβi(𝐱(t))(xi(t)+gi(𝐱(t))).r(\mathbf{x}(t))q(\mathbf{x}(t))=\sum_{j}\alpha_{j}(\mathbf{x}(t))h_{j}(\mathbf{x}(t))+\sum_{i\in I}\beta_{i}(\mathbf{x}(t))(x_{i}^{\prime}(t)+g_{i}(\mathbf{x}(t))).

Evaluating at t=0t=0, we find

r(𝐚)q(𝐚)=j(αj(𝐱(t))(0))hj(𝐚)+iI(βi(𝐱(t))(0))(xi(0)+gi(𝐚)).r(\mathbf{a})q(\mathbf{a})=\sum_{j}(\alpha_{j}(\mathbf{x}(t))(0))h_{j}(\mathbf{a})+\sum_{i\in I}(\beta_{i}(\mathbf{x}(t))(0))(x_{i}^{\prime}(0)+g_{i}(\mathbf{a})).

(We have written αj(𝐱(t))(0),βi(𝐱(t))(0)\alpha_{j}(\mathbf{x}(t))(0),\beta_{i}(\mathbf{x}(t))(0) instead of αj(𝐚),βi(𝐚)\alpha_{j}(\mathbf{a}),\beta_{i}(\mathbf{a}) because αj,βi\alpha_{j},\beta_{i} are differential polynomials and the function 𝐱(t)\mathbf{x}(t) must be substituted into αj,βi\alpha_{j},\beta_{i} and differentiated before evaluating at t=0t=0. We similarly write xi(0)x_{i}^{\prime}(0) instead of aia_{i}^{\prime}, which is simply 0.) Since r(𝐚)0r(\mathbf{a})\neq 0 and hj(𝐚)=0h_{j}(\mathbf{a})=0 (by assumption on r,hjr,h_{j}, and 𝐚\mathbf{a}) and xi(0)+gi(𝐚)=0x_{i}^{\prime}(0)+g_{i}(\mathbf{a})=0 (because 𝐱(t)\mathbf{x}(t) solves the IVP), this proves that q(𝐚)=0q(\mathbf{a})=0 and establishes the claim that q𝐈(𝐕(A[𝐱])𝐕(ΠS))q\in\mathbf{I}_{\mathbb{C}}(\mathbf{V}_{\mathbb{C}}(A_{\mathbb{R}[\mathbf{x}]})\setminus\mathbf{V}_{\mathbb{C}}(\mathrm{\Pi}S)).

Lemma 17 (1) now implies that q𝐈(𝐕(A[𝐱])𝐕(ΠS)¯)q\in\mathbf{I}_{\mathbb{C}}(\overline{\mathbf{V}_{\mathbb{C}}(A_{\mathbb{R}[\mathbf{x}]})\setminus\mathbf{V}_{\mathbb{C}}(\mathrm{\Pi}S)}^{\mathbb{C}}). Lemma 28 (2) converts this to q𝐈(𝐕((A[𝐱]):S))q\in\mathbf{I}_{\mathbb{C}}(\mathbf{V}_{\mathbb{C}}({(A_{\mathbb{R}[\mathbf{x}]})_{\mathbb{C}}}:S^{\infty})), which equals (A[𝐱]):S\sqrt{(A_{\mathbb{R}[\mathbf{x}]})_{\mathbb{C}}:S^{\infty}} by the Nullstellensatz (Theorem 20). It follows from the definitions of radical and saturation ideals that (ΠS)MqN(A[𝐱])(\mathrm{\Pi}S)^{M}q^{N}\in(A_{\mathbb{R}[\mathbf{x}]})_{\mathbb{C}} for some M,NM,N, so by Lemma 4 we have q(A[𝐱]):S[𝐱]q\in\sqrt{(A_{\mathbb{R}[\mathbf{x}]}):S^{\infty}}\subseteq\mathbb{R}[\mathbf{x}]. Lazard’s lemma (Lemma 80) gives (A[𝐱]):S=(A[𝐱]):S\sqrt{(A_{\mathbb{R}[\mathbf{x}]}):S^{\infty}}=(A_{\mathbb{R}[\mathbf{x}]}):S^{\infty} since 𝒞[𝐱]\mathcal{C}_{\mathbb{R}[\mathbf{x}]} is a regular algebraic system by Lemma 78. This completes the proof. ∎

The proof of Lemma 85 illustrates the theme of proving things about real polynomial systems by first going up to the complex numbers (see Definition 32 and the comments preceding it). This strategy also appears in Theorem 88, Section 3.3, and Section 4.4.

We are ready to give the connection between explicit regular differential systems and algebraic invariants. For convenience going forward, we sometimes refer to this result as the “regular invariant theorem”.

Theorem 86 (Regular invariant theorem).

Let 𝒞:=(A=0,S0\mathcal{C}:=(A=0,S\neq 0) be an explicit regular differential system over \mathbb{R} with nondifferential inequations.

Let 𝐱=𝐟(𝐱)\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x}) be a polynomial vector field such that 𝐱𝐟(𝐱)[A]:S\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x})\in[A]:S^{\infty}. Then 𝐕((A[𝐱]):S)\mathbf{V}_{\mathbb{R}}((A_{\mathbb{R}[\mathbf{x}]}):S^{\infty}) is an algebraic invariant set of 𝐱=𝐟(𝐱)\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x}).

Proof.

By Lemma 50, it suffices to prove that (A[𝐱]):S(A_{\mathbb{R}[\mathbf{x}]}):S^{\infty} is an invariant ideal. Let p(A[𝐱]):S[𝐱]p\in(A_{\mathbb{R}[\mathbf{x}]}):S^{\infty}\unlhd\mathbb{R}[\mathbf{x}] with the goal of showing p˙(A[𝐱]):S\dot{p}\in(A_{\mathbb{R}[\mathbf{x}]}):S^{\infty} (recall that p˙\dot{p} is the Lie derivative of pp with respect to 𝐱=𝐟(𝐱)\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x})). The saturation [A]:S{𝐱}{[A]}:S^{\infty}\unlhd\mathbb{R}\{\mathbf{x}\} is a differential ideal, p(A[𝐱]):S[A]:Sp\in{(A_{\mathbb{R}[\mathbf{x}]})}:S^{\infty}\subseteq[A]:S^{\infty}, and by assumption 𝐱𝐟(𝐱)[A]:S\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x})\in[A]:S^{\infty}, so by Lemma 66 we obtain p˙[A]:S\dot{p}\in[A]:S^{\infty}. As p˙\dot{p} is nondifferential and thus partially reduced with respect to AA, Rosenfeld’s lemma (Lemma 82) yields p˙(A):S{𝐱}\dot{p}\in(A):S^{\infty}\unlhd\mathbb{R}\{\mathbf{x}\}. Because p˙[𝐱]\dot{p}\in\mathbb{R}[\mathbf{x}], Lemma 85 implies p˙(A[𝐱]):S\dot{p}\in(A_{\mathbb{R}[\mathbf{x}]}):S^{\infty} as desired. ∎

While it is not necessary that 𝐱𝐟(𝐱)[A]\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x})\in[A] for the regular invariant theorem to hold (see the example in Section 3.3), the hypothesis that 𝐱𝐟(𝐱)[A]:S\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x})\in[A]:S^{\infty} implies that 𝐱=𝐟(𝐱)\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x}) is a differential-algebraic consequence of (A=0,S0)(A=0,S\neq 0) (by the differential Nichtnullstellensatz, Theorem 63.) How we obtain explicit regular differential systems in the first place is a central topic in Section 4.

3.2 Alternate Representations from Additional Hypotheses

As we will see in Section 3.3 and Section 4, Theorem 86 opens the door to novel ways of finding and analyzing algebraic invariants of polynomial vector fields. However, it poses the challenge of finding generators of the saturation ideal (A[𝐱]):S{(A_{\mathbb{R}[\mathbf{x}]})}:S^{\infty} if we want to explicitly write equations for the invariant. While this is possible using Gröbner bases [30, p. 205], it adds complexity to the process (Remark 114). We would much prefer to read off the invariant directly from A[𝐱]A_{\mathbb{R}[\mathbf{x}]} and SS. To explore this possibility, we start by noting that 𝐕((A[𝐱]):S)\mathbf{V}_{\mathbb{R}}((A_{\mathbb{R}[\mathbf{x}]}):S^{\infty}) is sandwiched between two more convenient sets. (The following lemma does not depend on regular systems, so we use generic names in place of A[𝐱]A_{\mathbb{R}[\mathbf{x}]} and SS.)

Lemma 87.

If B,C[𝐱]B,C\subseteq\mathbb{R}[\mathbf{x}], with 0C0\notin C finite, then 𝐕(B)𝐕(ΠC)¯-euc𝐕((B):C)𝐕(B)\overline{\mathbf{V}_{\mathbb{R}}(B)\setminus\mathbf{V}_{\mathbb{R}}(\mathrm{\Pi}C)}^{\mathbb{R}\text{-euc}}\subseteq\mathbf{V}_{\mathbb{R}}((B):C^{\infty})\subseteq\mathbf{V}_{\mathbb{R}}(B).

Proof.

We have 𝐕(B)𝐕(ΠC)¯-euc=𝐕(B)𝐕(ΠC)¯\overline{\mathbf{V}_{\mathbb{R}}(B)\setminus\mathbf{V}_{\mathbb{R}}(\mathrm{\Pi}C)}^{\mathbb{R}\text{-euc}}=\overline{\mathbf{V}_{\mathbb{R}}(B)\setminus\mathbf{V}_{\mathbb{R}}(\mathrm{\Pi}C)}^{\mathbb{R}} by Lemma 13 since 𝐕(B)𝐕(ΠC)\mathbf{V}_{\mathbb{R}}(B)\setminus\mathbf{V}_{\mathbb{R}}(\mathrm{\Pi}C) is a real constructible set. (Recall that X¯-euc\overline{X}^{\mathbb{R}\text{-euc}} denotes the Euclidean closure of a set XnX\subseteq\mathbb{R}^{n}. Though in this case the closures coincide, we invoke the Euclidean topology because of its visually intuitive nature compared to the Zariski topology.)

The containment 𝐕(B)𝐕(ΠC)¯𝐕((B):C)\overline{\mathbf{V}_{\mathbb{R}}(B)\setminus\mathbf{V}_{\mathbb{R}}(\mathrm{\Pi}C)}^{\mathbb{R}}\subseteq\mathbf{V}_{\mathbb{R}}((B):C^{\infty}) holds because 𝐕((B):C)\mathbf{V}_{\mathbb{R}}((B):C^{\infty}) is a real Zariski closed set containing 𝐕(B)𝐕(ΠC)\mathbf{V}_{\mathbb{R}}(B)\setminus\mathbf{V}_{\mathbb{R}}(\mathrm{\Pi}C) (this follows quickly from the definition of a saturation ideal; see the \supseteq case in the proof of Lemma 28 (2)). The last containment holds because (B)(B):C(B)\subseteq(B):C^{\infty}. ∎

It is possible that both 𝐕(A[𝐱])𝐕(ΠS)¯-euc\overline{\mathbf{V}_{\mathbb{R}}(A_{\mathbb{R}[\mathbf{x}]})\setminus\mathbf{V}_{\mathbb{R}}(\mathrm{\Pi}S)}^{\mathbb{R}\text{-euc}} and 𝐕(A[𝐱])\mathbf{V}_{\mathbb{R}}(A_{\mathbb{R}[\mathbf{x}]}), in addition to 𝐕((A[𝐱]):S)\mathbf{V}_{\mathbb{R}}({(A_{\mathbb{R}[\mathbf{x}]})}:S^{\infty}), must be invariant under the hypotheses of the regular invariant theorem. We cannot yet prove or disprove this conjecture. However, we can prove invariance of the various sets using additional hypotheses that are commonly satisfied (see also Theorem 112, the discussion following it, and Remark 114):

Theorem 88 (Alternative criteria for regular invariants).

Let 𝒞:=(A=0,S0\mathcal{C}:=(A=0,S\neq 0) be an explicit regular differential system over \mathbb{R} with nondifferential inequations. Let 𝐱=𝐟(𝐱)\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x}) be a polynomial vector field such that 𝐱𝐟(𝐱)[A]:S\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x})\in[A]:S^{\infty}. Then each of the following conditions is sufficient for the indicated set to be an algebraic invariant set of 𝐱=𝐟(𝐱)\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x}).

  1. 1.

    If 𝐕(A[𝐱])𝐕(ΠS)\mathbf{V}_{\mathbb{C}}(A_{\mathbb{R}[\mathbf{x}]})\setminus\mathbf{V}_{\mathbb{C}}(\mathrm{\Pi}S) is a totally real constructible set, then 𝐕(A[𝐱])𝐕(ΠS)¯-euc\overline{\mathbf{V}_{\mathbb{R}}(A_{\mathbb{R}[\mathbf{x}]})\setminus\mathbf{V}_{\mathbb{R}}(\mathrm{\Pi}S)}^{\mathbb{R}\text{-euc}} =𝐕((A[𝐱]):S)=\mathbf{V}_{\mathbb{R}}((A_{\mathbb{R}[\mathbf{x}]}):S^{\infty}) is invariant.

  2. 2.

    If 𝐕(A[𝐱])\mathbf{V}_{\mathbb{R}}(A_{\mathbb{R}[\mathbf{x}]}) is irreducible over \mathbb{R} and 𝐕(A[𝐱])𝐕(ΠS)\mathbf{V}_{\mathbb{R}}(A_{\mathbb{R}[\mathbf{x}]})\setminus\mathbf{V}_{\mathbb{R}}(\mathrm{\Pi}S) is nonempty (i.e., 𝒞[𝐱]\mathcal{C}_{\mathbb{R}[\mathbf{x}]} has a real solution), then 𝐕(A[𝐱])𝐕(ΠS)¯-euc=𝐕((A[𝐱]):S)\overline{\mathbf{V}_{\mathbb{R}}(A_{\mathbb{R}[\mathbf{x}]})\setminus\mathbf{V}_{\mathbb{R}}(\mathrm{\Pi}S)}^{\mathbb{R}\text{-euc}}=\mathbf{V}_{\mathbb{R}}((A_{\mathbb{R}[\mathbf{x}]}):S^{\infty}) =𝐕(A[𝐱])=\mathbf{V}_{\mathbb{R}}(A_{\mathbb{R}[\mathbf{x}]}) is invariant.

  3. 3.

    Suppose [A][𝐱]=(A[𝐱])[A]\cap\mathbb{R}[\mathbf{x}]=(A_{\mathbb{R}[\mathbf{x}]}) and for each qA[𝐱]q\in A_{\mathbb{R}[\mathbf{x}]} and monomial txitx_{i}^{\prime} in the derivative qq^{\prime}, we have t(xifi(𝐱))[A]t(x_{i}^{\prime}-f_{i}(\mathbf{x}))\in[A]. Then 𝐕(A[𝐱])\mathbf{V}_{\mathbb{R}}(A_{\mathbb{R}[\mathbf{x}]}) is invariant. (The first condition strengthens Rosenfeld’s lemma (Lemma 82) and the second strengthens the requirement 𝐱𝐟(𝐱)[A]:S\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x})\in[A]:S^{\infty} from Theorem 86.)

Proof.
  1. 1.

    The following chain of equalities establishes the claim:

    𝐕(A[𝐱])𝐕(ΠS)¯-euc\displaystyle\overline{\mathbf{V}_{\mathbb{R}}(A_{\mathbb{R}[\mathbf{x}]})\setminus\mathbf{V}_{\mathbb{R}}(\mathrm{\Pi}S)}^{\mathbb{R}\text{-euc}} =𝐕(A[𝐱])𝐕(ΠS)¯\displaystyle=\overline{\mathbf{V}_{\mathbb{R}}(A_{\mathbb{R}[\mathbf{x}]})\setminus\mathbf{V}_{\mathbb{R}}(\mathrm{\Pi}S)}^{\mathbb{R}}      (Lemma 13)
    =𝐕(A[𝐱])𝐕(ΠS)¯n\displaystyle=\overline{\mathbf{V}_{\mathbb{R}}(A_{\mathbb{R}[\mathbf{x}]})\setminus\mathbf{V}_{\mathbb{R}}(\mathrm{\Pi}S)}^{\mathbb{C}}\cap\mathbb{R}^{n}      (Lemma 19)
    =𝐕(A[𝐱])𝐕(ΠS)¯n\displaystyle=\overline{\mathbf{V}_{\mathbb{C}}(A_{\mathbb{R}[\mathbf{x}]})\setminus\mathbf{V}_{\mathbb{C}}(\mathrm{\Pi}S)}^{\mathbb{C}}\cap\mathbb{R}^{n}      (totally real constructible set)
    =𝐕((A[𝐱]):S)n\displaystyle=\mathbf{V}_{\mathbb{C}}((A_{\mathbb{R}[\mathbf{x}]})_{\mathbb{C}}:S^{\infty})\cap\mathbb{R}^{n}      (Lemma 28 (2))
    =𝐕((A[𝐱]):S)n\displaystyle=\mathbf{V}_{\mathbb{C}}((A_{\mathbb{R}[\mathbf{x}]}):S^{\infty})\cap\mathbb{R}^{n}      (Lemma 31)
    =𝐕((A[𝐱]):S),\displaystyle=\mathbf{V}_{\mathbb{R}}((A_{\mathbb{R}[\mathbf{x}]}):S^{\infty}),

    which is invariant by the regular invariant theorem.

  2. 2.

    Since 𝐕(A[𝐱])𝐕(ΠS)¯-euc𝐕((A[𝐱]):S)𝐕(A[𝐱])\overline{\mathbf{V}_{\mathbb{R}}(A_{\mathbb{R}[\mathbf{x}]})\setminus\mathbf{V}_{\mathbb{R}}(\mathrm{\Pi}S)}^{\mathbb{R}\text{-euc}}\subseteq\mathbf{V}_{\mathbb{R}}((A_{\mathbb{R}[\mathbf{x}]}):S^{\infty})\subseteq\mathbf{V}_{\mathbb{R}}(A_{\mathbb{R}[\mathbf{x}]}) by Lemma 87, it suffices by the regular invariant theorem to prove equality of the first and last sets. As in part 1, the real Euclidean closure equals the real Zariski closure. Then 𝐕(A[𝐱])𝐕(ΠS)¯\overline{\mathbf{V}_{\mathbb{R}}(A_{\mathbb{R}[\mathbf{x}]})\setminus\mathbf{V}_{\mathbb{R}}(\mathrm{\Pi}S)}^{\mathbb{R}} equals 𝐕(A[𝐱])\mathbf{V}_{\mathbb{R}}(A_{\mathbb{R}[\mathbf{x}]}) by Lemma 16 since by hypothesis 𝐕(A[𝐱])\mathbf{V}_{\mathbb{R}}(A_{\mathbb{R}[\mathbf{x}]}) is irreducible and 𝐕(A[𝐱])𝐕(ΠS)\mathbf{V}_{\mathbb{R}}(A_{\mathbb{R}[\mathbf{x}]})\setminus\mathbf{V}_{\mathbb{R}}(\mathrm{\Pi}S) is nonempty.

  3. 3.

    As indicated, the hypotheses are chosen to mimic the proof of the regular invariant theorem using (A[𝐱])(A_{\mathbb{R}[\mathbf{x}]}) instead of (A[𝐱]):S(A_{\mathbb{R}[\mathbf{x}]}):S^{\infty}. In particular, let pA[𝐱]p\in A_{\mathbb{R}[\mathbf{x}]} with the goal of showing p˙(A[𝐱])\dot{p}\in(A_{\mathbb{R}[\mathbf{x}]}). (By Lemma 47 it suffices to consider generators of (A[𝐱])(A_{\mathbb{R}[\mathbf{x}]}).) Now p[A]p^{\prime}\in[A] and it follows from the assumption about monomials in derivatives of elements of A[𝐱]A_{\mathbb{R}[\mathbf{x}]} that p˙[A]\dot{p}\in[A]. (Replace each xix_{i}^{\prime} in pp^{\prime} with xifi(𝐱)+fi(𝐱)x_{i}^{\prime}-f_{i}(\mathbf{x})+f_{i}(\mathbf{x}) and distribute. The assumption about monomials implies that p=p˙+an element of [A]p^{\prime}=\dot{p}+\text{an element of }[A].) Since p˙\dot{p} is nondifferential and by assumption [A][𝐱]=(A[𝐱])[A]\cap\mathbb{R}[\mathbf{x}]=(A_{\mathbb{R}[\mathbf{x}]}), we conclude that p˙(A[𝐱])\dot{p}\in(A_{\mathbb{R}[\mathbf{x}]}).

Remark 89.

A common way for [A][𝐱]=(A[𝐱])[A]\cap\mathbb{R}[\mathbf{x}]=(A_{\mathbb{R}[\mathbf{x}]}) to hold is for (A[𝐱])[𝐱](A_{\mathbb{R}[\mathbf{x}]})\unlhd\,\mathbb{R}[\mathbf{x}] to be a prime ideal containing no element of SS. Clearly (A[𝐱])[A][𝐱](A_{\mathbb{R}[\mathbf{x}]})\subseteq[A]\cap\mathbb{R}[\mathbf{x}]. For the other containment, note that [A][𝐱]([A]:S)[𝐱][A]\cap\mathbb{R}[\mathbf{x}]\subseteq({[A]}:S^{\infty}{})\cap\mathbb{R}[\mathbf{x}], which equals ((A):S)[𝐱]({(A)}:S^{\infty}{})\cap\mathbb{R}[\mathbf{x}] by Rosenfeld’s lemma (see Remark 83). In turn, ((A):S)[𝐱]=(A[𝐱]):S=(A[𝐱])({(A)}:S^{\infty}{})\cap\mathbb{R}[\mathbf{x}]={(A_{\mathbb{R}[\mathbf{x}]})}:S^{\infty}{}=(A_{\mathbb{R}[\mathbf{x}]}) by Lemma 85, Lemma 27, and the fact that (A[𝐱])(A_{\mathbb{R}[\mathbf{x}]}) is prime and has no element of SS.

We illustrate Theorems 86 and 88 with a nontrivial example from the physical sciences. The various hypotheses–in spite of their seemingly technical statements–are all satisfied and readily checked.

3.3 Example: Lorenz equations

The ODEs x=σ(yx),y=ρxyxz,z=xyβzx^{\prime}=\sigma(y-x),y^{\prime}=\rho x-y-xz,z^{\prime}=xy-\beta z comprise the famous Lorenz equations [67]. Depending on the parameters, this nonlinear system can display widely varying behavior, including chaotic dynamics [68]. The literature also contains studies of algebraic invariants for the Lorenz system [69, 70] . The benchmark collection from [71] considers the parameters σ=1,ρ=2,β=1\sigma=1,\rho=2,\beta=1, yielding the particular equations x=yx,y=2xyxz,z=xyzx^{\prime}=y-x,y^{\prime}=2x-y-xz,z^{\prime}=xy-z that we abbreviate as 𝐱=𝐟(𝐱)\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x}).

Fix an orderly ranking with x>y>zx>y>z. We analyze A={y2x+y+xz,zxy+z,2x2y2z2},S={x}A=\{y^{\prime}-2x+y+xz,z^{\prime}-xy+z,2x^{2}-y^{2}-z^{2}\},S=\{x\}. Thus A[𝐱]={2x2y2z2}A_{\mathbb{R}[\mathbf{x}]}=\{2x^{2}-y^{2}-z^{2}\}. We discuss how we obtained these sets in Section 4.2; for now we take them as given and confirm the hypotheses of our preceding theorems.

We claim 𝒞:=(A=0,S0)\mathcal{C}:=(A=0,S\neq 0) satisfies the regular invariant theorem (Theorem 86) and each part of Theorem 88. In particular, the strongest conclusion holds: 𝐕(A[𝐱])𝐕(ΠS)¯-euc=𝐕((A[𝐱]):S)=𝐕(A[𝐱])\overline{\mathbf{V}_{\mathbb{R}}(A_{\mathbb{R}[\mathbf{x}]})\setminus\mathbf{V}_{\mathbb{R}}(\mathrm{\Pi}S)}^{\mathbb{R}\text{-euc}}=\mathbf{V}_{\mathbb{R}}((A_{\mathbb{R}[\mathbf{x}]}):S^{\infty})=\mathbf{V}_{\mathbb{R}}(A_{\mathbb{R}[\mathbf{x}]}) is invariant with respect to 𝐱=𝐟(𝐱)\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x}).

(Theorem 86 applies) Clearly, 𝒞\mathcal{C} is an explicit regular differential system over \mathbb{R} with nondifferential inequations. Differential polynomials y2x+y+xzy^{\prime}-2x+y+xz and zxy+zz^{\prime}-xy+z belong to AA, but the presence of p:=2x2y2z2p:=2x^{2}-y^{2}-z^{2} implies that xy+xx^{\prime}-y+x cannot also be in AA lest AA not be partially reduced. However, we can check xy+x[A]:Sx^{\prime}-y+x\in{[A]}:S^{\infty}{} with standard computer algebra systems (CAS) by confirming x(xy+x)(y2x+y+xz,zxy+z,2x2y2z2,4xx2yy2zz=(2x2y2z2))x(x^{\prime}-y+x)\in(y^{\prime}-2x+y+xz,z^{\prime}-xy+z,2x^{2}-y^{2}-z^{2},4xx^{\prime}-2yy^{\prime}-2zz^{\prime}=(2x^{2}-y^{2}-z^{2})^{\prime}), where x,y,zx^{\prime},y^{\prime},z^{\prime} are new algebraic indeterminates. That is, we consider ideal membership in the nondifferential polynomial ring [x,y,z,x,y,z]\mathbb{R}[x,y,z,x^{\prime},y^{\prime},z^{\prime}]. This establishes 𝐱𝐟(𝐱)[A]:S\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x})\in[A]:S^{\infty} and Theorem 86 implies that 𝐕((A[𝐱]):S)\mathbf{V}_{\mathbb{R}}((A_{\mathbb{R}[\mathbf{x}]}):S^{\infty}) is an algebraic invariant of 𝐱=𝐟(𝐱)\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x}).

(Theorem 88 applies) To check the additional hypotheses in Theorem 88, we first show that p=2x2y2z2[𝐱]p=2x^{2}-y^{2}-z^{2}\in\mathbb{R}[\mathbf{x}] is irreducible over \mathbb{C}. (The weaker condition of irreducibility over \mathbb{R} suffices for parts 2 and 3 of Theorem 88, but we prefer to prove the stronger result that is helpful for part 1.) In this case it is simple to work directly: reducibility would imply that p=(a1x+b1y+c1z)(a2x+b2y+c2z)p=(a_{1}x+b_{1}y+c_{1}z)(a_{2}x+b_{2}y+c_{2}z) for some ai,bi,cia_{i},b_{i},c_{i}\in\mathbb{C}. But distributing and comparing to the coefficients of 2x2y2z22x^{2}-y^{2}-z^{2} gives an inconsistent system: a1a2=2,b1b2=c1c2=1,a1b2+a2b1=a1c2+a2c1=b1c2+b2c1=0.a_{1}a_{2}=2,b_{1}b_{2}=c_{1}c_{2}=-1,a_{1}b_{2}+a_{2}b_{1}=a_{1}c_{2}+a_{2}c_{1}=b_{1}c_{2}+b_{2}c_{1}=0. (Inconsistency is conveniently shown by using a CAS to conclude 1(a1a22,b1b2+1,c1c2+1,a1b2+a2b1,a1c2+a2c1,b1c2+b2c1))1\in(a_{1}a_{2}-2,b_{1}b_{2}+1,c_{1}c_{2}+1,a_{1}b_{2}+a_{2}b_{1},a_{1}c_{2}+a_{2}c_{1},b_{1}c_{2}+b_{2}c_{1})). Thus the polynomial pp and the variety 𝐕(A[𝐱])\mathbf{V}_{\mathbb{C}}(A_{\mathbb{R}[\mathbf{x}]}) are irreducible over \mathbb{C}.

  1. 1.

    (Part 1) Since 𝐕(A[𝐱])\mathbf{V}_{\mathbb{C}}(A_{\mathbb{R}[\mathbf{x}]}) only has one irreducible component, we just need to find one real smooth point to prove that 𝐕(A[𝐱])\mathbf{V}_{\mathbb{C}}(A_{\mathbb{R}[\mathbf{x}]}) (and hence 𝐕(A[𝐱])𝐕(ΠS)\mathbf{V}_{\mathbb{C}}(A_{\mathbb{R}[\mathbf{x}]})\setminus\mathbf{V}_{\mathbb{C}}(\mathrm{\Pi}S), by Lemma 46) is totally real. An obvious choice is (1,1,1)3(1,1,1)\in\mathbb{R}^{3}, which is smooth because (p)=(A[𝐱])(p)=(A_{\mathbb{R}[\mathbf{x}]}) is prime (and hence radical) and (px,py,pz)(\frac{\partial p}{\partial x},\frac{\partial p}{\partial y},\frac{\partial p}{\partial z}) evaluated at (1,1,1)(1,1,1) is (4,2,2)𝟎(4,-2,-2)\neq\mathbf{0}. Alternatively, 𝐕(A[𝐱])\mathbf{V}_{\mathbb{C}}(A_{\mathbb{R}[\mathbf{x}]}) is totally real by Theorem 44 since pp is irreducible, p(1,0,0)>0p(1,0,0)>0, and p(0,1,0)<0p(0,1,0)<0. It follows that 𝒞\mathcal{C} satisfies Theorem 88 (1).

  2. 2.

    (Part 2) Irreducibility over \mathbb{C} implies irreducibility over \mathbb{R} and (1,1,1)𝐕(A[𝐱])𝐕(ΠS)(1,1,1)\in\mathbf{V}_{\mathbb{R}}(A_{\mathbb{R}[\mathbf{x}]})\setminus\mathbf{V}_{\mathbb{R}}(\mathrm{\Pi}S), so 𝒞\mathcal{C} satisfies part 2.

  3. 3.

    (Part 3) Ideal (A[𝐱])(A_{\mathbb{R}[\mathbf{x}]}) is prime and (A[𝐱])S(A_{\mathbb{R}[\mathbf{x}]})\cap S is empty since 2x2y2z22x^{2}-y^{2}-z^{2} does not divide xx. Remark 89 thus implies that [A][𝐱]=(A[𝐱])[A]\cap\mathbb{R}[\mathbf{x}]=(A_{\mathbb{R}[\mathbf{x}]}).

    Lastly, since (2x2y2z2)=4xx2yy2zz(2x^{2}-y^{2}-z^{2})^{\prime}=4xx^{\prime}-2yy^{\prime}-2zz^{\prime}, we must show that 4x(xy+x),2y(y2x+y+xz)4x(x^{\prime}-y+x),-2y(y^{\prime}-2x+y+xz), and 2z(zxy+z)-2z(z^{\prime}-xy+z) belong to [A][A]. This was done above in our proof of 𝐱𝐟(𝐱)[A]:S\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x})\in[A]:S^{\infty}.

4 The Rosenfeld-Gröbner Algorithm for Algebraic Invariants

A modified version of the Rosenfeld-Gröbner algorithm (RGA) of Boulier et al. [44, 37] is our main tool for differential elimination. We explain the basic ideas behind RGA and then formulate 𝚁𝙶𝙰o{\tt RGA}_{o}, our handcrafted version that produces explicit regular differential systems with nondifferential inequations (and hence invariants by the regular invariant theorem). The subscript o stands for “ordinary” because our setting involves ODEs of a special form.

4.1 𝚁𝙶𝙰o{\tt RGA}_{o} for Explicit Systems

Unlike Gröbner basis techniques that output generators of an ideal, RGA uses a differential generalization of characteristic sets. Given a ranking, a characteristic set CC of ideal II is by definition a minimal-rank autoreduced subset of II (Remark 70). Such a CC is not necessarily unique and might not be a generating set of II, but CC is nonempty, finite, and pseudoreduces every element of II to zero [29, p. 175]. The same definition and properties hold for differential characteristic sets if we use differential rankings, differential ideals, and differential pseudoreduction. Given a differential ranking and a system of polynomial differential equations and inequations, RGA outputs a finite collection of special differential characteristic sets called regular differential chains [72] or simply chains; see parts 2, 3 of Theorem 90. (Recall Definition 79 and Theorem 81 for the nondifferential version.) Multiple chains in the output come from case splits over the vanishing of initials and separants. For this reason, RGA typically outputs a “generic” chain (obtained by placing initials and separants with the inequations as much as possible while maintaining consistency) and several more specific ones; see [73] for precise definitions and Section 4.2 for an example that continues the one in Section 3.3.

Regular differential chains contain important “geometric” information. Take an input differential system (A=0,S0)(A=0,S\neq 0) of equations and inequations and perform RGA. Then a differential polynomial pp is zero at all points that satisfy (A=0,S0)(A=0,S\neq 0) if and only if pp is differentially pseudoreduced to zero by each chain that RGA returns given input (A=0,S0)(A=0,S\neq 0) [44, Cor. 3 and Thm. 9]. By the differential Nichtnullstellensatz (Theorem 63), this gives an algorithm for testing radical differential saturation ideal membership. This is especially noteworthy because, unlike the algebraic case, general differential ideal membership is undecidable (even for finitely generated differential ideals) [74].

We cite the important properties guaranteed by RGA. Compare Theorem 90 below to Theorems 96 and 98, our main results in this section:

Theorem 90 ([44, Thm. 9]).

Let KK be a differential field of characteristic 0, let A,SK{𝐱}A,S\subseteq K\{\mathbf{x}\} be finite with 0S0\notin S, and fix a differential ranking.

Then RGA applied to (A,S)(A,S) returns differential systems (A1,S1),,(Ar,Sr)(A_{1},S_{1}),\ldots,(A_{r},S_{r}) such that

  1. 1.

    [A]:S=([A1]:S1)([Ar]:Sr)\sqrt{{[A]}:S^{\infty}}=({[A_{1}]}:S_{1}^{\infty})\cap\cdots\cap({[A_{r}]}:S_{r}^{\infty}),

  2. 2.

    each (Ai,Si)(A_{i},S_{i}) is a regular differential system (together with item 3, this makes each AiA_{i} a regular differential chain), and

  3. 3.

    for all pK{𝐱}p\in K\{\mathbf{x}\} and 1ir1\leq i\leq r, we have p[Ai]:Sip\in{[A_{i}]}:S_{i}^{\infty} if and only if the differential pseudoremainder of pp with respect to AiA_{i} is 0.

Strictly speaking, for differential elimination results to be computationally meaningful we must be able to algorithmically add, multiply, divide, differentiate, and check equality with 0. We always tacitly assume this about the finitely many differential field elements that appear during a computation. (Our inputs are finite sets of differential polynomials and so there are only finitely many coefficients; all intermediate elements result from these via arithmetic operations or differentiation.) The assumption is mild because in practice coefficients typically belong to \mathbb{Q}.

The original authors of RGA gave two versions of the algorithm [37, pp. 162-3] [44, p. 111]. RGA has been implemented in the Maple computer algebra system, where it forms the heart of the 𝙳𝚒𝚏𝚏𝚎𝚛𝚎𝚗𝚝𝚒𝚊𝚕𝙰𝚕𝚐𝚎𝚋𝚛𝚊{\tt DifferentialAlgebra} package [75]. While this tool is convenient (for example, we use it in the example from Section 4.2), the proprietary nature of Maple impedes a full analysis of the implementation and its performance. As an alternative, Boulier makes freely available the C libraries on which the Maple implementation is based [76]. RGA has proven its versatility by admitting refinements and extensions over the past two decades [77, 78, 44, 79, 80, 81].

Published applications of RGA include parameter estimation for continuous dynamical systems [82, 83] and preprocessing of systems for later numerical solution [84]. The literature contains various case studies from control theory [85], medicine [86], and mathematical biology [64].

We give a modified version of RGA that we call 𝚁𝙶𝙰o{\tt RGA}_{o} and that is well-suited for analyzing systems in explicit form. In some ways our algorithm is simpler than those in the literature. In particular, we produce regular differential systems but do not guarantee that they are regular differential chains. This helps us control the form of the output and more easily obtain explicit bounds. Our application to algebraic invariants (culminating in Theorem 98) does not require radical differential ideal membership testing, so regular differential systems suffice for our use case.

First we describe a purely algebraic algorithm, 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate}, that we use as a subroutine in 𝚁𝙶𝙰o{\tt RGA}_{o}. The general structure of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} mirrors that of 𝚁𝙶𝙰o{\tt RGA}_{o} but does not have to deal with derivatives. After presenting both algorithms, proving them correct, and interpreting the output, we analyze their complexity.

Intuitively, 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} is a recursive divide-and-conquer algorithm that decomposes the radical of a saturation ideal into an intersection of radical ideals determined by regular algebraic systems. (The same high-level description also applies to 𝚁𝙶𝙰o{\tt RGA}_{o}, but in that case using differential polynomial rings and ideals.) Case splits are based on assigning initials and separants either to the set of equations or inequations.

Remark 91.

To facilitate the complexity analysis in Section 4.3 (e.g., Theorem 101), we use the following convention in describing 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} and 𝚁𝙶𝙰o{\tt RGA}_{o}: unless stated otherwise, “pseudodivision” refers to a single step of pseudodivision as discussed in Remark 72.

𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate}:

  • Choose the ranking xn>xn1>>x1x_{n}>x_{n-1}>\cdots>x_{1}. (The particular choice is not essential; we specify a ranking for concreteness.)

  • Input: a finite set of polynomials A={p1,p2,,pm}[𝐱]A=\{p_{1},p_{2},\ldots,p_{m}\}\subseteq\mathbb{R}[\mathbf{x}] that determines the equations p1=0,,pm=0p_{1}=0,\ldots,p_{m}=0. Let SS be a finite set of polynomials in [𝐱]{0}\mathbb{R}[\mathbf{x}]\setminus\{0\} corresponding to inequations. (That is, the input is the algebraic system (A=0,S0)(A=0,S\neq 0)). We abuse terminology slightly by calling AA itself a set of equations and SS itself a set of inequations.

  • Output: Pairs (A1,S1),,(Ar,Sr)(A_{1},S_{1}),\ldots,(A_{r},S_{r}) such that A1,,Ar[𝐱],S1,,Sr[𝐱]{0}A_{1},\ldots,A_{r}\subseteq\mathbb{R}[\mathbf{x}],S_{1},\ldots,S_{r}\subseteq\mathbb{R}[\mathbf{x}]\setminus\{0\} are finite sets of polynomials and

    (A):S=((A1):S1)((Ar):Sr),\sqrt{{(A)}:S^{\infty}}=({(A_{1})}:S_{1}^{\infty})\cap\cdots\cap({(A_{r})}:S_{r}^{\infty}),

    where (Ai=0,Si0)(A_{i}=0,S_{i}\neq 0) is a regular algebraic system (i.e., AiA_{i} is triangular and SiS_{i} contains at least the separants of AiA_{i}).

  1. 1.

    If AA is already triangular and separant sqs_{q} belongs to SS for every qAq\in A, then return (A,S)(A,S).

    Otherwise, choose the highest-ranking leader xx that either appears in multiple elements of AA or appears in only one qAq\in A but sqSs_{q}\notin S. We call xx the target variable for the pair (A,S)(A,S). Choose some qAq\in A that has minimal degree in xx among all elements of AA having leader xx; if there are multiple such polynomials, pick one that has least total degree among those with minimal degree in xx (again there might be several).

    We define two auxiliary sets that we need in steps 2 and 3.

    • Let A~:=(A{iq,qiqxdegx(q)}){q}\widetilde{A}:=(A\cup\{i_{q},q-i_{q}x^{deg_{x}(q)}\})\setminus\{q\}, where qiqxdegx(q)q-i_{q}x^{deg_{x}(q)} is the tail of qq (i.e., what is left of qq if we substitute zero for the initial of qq).

      The notation degx(q)deg_{x}(q) represents the degree of variable xx in polynomial qq. The set A~\widetilde{A} is finite; the parentheses around A{iq,}A\cup\{i_{q},\ldots\} separate the union from the set difference and do not indicate an ideal. Note that the solutions of (A~=0,S0)(\widetilde{A}=0,S\neq 0) are the same as those of (A{iq}=0,S0)(A\cup\{i_{q}\}=0,S\neq 0). This replacement is not technically pseudodivision, but it behaves similarly and in Theorem 93 (correctness of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate}) and Lemma 94 we analyze this case together with the pseudodivision steps.

      Note that xx does not appear in iqi_{q} and degx(qiqxdegx(q))<degx(q)deg_{x}(q-i_{q}x^{deg_{x}(q)})<deg_{x}(q). Also note that the target variable of (A~,S)(\widetilde{A},S) could still be xx or might have strictly lower rank, but cannot have higher rank than xx.

    • Let S^:=S{iq}\hat{S}:=S\cup\{i_{q}\}. (Note that iqi_{q} is not 0.)

  2. 2.

    If xx appears in multiple elements of AA, choose some pqp\neq q that has maximal degree in xx among all elements of AA having leader xx. If there are multiple such polynomials, pick any one that has greatest total degree among those with maximal degree in xx (again there might be several). Now pseudodivide pp by qq and let rr be the resulting pseudoremainder. Update the equations by omitting pp and including rr; let A^:=(A{r}){p}\hat{A}:=(A\cup\{r\})\setminus\{p\}.

    Note that degx(r)<degx(p)deg_{x}(r)<deg_{x}(p) and degx(q)degx(p)deg_{x}(q)\leq deg_{x}(p), but we do not guarantee degx(r)<degx(q)deg_{x}(r)<deg_{x}(q) because we use a single step of pseudodivision (Remark 91) and rr is not necessarily reduced with respect to qq.

    Return the union 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎(A~,S)𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎(A^{sq},S^){\tt Triangulate}(\widetilde{A},S)\,\cup\,{\tt Triangulate}(\hat{A}\cup\{s_{q}\},\hat{S})\,\cup
    𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎(A^,S^{sq}){\tt Triangulate}(\hat{A},\hat{S}\cup\{s_{q}\}).

    (Note: It is convenient to describe these recursive calls in terms of splitting the computation into different branches. Here in step 2 we have split twice. On one branch we included iqi_{q} with the equations, left the inequations SS unchanged, and called 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} on the updated system (A~,S)(\widetilde{A},S). On the other branch we included iqi_{q} with the inequations, pseudodivided pp by qq, and then split again over including sqs_{q} with the equations or the inequations. This led to 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎(A^{sq},S^){\tt Triangulate}(\hat{A}\cup\{s_{q}\},\hat{S}) and 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎(A^,S^{sq}){\tt Triangulate}(\hat{A},\hat{S}\cup\{s_{q}\}), respectively.)

  3. 3.

    If qq is the lone element of AA with leader xx, then we consider two cases:

    1. (a)

      If sqS^s_{q}\in\hat{S}, return the union 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎(A~,S)𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎(A,S^){\tt Triangulate}(\widetilde{A},S)\,\cup\,{\tt Triangulate}(A,\hat{S}).

    2. (b)

      If sqS^s_{q}\notin\hat{S}, then 0<degx(sq)<degx(q)0<deg_{x}(s_{q})<deg_{x}(q) because if xx does not appear in sqs_{q}, then degx(q)=1deg_{x}(q)=1 and sq=iqS^s_{q}=i_{q}\in\hat{S}. Pseudodivide qq by sqs_{q} and let rr be the resulting pseudoremainder; note that degx(r)<degx(q)deg_{x}(r)<deg_{x}(q).

      Return the union 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎(A~,S)𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎((A{sq,r}){q},S^)𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎(A,S^{sq}){\tt Triangulate}(\widetilde{A},S)\,\cup\,{\tt Triangulate}((A\cup\{s_{q},r\})\setminus\{q\},\hat{S})\,\cup\,{\tt Triangulate}(A,\hat{S}\cup\{s_{q}\}).

      (Note: As in step 2, we say that we have split over including iqi_{q} with the equations or inequations, and then likewise over sqs_{q}.)

Remark 92.

Though not necessary for correctness of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate}, in practice it is essential to trim inconsistent branches (i.e., pairs (A=0,S0)(A=0,S\neq 0) that have no solution in the reals) as the algorithm progresses. Discarding such branches does not lose any solutions. Analogously, state-of-the-art versions of Buchberger’s algorithm for Gröbner bases avoid redundant SS-polynomial calculations by finding an appropriate subset of the possibilities [30, Sect. 2.10]. A simple optimization of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} would be to omit branches that add a nonzero constant to the equations or 0 to the inequations. Likewise, we can spot inconsistency by inspection if a nonzero constant multiple of a polynomial in the equations shows up in the inequations or vice versa. In general, though, it may be necessary to compute a regular chain (see Theorem 81) or a Gröbner basis of (B):SB{(B)}:S_{B}^{\infty} to determine if (B=0,SB0)(B=0,S_{B}\neq 0) is solvable in \mathbb{C} (in \mathbb{R} would require even more, such as real quantifier elimination [25, Prop. 5.2.2]). These calculations can be expensive, so good judgment is required to pick a strategy for efficiently detecting most of the inconsistent branches. In any case, the worst-case complexity (Theorem 101) is not affected by the lack of consistency checking in 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} since we must always take into account the possibility of splitting.

We now prove termination and correctness of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate}. The termination argument is somewhat delicate because many different cases can emerge during a run of the algorithm. To ensure termination we desire a well ordering that strictly decreases in all cases we could encounter. This demands multiple criteria for ranking sets of equations and inequations and requires a cleverly crafted ordering of the list at the beginning of Theorem 93’s proof.

Theorem 93 (Termination and correctness of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate}).

Given finite sets of polynomials A[𝐱],S[𝐱]{0}A\subseteq\mathbb{R}[\mathbf{x}],S\subseteq\mathbb{R}[\mathbf{x}]\setminus\{0\}, algorithm 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} terminates and the output (A1,S1),,(Ar,Sr)(A_{1},S_{1}),\ldots,(A_{r},S_{r}) satisfies

(A):S=((A1):S1)((Ar):Sr),\sqrt{{(A)}:S^{\infty}}=({(A_{1})}:S_{1}^{\infty})\cap\cdots\cap({(A_{r})}:S_{r}^{\infty}),

where A1,,Ar[𝐱],S1,,Sr[𝐱]{0}A_{1},\ldots,A_{r}\subseteq\mathbb{R}[\mathbf{x}],S_{1},\ldots,S_{r}\subseteq\mathbb{R}[\mathbf{x}]\setminus\{0\}, and (Ai=0,Si0)(A_{i}=0,S_{i}\neq 0) is a regular algebraic system (i.e., AiA_{i} is triangular and SiS_{i} contains at least the separants of AiA_{i}).

Proof.

We first prove termination. This follows from a partial well ordering on pairs (B,SB)(B,S_{B}) where B,SB[𝐱]B,S_{B}\subseteq\mathbb{R}[\mathbf{x}] are finite sets of polynomials. Given such pairs (B1,SB1),(B_{1},S_{B_{1}}), (B2,SB2)(B_{2},S_{B_{2}}), we say that (B2,SB2)(B_{2},S_{B_{2}}) has higher rank than (B1,SB1)(B_{1},S_{B_{1}}) and write (B1,SB1)<(B2,SB2)(B_{1},S_{B_{1}})<(B_{2},S_{B_{2}}) if one of the following conditions holds. (Recall that the target variable of pair (B,SB)(B,S_{B}) is the variable xx of highest rank such that either BB contains multiple elements having leader xx or BB has only one element pp with leader xx and the separant sps_{p} of pp does not belong to SBS_{B}.)

  1. 1.

    The target variable xx of (B2,SB2)(B_{2},S_{B_{2}}) has higher rank than the target variable yy of (B1,SB1)(B_{1},S_{B_{1}}).

  2. 2.

    The two pairs have the same target variable xx, but xx appears with strictly larger degree in B2B_{2}.

  3. 3.

    The target variable and maximal degree in the target are the same for both pairs, but B2B_{2} has strictly more elements with maximal degree in the target.

  4. 4.

    All the previous quantities are the same for both pairs, but B2B_{2} has strictly more elements whose leader is the target.

  5. 5.

    All the previous quantities are the same for both pairs, but an element of B2B_{2} with minimal nonzero degree in the target variable xx has strictly higher degree in xx than the corresponding element of B1B_{1}.

More formally, we are using {1,2,,n}×4\{1,2,\ldots,n\}\times\mathbb{N}^{4} ordered lexicographically with the standard orders on {1,2,,n}\{1,2,\ldots,n\} and \mathbb{N}. The subscript of the target variable belongs to {1,2,,n}\{1,2,\ldots,n\} and the four copies of \mathbb{N} represent the highest degree in the target variable, the number of elements with the highest degree in the target, the number of elements having the target as their leader, and the minimal degree in the target, respectively.

𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} recursively transforms the input pair (A,S)(A,S) into more refined pairs via finitely many splitting and pseudodivision operations. Thus to show termination it suffices to show that each recursive call in the body of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} acts on a pair of strictly lower rank than that of (A,S)(A,S).

We first note that in all cases the target variable can only remain the same or decrease. This is because we never remove anything from the inequations and the only variables that can appear in the elements added to the equations are the original target variable or variables of lower rank. If the target variable remains the same, then the maximal degree in the target must remain the same or decrease because anything we add to the equations has degree in the target that is strictly less than the original maximal degree in that variable. Hence we must show that one of the remaining quantities decreases if the quantities that lexicographically precede it stay the same.

  • Step 2 of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} deals with the case that AA has multiple elements with leader xx. First we produce the pair (A~,S)(\widetilde{A},S), where A~:=(A{iq,qiqxdegx(q)}){q}\widetilde{A}:=(A\cup\{i_{q},q-i_{q}x^{deg_{x}(q)}\})\setminus\{q\}, xx is the target variable of (A,S)(A,S), and qq is an element of AA having leader xx and minimal degree in xx. To see that (A~,S)<(A,S)(\widetilde{A},S)<(A,S), we observe that

    • If degx(q)deg_{x}(q) is maximal as well as minimal, then the number of elements of maximal degree in xx decreases because we removed qq, the initial iqi_{q} does not contain xx and degx(qiqxdegx(q))<degx(q)deg_{x}(q-i_{q}x^{deg_{x}(q)})<deg_{x}(q).

    • If degx(q)deg_{x}(q) is not maximal, then the number of elements of maximal degree in xx stays the same. If xx does not appear in qiqxdegx(q)q-i_{q}x^{deg_{x}(q)}, then the number of elements with xx as the leader decreases (we replaced qq with qiqxdegx(q)q-i_{q}x^{deg_{x}(q)} and xx does not appear in iqi_{q}). If xx does appear in qiqxdegx(q)q-i_{q}x^{deg_{x}(q)}, then the number of elements with xx as the leader stays the same, but the minimal degree in xx decreases (because degx(qiqxdegx(q))<degx(q))deg_{x}(q-i_{q}x^{deg_{x}(q)})<deg_{x}(q)).

    Step 2 also produces the pairs (A^{sq},S^)(\hat{A}\cup\{s_{q}\},\hat{S}) and (A^,S^{sq})(\hat{A},\hat{S}\cup\{s_{q}\}), where S^:=S{iq}\hat{S}:=S\cup\{i_{q}\} and A^:=(A{r}){p}\hat{A}:=(A\cup\{r\})\setminus\{p\} for pqp\neq q having maximal degree in xx and rr the pseudoremainder upon pseudodividing pp by qq. The number of elements having maximal degree in xx decreases because rr and sqs_{q} have strictly lower degree in xx than pp and we remove pp.

  • Step 3 of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} deals with the case that qq is the lone element of AA with leader xx.

    • If sqS^s_{q}\in\hat{S}, then step 3 produces the pair (A,S^)(A,\hat{S}). (We already have shown that (A~,S)<(A,S)(\widetilde{A},S)<(A,S), so here we just look at (A,S^)(A,\hat{S})). In this situation the target variable must decrease because qq is the only element of AA with leader xx and now sqs_{q} belongs to the inequations (so by definition xx is no longer a target variable).

    • If sqS^s_{q}\notin\hat{S}, then step 3 produces the pairs ((A{sq,r}){q},S^)((A\cup\{s_{q},r\})\setminus\{q\},\hat{S}) and (A,S^{sq})(A,\hat{S}\cup\{s_{q}\}), where xx appears in sqs_{q} and rr is the pseudoremainder upon pseudodividing qq by sqs_{q}. In the first instance, ((A{sq,r}){q},S^)<(A,S)((A\cup\{s_{q},r\})\setminus\{q\},\hat{S})<(A,S) because either the target variable decreases or it remains the same and the maximal degree in xx decreases (since degx(r)<degx(q),degx(sq)<degx(q)deg_{x}(r)<deg_{x}(q),deg_{x}(s_{q})<deg_{x}(q), and qq was the lone element of AA with leader xx). In the second, (A,S^{sq})<(A,S)(A,\hat{S}\cup\{s_{q}\})<(A,S) because the target variable must decrease (qq was the only element of AA with leader xx and now sqs_{q} belongs to the inequations).

This proves termination. We now establish the properties of the output systems (Ai=0,Si0)(A_{i}=0,S_{i}\neq 0).

Each AiA_{i} is triangular and SiS_{i} contains the separants of all elements of AiA_{i} (i.e., (Ai=0,Si0)(A_{i}=0,S_{i}\neq 0) is a regular algebraic system) because this is the base case that returns an explicit answer instead of a recursive call. (Note that 0Si0\notin S_{i} because we only ever add iqi_{q} or sqs_{q} to the inequations, and these are never the zero polynomial.)

Lastly, we show that the ideals (Ai):Si{(A_{i})}:S_{i}^{\infty} decompose (A):S\sqrt{{(A)}:S^{\infty}} as claimed. Observe that (A1):S1(Ar):Sr=((A1):S1)((Ar):Sr)\sqrt{{(A_{1})}:S_{1}^{\infty}}\cap\cdots\cap\sqrt{{(A_{r})}:S_{r}^{\infty}}=({(A_{1})}:S_{1}^{\infty})\cap\cdots\cap({(A_{r})}:S_{r}^{\infty}) because each (Ai):Hi{(A_{i})}:H_{i}^{\infty} is radical by Lazard’s lemma (Lemma 80). Each operation during a run of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} converts a system (B=0,SB0)(B=0,S_{B}\neq 0) into another system (B1=0,SB1=0)(B_{1}=0,S_{B_{1}}=0) or two systems (B1=0,SB1=0),(B2=0,SB2=0)(B_{1}=0,S_{B_{1}}=0),(B_{2}=0,S_{B_{2}}=0). By induction on the number of splitting and pseudodivision operations during a run of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate}, it suffices to confirm at each step that (B):SB=(B1):SB1\sqrt{{(B)}:S_{B}^{\infty}}=\sqrt{{(B_{1})}:S_{B_{1}}^{\infty}} or (B):SB=(B1):SB1(B2):SB2\sqrt{{(B)}:S_{B}^{\infty}}=\sqrt{{(B_{1})}:S_{B_{1}}^{\infty}}\cap\sqrt{{(B_{2})}:S_{B_{2}}^{\infty}}.

  1. 1.

    (Splitting over an initial or separant) Steps 2 and 3 both split the computation into branches, one where the initial iqi_{q} or separant sqs_{q} of a chosen polynomial qBq\in B is included with the equations BB and one where it is included with the inequations SBS_{B}. Thus by Theorem 30, we have, respectively,

    (B):S=(B,iq):S(B):(SB{iq})\sqrt{{(B)}:S^{\infty}}=\sqrt{{(B,i_{q})}:S^{\infty}}\cap\sqrt{{(B)}:(S_{B}\cup\{i_{q}\})^{\infty}}

    or

    (B):S=(B,sq):S(B):(SB{sq}).\sqrt{{(B)}:S^{\infty}}=\sqrt{{(B,s_{q})}:S^{\infty}}\cap\sqrt{{(B)}:(S_{B}\cup\{s_{q}\})^{\infty}}.
  2. 2.

    (Pseudodivision) Steps 2 and 3b of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} replace some gBg\in B with its pseudoremainder rgr_{g} upon pseudodividing by some hh, where hBh\in B and the initial ihSBi_{h}\in S_{B}. (In step 2, gg is pp and hh is qq while in step 3b, gg is qq and hh is sqs_{q}. In the latter case, the initial isqi_{s_{q}} of sqs_{q} is a nonzero constant multiple of iqi_{q} (which does belong to the inequations S^\hat{S}) because separants are partial derivatives with respect to the leader.)

    We must show

    (B):SB=((B{rg}){g}):SB.\sqrt{{(B)}:S_{B}^{\infty}}=\sqrt{{((B\cup\{r_{g}\})\setminus\{g\})}:S_{B}^{\infty}}. (1)

    By Proposition 73 (which makes explicit the relationship between a pseudoremainder and the original polynomials) there exist α[𝐱]\alpha\in\mathbb{R}[\mathbf{x}] and a product i~\widetilde{i} of factors of ihi_{h} such that (i~)gαh=rg(\widetilde{i})g-\alpha h=r_{g}. Thus for any point 𝐚n\mathbf{a}\in\mathbb{C}^{n} we see that 𝐚\mathbf{a} causes both gg and hh to vanish but not ihi_{h} if and only if 𝐚\mathbf{a} causes hh and rgr_{g} to vanish but not ihi_{h}. (If ih(𝐚)0i_{h}(\mathbf{a})\neq 0, then i~(𝐚)0\widetilde{i}(\mathbf{a})\neq 0 because i~\widetilde{i} is a product of factors of ihi_{h}.) Symbolically,

    𝐕(B)𝐕(ΠSB)\displaystyle\mathbf{V}_{\mathbb{C}}(B)\setminus\mathbf{V}_{\mathbb{C}}(\Pi S_{B}) =𝐕(B{rg}{g})𝐕(ΠSB).\displaystyle=\mathbf{V}_{\mathbb{C}}(B\cup\{r_{g}\}\setminus\{g\})\setminus\mathbf{V}_{\mathbb{C}}(\Pi S_{B}). (2)

    (Similar reasoning applies to Equation 4 in the proof of Theorem 94.) Then Equation 1 follows by Theorem 29 (Hilbert’s Nichtnullstellensatz, which links radicals of saturation ideals to solutions of systems of equations and inequations).

    Technically we don’t perform pseudodivision when converting (A{iq},S)(A\cup\{i_{q}\},S) to (A~,S)(\widetilde{A},S), but the outcome is analogous. (As noted in step 1 on p. 1, the solutions of (A~=0,S0)(\widetilde{A}=0,S\neq 0) are the same as those of (A{iq}=0,S0)(A\cup\{i_{q}\}=0,S\neq 0). See also the proof of Lemma 94 on p. 4.1.) Hence

    (A{iq}):S=((A{iq,qiqxdegx(q)}){q}):S=(A~):S.\sqrt{{(A\cup\{i_{q}\})}:S^{\infty}}=\sqrt{{((A\cup\{i_{q},q-i_{q}x^{deg_{x}(q)}\})\setminus\{q\})}:S^{\infty}}=\sqrt{{(\widetilde{A})}:S^{\infty}}.

This proves the claimed properties of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate}. ∎

We can now describe the full 𝚁𝙶𝙰o{\tt RGA}_{o} algorithm. 𝚁𝙶𝙰o{\tt RGA}_{o} eliminates ODEs in explicit form using differential pseudodivision; moreover, no new ODEs are introduced. Between pseudodivision steps, we apply 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} to the nondifferential elements of the current system. The computation recursively splits into multiple branches that yield different parts of the desired differential radical decomposition.

Importantly, the eliminated ODEs still belong to all differential saturation ideals that appear during the computation. This is ensured by a technical assumption on 𝐱𝐟(𝐱)\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x}) that is given in the input description below. (The correctness proof for 𝚁𝙶𝙰o{\tt RGA}_{o}, Theorem 96, shows how the assumption accomplishes this.) Without the assumption, the operations of 𝚁𝙶𝙰o{\tt RGA}_{o} could produce differential saturation ideals that do not satisfy the hypotheses of the regular invariant theorem (Theorem 86). In turn, that would break the connection between 𝚁𝙶𝙰o{\tt RGA}_{o} and algebraic invariants that we establish in Theorem 98.

𝚁𝙶𝙰o{\tt RGA}_{o}:

  • Choose the orderly differential ranking such that xn>xn1>>x1x_{n}>x_{n-1}>\cdots>x_{1}. (We will use the fact that the ranking is orderly to prove correctness, but the particular sequence of variables is not essential.)

  • Input: Let 𝐱=𝐟(𝐱)\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x}) be a polynomial vector field. Let A={𝐱~𝐟~(𝐱),p1,p2,A=\{\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x}),p_{1},p_{2}, ,pm}\ldots,p_{m}\} be a finite set where 𝐱~𝐟~(𝐱)\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x}) is a subset of 𝐱𝐟(𝐱)\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x}) and the p1,p_{1}, ,pm[𝐱]\ldots,p_{m}\in\mathbb{R}[\mathbf{x}] are nondifferential polynomials. Also, we have a finite set of nondifferential polynomials S[𝐱]{0}S\subseteq\mathbb{R}[\mathbf{x}]\setminus\{0\}. As in 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate}, the elements of AA correspond to equations and the elements of SS to inequations. Lastly, the “technical assumption” mentioned above: we assume that for each member xf(𝐱)x^{\prime}-f(\mathbf{x}) of 𝐱𝐟(𝐱)\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x}) we either have xf(𝐱)Ax^{\prime}-f(\mathbf{x})\in A (equivalently, xf(𝐱)𝐱~𝐟~(𝐱)x^{\prime}-f(\mathbf{x})\in\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x})) or

    s(xf(𝐱))=β(𝐱)+jγj(𝐱)(xjfj(𝐱))s(x^{\prime}-f(\mathbf{x}))=\beta(\mathbf{x})+\sum_{j}\gamma_{j}(\mathbf{x})(x_{j}^{\prime}-f_{j}(\mathbf{x}))

    for some sS,β(𝐱)[A[𝐱]]{𝐱},γj(𝐱)[𝐱],xj<xs\in S,\beta(\mathbf{x})\in\big{[}A\cap\mathbb{R}[\mathbf{x}]\big{]}\unlhd\,{\mathbb{R}}\{\mathbf{x}\},\gamma_{j}(\mathbf{x})\in\mathbb{R}[\mathbf{x}],x_{j}<x, and xjfj(𝐱)Ax_{j}^{\prime}-f_{j}(\mathbf{x})\in A. (This is a specific case of 𝐱𝐟(𝐱)[A]:S\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x})\in{[A]}:S^{\infty}. The key point is that for all xf(𝐱)𝐱𝐟(𝐱)x^{\prime}-f(\mathbf{x})\in\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x}), either xf(𝐱)x^{\prime}-f(\mathbf{x}) explicitly belongs to the equations AA or x=f(𝐱)x^{\prime}=f(\mathbf{x}) is implied by AA and the inequations SS.)

  • Output: Pairs (A1,S1),,(Ar,Sr)(A_{1},S_{1}),\ldots,(A_{r},S_{r}) such that A1,,Ar{𝐱},S1,,Sr[𝐱]{0}A_{1},\ldots,A_{r}\subseteq{\mathbb{R}}\{\mathbf{x}\},S_{1},\ldots,S_{r}\subseteq\mathbb{R}[\mathbf{x}]\setminus\{0\} are finite sets and

    [A]:S=([A1]:S1)([Ar]:Sr),\sqrt{{[A]}:S^{\infty}}=({[A_{1}]}:S_{1}^{\infty})\cap\cdots\cap({[A_{r}]}:S_{r}^{\infty}),

    where each (Ai=0,Si0)(A_{i}=0,S_{i}\neq 0) is a regular differential system. That is, AiA_{i} is partially reduced (no element contains a proper derivative of the leader of another element) and triangular (no two elements have the same leader), and SiS_{i} is partially reduced with respect to AiA_{i} and contains at least the separants of AiA_{i}. Moreover, the elements of AiA_{i} containing proper derivatives form a subset of 𝐱~𝐟~(𝐱)\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x}), and for each xf(𝐱)𝐱𝐟(𝐱)x^{\prime}-f(\mathbf{x})\in\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x}) and 1ir1\leq i\leq r we either have xf(𝐱)Aix^{\prime}-f(\mathbf{x})\in A_{i} or

    s^(xf(𝐱))=β^(𝐱)+jγ^j(𝐱)(xjfj(𝐱))\hat{s}(x^{\prime}-f(\mathbf{x}))=\hat{\beta}(\mathbf{x})+\sum_{j}\hat{\gamma}_{j}(\mathbf{x})(x_{j}^{\prime}-f_{j}(\mathbf{x}))

    for some s^Si,β^(𝐱)[Ai[𝐱]]{𝐱},γ^j(𝐱)[𝐱],xj<x\hat{s}\in S_{i},\hat{\beta}(\mathbf{x})\in\big{[}A_{i}\cap\mathbb{R}[\mathbf{x}]\big{]}\unlhd{\mathbb{R}}\{\mathbf{x}\},\hat{\gamma}_{j}(\mathbf{x})\in\mathbb{R}[\mathbf{x}],x_{j}<x, and xjfj(𝐱)Aix_{j}^{\prime}-f_{j}(\mathbf{x})\in A_{i}. (The proof of Theorem 96 shows that the technical assumption on 𝐱𝐟(𝐱)\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x}) at the start is preserved by each operation of 𝚁𝙶𝙰o{\tt RGA}_{o}, and hence holds of the output.)

  1. 1.

    If AA is already partially reduced and triangular, and separant sqs_{q} belongs to SS for every qAq\in A, then return (A,S)(A,S).

  2. 2.

    If AA is not triangular or separant sqSs_{q}\notin S for some nondifferential qAq\in A, compute 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎(A[𝐱],S)=𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎({p1,,pm},S){\tt Triangulate}(A\cap\mathbb{R}[\mathbf{x}],S)={\tt Triangulate}(\{p_{1},\ldots,p_{m}\},S). (Recall the pip_{i} are the nondifferential elements of AA. Also, an element of the form xjfj(𝐱)x_{j}^{\prime}-f_{j}(\mathbf{x}) has separant 1, so as usual we assume such a separant belongs to the inequations SS.) This yields a finite collection of regular algebraic systems involving only nondifferential polynomials. Return the union (B,SB)𝚁𝙶𝙰o(B𝐱~𝐟~(𝐱),SB)\bigcup_{(B,S_{B})}{\tt RGA}_{o}(B\,\cup\,\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x}),S_{B}) over all (B,SB)(B,S_{B}) returned by 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎({p1,{\tt Triangulate}(\{p_{1}, ,pm},S)\ldots,p_{m}\},S). (That is, for each such (B,SB)(B,S_{B}), re-include with the equations BB the elements of AA that contain proper derivatives and call 𝚁𝙶𝙰o{\tt RGA}_{o} on the resulting system. This produces a finite collection of differential systems; take the union of all these collections.)

  3. 3.

    If AA is triangular and sqSs_{q}\in S for all qAq\in A but AA is not partially reduced, choose the highest-ranking leader xjx_{j} such that xjfj(𝐱)Ax_{j}^{\prime}-f_{j}(\mathbf{x})\in A and there exists qA[𝐱]q\in A\cap\mathbb{R}[\mathbf{x}] having leader xjx_{j}. (Such xjfj(𝐱)x_{j}^{\prime}-f_{j}(\mathbf{x}) and qq exist because AA is not partially reduced. Because AA is triangular and xjx_{j} is the highest-ranking variable with the desired property, xjfj(𝐱)x_{j}^{\prime}-f_{j}(\mathbf{x}) and qq are unique.) For concision we write xjfj(𝐱)x_{j}^{\prime}-f_{j}(\mathbf{x}) as xf(𝐱)x^{\prime}-f(\mathbf{x}).

    Recalling that sqSs_{q}\in S by assumption in the current case, differentiate qq and pseudodivide xf(𝐱)x^{\prime}-f(\mathbf{x}) by qq^{\prime}. Let r~\widetilde{r} be the resulting pseudoremainder; note that xx^{\prime} is not present in r~\widetilde{r} because the degree of xx^{\prime} is 1 in xf(𝐱)x^{\prime}-f(\mathbf{x}) and qq^{\prime}. (In this case, the pseudoremainder is reduced with respect to qq^{\prime} after a single step of pseudodivision.) However, derivatives of other variables in qq may be present. Let yy be such a variable; there is some g(𝐱)[𝐱]g(\mathbf{x})\in\mathbb{R}[\mathbf{x}] such that yg(𝐱)y^{\prime}-g(\mathbf{x}) is a member of 𝐱𝐟(𝐱)\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x}). Replace every instance of yy^{\prime} in r~\widetilde{r} with g(𝐱)g(\mathbf{x}). (We justify this move in Theorem 96, the correctness proof for 𝚁𝙶𝙰o{\tt RGA}_{o}.) Doing so for each proper derivative present in r~\widetilde{r} produces a nondifferential polynomial rr. (Abusing terminology, we also refer to rr as a pseudoremainder.) Update the equations by omitting xf(𝐱)x^{\prime}-f(\mathbf{x}) and including rr; let A^:=(A{r}){xf(𝐱)}\hat{A}:=(A\cup\{r\})\setminus\{x^{\prime}-f(\mathbf{x})\}. Note that the elements of A^\hat{A} having proper derivatives form the set 𝐱~𝐟~(𝐱){xf(𝐱)}\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x})\setminus\{x^{\prime}-f(\mathbf{x})\} because rr is nondifferential.

    Now compute 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎(A^[𝐱],S){\tt Triangulate}(\hat{A}\cap\mathbb{R}[\mathbf{x}],S). Return the union (B,SB)𝚁𝙶𝙰o(B(𝐱~𝐟~(𝐱){xf(𝐱)}),SB)\bigcup_{(B,S_{B})}{\tt RGA}_{o}(B\cup(\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x})\setminus\{x^{\prime}-f(\mathbf{x})\}),S_{B}) over all (B,SB)(B,S_{B}) returned by 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎(A^[𝐱],S){\tt Triangulate}(\hat{A}\cap\mathbb{R}[\mathbf{x}],S).

The next result is an important ingredient of the correctness proof for 𝚁𝙶𝙰o{\tt RGA}_{o} (Theorem 96). The lemma performs the critical job of uniting the algebraic part (calls to 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate}) and differential part (differential saturation ideals) of 𝚁𝙶𝙰o{\tt RGA}_{o}.

Lemma 94.

Let 𝐱=𝐟(𝐱)\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x}) be a polynomial vector field. Let A={𝐱~𝐟~(𝐱),p1,p2,A=\{\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x}),p_{1},p_{2}, ,pm}\ldots,p_{m}\} be a finite set where 𝐱~𝐟~(𝐱)\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x}) is a subset of the differential polynomials 𝐱𝐟(𝐱)\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x}) and the p1,,pm[𝐱]p_{1},\ldots,p_{m}\in\mathbb{R}[\mathbf{x}] are nondifferential polynomials. Let S[𝐱]{0}S\subseteq\mathbb{R}[\mathbf{x}]\setminus\{0\} be a finite set of nondifferential polynomials. Let (B1,S1),,(BN,SN)(B_{1},S_{1}),\ldots,(B_{N},S_{N}) be the output of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎(A[𝐱],S){\tt Triangulate}(A\cap\mathbb{R}[\mathbf{x}],S); by correctness of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} (Theorem 93) we know that

(A[𝐱]):S=(B1):S1(BN):SN=((B1):S1)((BN):SN).\sqrt{{(A\cap\mathbb{R}[\mathbf{x}])}:S^{\infty}}=\sqrt{{(B_{1})}:S_{1}^{\infty}}\cap\cdots\cap\sqrt{{(B_{N})}:S_{N}^{\infty}}=({(B_{1})}:S_{1}^{\infty})\cap\cdots\cap({(B_{N})}:S_{N}^{\infty}).

Then we have

[A]:S\displaystyle\sqrt{{[A]}:S^{\infty}} =[A[𝐱],𝐱~𝐟~(𝐱)]:S\displaystyle=\sqrt{{[A\cap\mathbb{R}[\mathbf{x}],\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x})]}:S^{\infty}} =[B1,𝐱~𝐟~(𝐱)]:S1\displaystyle=\sqrt{{[B_{1},\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x})]}:S_{1}^{\infty}}\cap\cdots
[BN,𝐱~𝐟~(𝐱)]:SN.\displaystyle\phantom{=}\cap\sqrt{{[B_{N},\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x})]}:S_{N}^{\infty}}.
Proof.

The key observation is that the two operations of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} (namely, splitting and nondifferential pseudodivision) preserve the differential solutions of the augmented system that includes the ODEs with the equations. (See Remark 95 for a metamathematical issue concerning this approach.) Moreover, these operations only involve nondifferential polynomials. For instance, if qA[𝐱]q\in A\cap\mathbb{R}[\mathbf{x}] we have

(A[𝐱]):S=(A[𝐱],iq):S(A[𝐱]):(S{iq})\sqrt{{(A\cap\mathbb{R}[\mathbf{x}])}:S^{\infty}}=\sqrt{{(A\cap\mathbb{R}[\mathbf{x}],i_{q})}:S^{\infty}}\cap\sqrt{{(A\cap\mathbb{R}[\mathbf{x}])}:(S\cup\{i_{q}\})^{\infty}}

after a splitting step because the solutions of (A[𝐱]=0,S0)(A\cap\mathbb{R}[\mathbf{x}]=0,S\neq 0) in \mathbb{C} are the union of the solutions of (A[𝐱]=0,iq=0,S0)(A\cap\mathbb{R}[\mathbf{x}]=0,i_{q}=0,S\neq 0) and (A[𝐱]=0,S{iq}0)(A\cap\mathbb{R}[\mathbf{x}]=0,S\cup\{i_{q}\}\neq 0) in \mathbb{C} (see Theorem 30). The analogous differential decomposition holds if we include the ODEs and consider differential solutions in any differential extension field. By definition of AA and by Theorem 64 we have

[A]:S\displaystyle\sqrt{{[A]}:S^{\infty}} =[A[𝐱],𝐱~𝐟~(𝐱)]:S\displaystyle=\sqrt{{[A\cap\mathbb{R}[\mathbf{x}],\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x})]}:S^{\infty}} (3)
=[A[𝐱],iq,𝐱~𝐟~(𝐱)]:S\displaystyle=\sqrt{{[A\cap\mathbb{R}[\mathbf{x}],i_{q},\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x})]}:S^{\infty}}\,\cap
[A[𝐱],𝐱~𝐟~(𝐱)]:(S{iq}).\displaystyle\phantom{=}\cap\sqrt{{[A\cap\mathbb{R}[\mathbf{x}],\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x})]}:(S\cup\{i_{q}\})^{\infty}}.

If gA[𝐱]g\in A\cap\mathbb{R}[\mathbf{x}] and rgr_{g} is the pseudoremainder from pseudodividing gg by some other element of A[𝐱]A\cap\mathbb{R}[\mathbf{x}] whose initial belongs to SS, then much like Equation 2 in the proof of Theorem 93 we have

𝐕δ(A)𝐕δ(ΠS)\displaystyle\mathbf{V}_{\delta}(A)\setminus\mathbf{V}_{\delta}(\Pi S) =𝐕δ((A[𝐱]){𝐱~𝐟~(𝐱)})𝐕δ(ΠS)\displaystyle=\mathbf{V}_{\delta}((A\cap\mathbb{R}[\mathbf{x}])\cup\{\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x})\})\setminus\mathbf{V}_{\delta}(\Pi S) (4)
=𝐕δ((((A[𝐱]){rg}){g})𝐱~𝐟~(𝐱))𝐕δ(ΠS).\displaystyle=\mathbf{V}_{\delta}((((A\cap\mathbb{R}[\mathbf{x}])\cup\{r_{g}\})\setminus\{g\})\cup\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x}))\setminus\mathbf{V}_{\delta}(\Pi S).

Theorem 63 then gives

[A]:S=[(((A[𝐱]){rg}){g}),𝐱~𝐟~(𝐱)]:S.\sqrt{{[A]}:S^{\infty}}=\sqrt{{[(((A\cap\mathbb{R}[\mathbf{x}])\cup\{r_{g}\})\setminus\{g\}),\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x})]}:S^{\infty}}.

Similarly, for qA[𝐱]q\in A\cap\mathbb{R}[\mathbf{x}] we have

[A{iq}]:S=[(((A[𝐱]){iq,qiqxdegx(q)}){q}),𝐱~𝐟~(𝐱)]:S.\sqrt{{[A\cup\{i_{q}\}]}:S^{\infty}}=\sqrt{{[(((A\cap\mathbb{R}[\mathbf{x}])\cup\{i_{q},q-i_{q}x^{deg_{x}(q)}\})\setminus\{q\}),\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x})]}:S^{\infty}}.

(See the final part of the proof of Theorem 93, p. 2.)

Thus re-inserting the ODEs 𝐱~𝐟~(𝐱)\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x}) after a single splitting or pseudodivision step preserves the differential decomposition. The full decomposition follows by induction on the number of splitting and pseudodivision operations during a run of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate}. (In other words, since the ODEs 𝐱~𝐟~(𝐱)\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x}) are not involved in the operations of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate}, it is equivalent to perform the entire run of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} on the nondifferential elements and then re-introduce the 𝐱~𝐟~(𝐱)\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x}).) ∎

The system (Bi=0,Si0)(B_{i}=0,S_{i}\neq 0) is a regular algebraic system and so (Bi):Si=(Bi):Si\sqrt{{(B_{i})}:S_{i}^{\infty}}={(B_{i})}:S_{i}^{\infty} by Lazard’s lemma (Lemma 80). However, (Bi=0,𝐱~𝐟~(𝐱)=0,Si0)(B_{i}=0,\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x})=0,S_{i}\neq 0) might not be partially reduced so we need the radicals in the differential decomposition given by Lemma 94.

Remark 95.

Though the proof of Lemma 94 is straightforward, a subtle issue lurks nearby. We initially hoped to use more efficient radical ideal decomposition methods (e.g., that of Szántó [87, 88], which we discuss in Section 4.3, p. 109) in place of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate}. This provides an algebraic decomposition of the desired form

(A[𝐱]):S\displaystyle\sqrt{{(A\cap\mathbb{R}[\mathbf{x}])}:S^{\infty}} =(B1):S1(BN):SN\displaystyle=\sqrt{{(B_{1})}:S_{1}^{\infty}}\cap\cdots\cap\sqrt{{(B_{N})}:S_{N}^{\infty}} (5)
=((B1):S1)((BN):SN),\displaystyle=({(B_{1})}:S_{1}^{\infty})\cap\cdots\cap({(B_{N})}:S_{N}^{\infty}),

but requires methods beyond simple splitting and (nondifferential) pseudodivision. We were unable to prove Lemma 94 using only the algebraic decomposition in Equation 5 without the fact that splitting and pseudodivision preserve differential solutions. This illustrates a major challenge of differential algebra: even when differential polynomials have a simple form, drawing conclusions about differential ideals from restrictions to algebraic ideals is nontrivial. It also explains why we stopped with regular differential systems in 𝚁𝙶𝙰o{\tt RGA}_{o} instead of continuing with the calculations needed to get regular differential chains.

Other published versions of RGA [37, pp. 162-3] [79, p. 587] [44, p. 111] use analogues of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} (i.e., they are based on recursive splitting and pseudoreduction), so they must have nonelementary [89, pp. 419-23] worst-case complexity like we find for 𝚁𝙶𝙰o{\tt RGA}_{o} (Theorems 107,109). The Wu-Ritt process, a close relative of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate}, has nonelementary complexity [90, p. 121] similar to what we show in Theorem 106.

Theorem 96 (Termination and correctness of 𝚁𝙶𝙰o{\tt RGA}_{o}).

Let 𝐱=𝐟(𝐱)\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x}) be a polynomial vector field. Let A={𝐱~𝐟~(𝐱),p1,p2,,pm}A=\{\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x}),p_{1},p_{2},\ldots,p_{m}\} be a finite set where 𝐱~𝐟~(𝐱)\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x}) is a subset of the differential polynomials 𝐱𝐟(𝐱)\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x}) and the p1,,pm[𝐱]p_{1},\ldots,p_{m}\in\mathbb{R}[\mathbf{x}] are nondifferential polynomials. Let S[𝐱]{0}S\subseteq\mathbb{R}[\mathbf{x}]\setminus\{0\} be a finite set of nondifferential polynomials. Lastly, assume that for each member xf(𝐱)x^{\prime}-f(\mathbf{x}) of 𝐱𝐟(𝐱)\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x}) we either have xf(𝐱)Ax^{\prime}-f(\mathbf{x})\in A (equivalently, xf(𝐱)𝐱~𝐟~(𝐱)x^{\prime}-f(\mathbf{x})\in\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x})) or

s(xf(𝐱))=β(𝐱)+jγj(𝐱)(xjfj(𝐱))s(x^{\prime}-f(\mathbf{x}))=\beta(\mathbf{x})+\sum_{j}\gamma_{j}(\mathbf{x})(x_{j}^{\prime}-f_{j}(\mathbf{x}))

for some sS,β(𝐱)[A[𝐱]]{𝐱},γj(𝐱)[𝐱],xj<xs\in S,\beta(\mathbf{x})\in\big{[}A\cap\mathbb{R}[\mathbf{x}]\big{]}\unlhd\,{\mathbb{R}}\{\mathbf{x}\},\gamma_{j}(\mathbf{x})\in\mathbb{R}[\mathbf{x}],x_{j}<x, and xjfj(𝐱)Ax_{j}^{\prime}-f_{j}(\mathbf{x})\in A.

Then the algorithm 𝚁𝙶𝙰o{\tt RGA}_{o} terminates on input (A,S)(A,S) and the output (A1,S1),(A_{1},S_{1}), ,(Ar,Sr)\ldots,(A_{r},S_{r}) satisfies

[A]:S=([A1]:S1)([Ar]:Sr),\sqrt{{[A]}:S^{\infty}}=({[A_{1}]}:S_{1}^{\infty})\cap\cdots\cap({[A_{r}]}:S_{r}^{\infty}),

where A1,,Ar{𝐱},S1,,Sr[𝐱]{0}A_{1},\ldots,A_{r}\subseteq{\mathbb{R}}\{\mathbf{x}\},S_{1},\ldots,S_{r}\subseteq\mathbb{R}[\mathbf{x}]\setminus\{0\} are finite sets such that each (Ai=0,Si0)(A_{i}=0,S_{i}\neq 0) is a regular differential system. Moreover, the elements of AiA_{i} containing proper derivatives form a subset of 𝐱~𝐟~(𝐱)\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x}), and for each xf(𝐱)𝐱𝐟(𝐱)x^{\prime}-f(\mathbf{x})\in\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x}) and 1ir1\leq i\leq r we either have xf(𝐱)Aix^{\prime}-f(\mathbf{x})\in A_{i} or

s^(xf(𝐱))=β^(𝐱)+jγ^j(𝐱)(xjfj(𝐱))\hat{s}(x^{\prime}-f(\mathbf{x}))=\hat{\beta}(\mathbf{x})+\sum_{j}\hat{\gamma}_{j}(\mathbf{x})(x_{j}^{\prime}-f_{j}(\mathbf{x}))

for some s^Si,β^(𝐱)[Ai[𝐱]]{𝐱},γ^j(𝐱)[𝐱],xj<x\hat{s}\in S_{i},\hat{\beta}(\mathbf{x})\in\big{[}A_{i}\cap\mathbb{R}[\mathbf{x}]\big{]}\unlhd{\mathbb{R}}\{\mathbf{x}\},\hat{\gamma}_{j}(\mathbf{x})\in\mathbb{R}[\mathbf{x}],x_{j}<x, and xjfj(𝐱)Aix_{j}^{\prime}-f_{j}(\mathbf{x})\in A_{i}. (That is, the “technical assumption” on 𝐱𝐟(𝐱)\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x}) that we made of the input also holds of the output.)

Proof.

We first argue that 𝚁𝙶𝙰o{\tt RGA}_{o} terminates. On any branch of the computation, once the input (A,S)(A,S) has the property that AA is triangular and sqSs_{q}\in S for all qAq\in A, this property continues to hold for each new call to 𝚁𝙶𝙰o{\tt RGA}_{o} along that branch. This is so because the property activates step 3 and step 3 calls 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} (which terminates by Theorem 93) right before recursively calling 𝚁𝙶𝙰o{\tt RGA}_{o}. Hence every subsequent call to 𝚁𝙶𝙰o{\tt RGA}_{o} either terminates immediately or proceeds to step 3 and eliminates one of the ODEs xf(𝐱)x^{\prime}-f(\mathbf{x}). Note that at most nn of the original equations contain proper derivatives and no eliminated proper derivatives are ever re-introduced to the set of equations (𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} only involves nondifferential polynomials and the pseudoremainder rr introduced by step 3 of 𝚁𝙶𝙰o{\tt RGA}_{o} is nondifferential). It follows that, at most, a branch of 𝚁𝙶𝙰o{\tt RGA}_{o} calls 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} and 𝚁𝙶𝙰o{\tt RGA}_{o} n+1n+1 times (the first time in step 2 to make the equations triangular and put separants in the inequations; thereafter only step 3 applies) before terminating.

We justify the decomposition by showing that after each intermediate step we have a decomposition with the claimed form and properties, except possibly partial reducedness and being radical. However, these will both hold of the final output; see the final paragraph of the proof. During a run of 𝚁𝙶𝙰o{\tt RGA}_{o}, new differential systems are produced either by calling 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} on the nondifferential equations (followed by re-inserting the ODEs) or performing differential pseudodivision. By Lemma 94, a call to 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate}, followed by re-inserting the ODEs, decomposes [A]:S\sqrt{{[A]}:S^{\infty}} into a finite intersection of radicals of differential ideals of the right form (except possibly for partial reducedness)

[A]:S=[B1,𝐱~𝐟~(𝐱)]:S1[BN,𝐱~𝐟~(𝐱)]:SN,\sqrt{{[A]}:S^{\infty}}=\sqrt{{[B_{1},\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x})]}:S_{1}^{\infty}}\cap\cdots\cap\sqrt{{[B_{N},\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x})]}:S_{N}^{\infty}},

where (B1,S1),,(SN,BN)(B_{1},S_{1}),\ldots,(S_{N},B_{N}) is the output of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎(A[𝐱],S){\tt Triangulate}(A\cap\mathbb{R}[\mathbf{x}],S). In particular, the equations with proper derivatives are exactly 𝐱~𝐟~(𝐱)\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x}). We must confirm that each (Bl𝐱~𝐟~(𝐱),Sl)(B_{l}\cup\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x}),S_{l}) preserves the technical assumption on the elements of 𝐱𝐟(𝐱)\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x}). If xf(𝐱)𝐱𝐟(𝐱)x^{\prime}-f(\mathbf{x})\in\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x}) belongs to AA, then xf(𝐱)x^{\prime}-f(\mathbf{x}) remains in Bl𝐱~𝐟~(𝐱)B_{l}\cup\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x}) because the proper derivatives are unchanged. Otherwise, we have

s(xf(𝐱))=β(𝐱)+jγj(𝐱)(xjfj(𝐱))s(x^{\prime}-f(\mathbf{x}))=\beta(\mathbf{x})+\sum_{j}\gamma_{j}(\mathbf{x})(x_{j}^{\prime}-f_{j}(\mathbf{x})) (6)

for some sS,β(𝐱)[A[𝐱]]=[p1,,pm],γj(𝐱)[𝐱],xj<xs\in S,\beta(\mathbf{x})\in\big{[}A\cap\mathbb{R}[\mathbf{x}]\big{]}=[p_{1},\ldots,p_{m}],\gamma_{j}(\mathbf{x})\in\mathbb{R}[\mathbf{x}],x_{j}<x, and xjfj(𝐱)Ax_{j}^{\prime}-f_{j}(\mathbf{x})\in A. These same xjfj(𝐱)x_{j}^{\prime}-f_{j}(\mathbf{x}) are now in Bl𝐱~𝐟~(𝐱)B_{l}\cup\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x}). By the algebraic decomposition

(A[𝐱]):S=((B1):S1)((BN):SN)\sqrt{{(A\cap\mathbb{R}[\mathbf{x}])}:S^{\infty}}=({(B_{1})}:S_{1}^{\infty})\cap\cdots\cap({(B_{N})}:S_{N}^{\infty})

guaranteed by correctness of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} (Theorem 93), we know that each piA[𝐱]p_{i}\in A\cap\mathbb{R}[\mathbf{x}] belongs to each (Bl):Sl[𝐱]{(B_{l})}:S_{l}^{\infty}\subseteq\mathbb{R}[\mathbf{x}]. It follows that pi(k)[Bl]:Sl{𝐱}p_{i}^{(k)}\in{[B_{l}]}:S_{l}^{\infty}\subseteq{\mathbb{R}}\{\mathbf{x}\} for all kk\in\mathbb{N} and hence [p1,,pm][Bl]:Sl[p_{1},\ldots,p_{m}]\subseteq{[B_{l}]}:S_{l}^{\infty}.

Multiplying both sides of equation 6 by an appropriate element of SlS_{l}, we thus obtain

s^(xf(𝐱))=β^(𝐱)+jγ^j(𝐱)(xjfj(𝐱))\hat{s}(x^{\prime}-f(\mathbf{x}))=\hat{\beta}(\mathbf{x})+\sum_{j}\hat{\gamma}_{j}(\mathbf{x})(x_{j}^{\prime}-f_{j}(\mathbf{x})) (7)

for some s^Sl\hat{s}\in S_{l} (recall that SSlS\subseteq S_{l} because on a given branch no inequations are ever removed), β^(𝐱)[Bl],\hat{\beta}(\mathbf{x})\in[B_{l}], and γ^j(𝐱)[𝐱]\hat{\gamma}_{j}(\mathbf{x})\in\mathbb{R}[\mathbf{x}]. This shows that (Bl𝐱~𝐟~(𝐱),Sl)(B_{l}\cup\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x}),S_{l}) preserves the technical assumption on the elements of 𝐱𝐟(𝐱)\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x}).

We now check the differential pseudodivision from step 3 of 𝚁𝙶𝙰o{\tt RGA}_{o}. Step 3 of 𝚁𝙶𝙰o{\tt RGA}_{o} produces a pseudoremainder r~\widetilde{r} by pseudodividing some xf(𝐱)Ax^{\prime}-f(\mathbf{x})\in A by qq^{\prime}, where the separant sqSs_{q}\in S and qA[𝐱]q\in A\cap\mathbb{R}[\mathbf{x}] has leader xx. Recall that sqs_{q} is the initial of qq^{\prime} and belongs to [𝐱]\mathbb{R}[\mathbf{x}]. Because the initial of xf(𝐱)x^{\prime}-f(\mathbf{x}) is 1 and the degree of xx^{\prime} is 1 in both xf(𝐱)x^{\prime}-f(\mathbf{x}) and qq^{\prime}, we have sq(xf(𝐱))q=r~s_{q}(x^{\prime}-f(\mathbf{x}))-q^{\prime}=\widetilde{r}. (This is an instance of Proposition 73.) Step 3 of 𝚁𝙶𝙰o{\tt RGA}_{o} goes on to substitute nondifferential polynomials (using the relations 𝐱=𝐟(𝐱)\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x})) for the remaining proper derivatives (which necessarily have lesser rank than xx^{\prime}) in r~\widetilde{r}. This produces r[𝐱]r\in\mathbb{R}[\mathbf{x}] such that r~=lζl(𝐱)(xlfl(𝐱))+r\widetilde{r}=\sum_{l}\zeta_{l}(\mathbf{x})(x_{l}^{\prime}-f_{l}(\mathbf{x}))+r for some ζl(𝐱)[𝐱]\zeta_{l}(\mathbf{x})\in\mathbb{R}[\mathbf{x}] and xl<xx_{l}<x. (As in the proof of Lemma 66, we replace xlx_{l}^{\prime} in r~\widetilde{r} with (xlfl(𝐱))+fl(𝐱)(x_{l}^{\prime}-f_{l}(\mathbf{x}))+f_{l}(\mathbf{x}). Then distribute to get an equation of the claimed form for r~\widetilde{r}.) Hence sq(xf(𝐱))=q+lζl(𝐱)(xlfl(𝐱))+rs_{q}(x^{\prime}-f(\mathbf{x}))=q^{\prime}+\sum_{l}\zeta_{l}(\mathbf{x})(x_{l}^{\prime}-f_{l}(\mathbf{x}))+r. Let A^:=(A{r}){xf(𝐱)}\hat{A}:=(A\cup\{r\})\setminus\{x^{\prime}-f(\mathbf{x})\}; note that A^\hat{A} contains all nondifferential polynomials of AA and of the others only omits xf(𝐱)x^{\prime}-f(\mathbf{x}). Step 3 of 𝚁𝙶𝙰o{\tt RGA}_{o} then proceeds using the system (A^,S)(\hat{A},S). If A^\hat{A} is no longer triangular or SS does not contain srs_{r}, the next call to 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} will restore those properties.

We show that (A^,S)(\hat{A},S) preserves the technical assumption on the elements of 𝐱𝐟(𝐱)\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x}) and that [A]:S=[A^]:S{[A]}:S^{\infty}={[\hat{A}]}:S^{\infty}. Though xf(𝐱)Ax^{\prime}-f(\mathbf{x})\in A, by definition xf(𝐱)A^x^{\prime}-f(\mathbf{x})\notin\hat{A}. However, by assumption each xlfl(𝐱)x_{l}^{\prime}-f_{l}(\mathbf{x}) in the equation

sq(xf(𝐱))=q+lζl(𝐱)(xlfl(𝐱))+rs_{q}(x^{\prime}-f(\mathbf{x}))=q^{\prime}+\sum_{l}\zeta_{l}(\mathbf{x})(x_{l}^{\prime}-f_{l}(\mathbf{x}))+r (8)

either belongs to AA (and hence to A^\hat{A} since xlfl(𝐱)xf(𝐱)x_{l}^{\prime}-f_{l}(\mathbf{x})\neq x^{\prime}-f(\mathbf{x})) or can be written as

sl(xlfl(𝐱))=βl(𝐱)+jγj,l(𝐱)(xjfj(𝐱))s_{l}(x_{l}^{\prime}-f_{l}(\mathbf{x}))=\beta_{l}(\mathbf{x})+\sum_{j}\gamma_{j,l}(\mathbf{x})(x_{j}^{\prime}-f_{j}(\mathbf{x})) (9)

for some slS,βl(𝐱)[A[𝐱]][A^[𝐱]],γj,l(𝐱)[𝐱],xj<xls_{l}\in S,\beta_{l}(\mathbf{x})\in\big{[}A\cap\mathbb{R}[\mathbf{x}]\big{]}\subseteq\big{[}\hat{A}\cap\mathbb{R}[\mathbf{x}]\big{]},\gamma_{j,l}(\mathbf{x})\in\mathbb{R}[\mathbf{x}],x_{j}<x_{l}, and xjfj(𝐱)Ax_{j}^{\prime}-f_{j}(\mathbf{x})\in A. Since xj<xl<xx_{j}<x_{l}<x, we have xjfj(𝐱)xf(𝐱)x_{j}^{\prime}-f_{j}(\mathbf{x})\neq x^{\prime}-f(\mathbf{x}) and so xjfj(𝐱)A^x_{j}^{\prime}-f_{j}(\mathbf{x})\in\hat{A}. Multiplying both sides of 8 by appropriate elements of SS, using 9, and using the fact that q,rq,r belong to A^[𝐱]\hat{A}\cap\mathbb{R}[\mathbf{x}], we see that the technical assumption holds of xf(𝐱)x^{\prime}-f(\mathbf{x}) with respect to (A^,S)(\hat{A},S). We now consider all yg(𝐱)𝐱𝐟(𝐱)y^{\prime}-g(\mathbf{x})\in\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x}) such that yg(𝐱)xf(𝐱)y^{\prime}-g(\mathbf{x})\neq x^{\prime}-f(\mathbf{x}). If yg(𝐱)Ay^{\prime}-g(\mathbf{x})\in A, then yg(𝐱)y^{\prime}-g(\mathbf{x}) still belongs to A^\hat{A}. If yg(𝐱)Ay^{\prime}-g(\mathbf{x})\notin A, by assumption

s(yg(𝐱))=β(𝐱)+jγj(𝐱)(xjfj(𝐱))s(y^{\prime}-g(\mathbf{x}))=\beta(\mathbf{x})+\sum_{j}\gamma_{j}(\mathbf{x})(x_{j}^{\prime}-f_{j}(\mathbf{x})) (10)

for some sS,β(𝐱)[A[𝐱]],γj(𝐱)[𝐱],xj<ys\in S,\beta(\mathbf{x})\in\big{[}A\cap\mathbb{R}[\mathbf{x}]\big{]},\gamma_{j}(\mathbf{x})\in\mathbb{R}[\mathbf{x}],x_{j}<y, and xjfj(𝐱)Ax_{j}^{\prime}-f_{j}(\mathbf{x})\in A. Here one of the xjfj(𝐱)x_{j}^{\prime}-f_{j}(\mathbf{x}) might be xf(𝐱)x^{\prime}-f(\mathbf{x}), but we showed above that xf(𝐱)x^{\prime}-f(\mathbf{x}) has the right form with respect to (A^,S)(\hat{A},S). Hence we can multiply both sides of 10 by appropriate elements of SS, substitute for xf(𝐱)x^{\prime}-f(\mathbf{x}), and conclude that yg(𝐱)[A^]:Sy^{\prime}-g(\mathbf{x})\in{[\hat{A}]}:S^{\infty} has the form required by the technical assumption.

To prove that [A]:S=[A^]:S{[A]}:S^{\infty}={[\hat{A}]}:S^{\infty}, it suffices to show that xf(𝐱)[A^]:Sx^{\prime}-f(\mathbf{x})\in{[\hat{A}]}:S^{\infty} and r[A]:Sr\in{[A]}:S^{\infty}. Both memberships follow from equations 8 and 9 (recall qA[𝐱],rA^[𝐱]q\in A\cap\mathbb{R}[\mathbf{x}],r\in\hat{A}\cap\mathbb{R}[\mathbf{x}], and xf(𝐱)Ax^{\prime}-f(\mathbf{x})\in A). Thus differential pseudodivision replaces a system with an equivalent one whose corresponding differential saturation ideal is the same (in particular, the decomposition does not change).

Lastly, we explain why each output (Ai=0,Si0)(A_{i}=0,S_{i}\neq 0) is a regular differential system. (Each [Ai]:Hi{[A_{i}]}:H_{i}^{\infty} is then radical by Lazard’s lemma (Lemma 80), which is why [A1]:S1[Ar]:Sr=([A1]:S1)([Ar]:Sr)\sqrt{{[A_{1}]}:S_{1}^{\infty}}\cap\cdots\cap\sqrt{{[A_{r}]}:S_{r}^{\infty}}=({[A_{1}]}:S_{1}^{\infty})\cap\cdots\cap({[A_{r}]}:S_{r}^{\infty}).) Both AiA_{i} and SiS_{i} are finite because only finitely many elements can enter at any step. Initials and separants are never identically zero, so 0 was not added to the inequations during the computation (i.e., 0Si0\notin S_{i}). Termination only occurs when AiA_{i} is partially reduced, so that property is assured. The nondifferential polynomials in AiA_{i} form a triangular set by the action of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate}. The remaining differential polynomials form a subset of 𝐱~𝐟~(𝐱)\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x}). The orderly ranking ensures that an element xjfj(𝐱)x_{j}^{\prime}-f_{j}(\mathbf{x}) of 𝐱~𝐟~(𝐱)\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x}) has leader xjx_{j}^{\prime}, so the entire set AiA_{i} (i.e., the union of the nondifferential elements of AiA_{i} and a subset of the original ODEs) remains triangular. The separant of any element of 𝐱~𝐟~(𝐱)\mathbf{\widetilde{x}^{\prime}}-\mathbf{\widetilde{f}}(\mathbf{x}) is 11 and the separants of nondifferential elements of AiA_{i} belong to SiS_{i} by 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate}. Since Si[𝐱]S_{i}\subseteq\mathbb{R}[\mathbf{x}] has no proper derivatives, it is partially reduced with respect to AiA_{i}. Thus (Ai=0,Si0)(A_{i}=0,S_{i}\neq 0) is a regular differential system. This completes the proof.

We need the following theorem to interpret the output of 𝚁𝙶𝙰o{\tt RGA}_{o}. The result is intuitively natural but slightly fussy to prove. It connects differential ideals to invariant ideals of polynomial vector fields: in particular, in the presence of an explicit system 𝐱𝐟(𝐱)\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x}), the nondifferential polynomials in a differential ideal form the smallest invariant ideal containing the nondifferential polynomials in the original set that generated the differential ideal.

Theorem 97.

Let A={𝐱𝐟(𝐱),p1,p2,,pm}A=\{\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x}),p_{1},p_{2},\ldots,p_{m}\} with p1,,pm[𝐱]p_{1},\ldots,p_{m}\in\mathbb{R}[\mathbf{x}]. Then (𝐅(A[𝐱]))=(𝐅(A[𝐱]))=(𝐅(p1,,pm))=[A][𝐱](\mathcal{L}^{*}_{\mathbf{F}}(A\cap\mathbb{R}[\mathbf{x}]))=(\mathcal{L}^{*}_{\mathbf{F}}(A_{\mathbb{R}[\mathbf{x}]}))=(\mathcal{L}^{*}_{\mathbf{F}}(p_{1},\ldots,p_{m}))=[A]\cap\mathbb{R}[\mathbf{x}], where 𝐅\mathbf{F} is the polynomial vector field 𝐱=𝐟(𝐱)\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x}).

Proof.

(\subseteq): Immediate from Lemma 66.

(\supseteq) Let q[A][𝐱]q\in[A]\cap\mathbb{R}[\mathbf{x}]. Then for some l1l\geq 1, we have a representation

q=1in,1klgi,k(𝐱)(xi(k)fi(k1)(𝐱))+1jm,1klhj,k(𝐱)pj(k)+1jmhj(𝐱)pj,q=\sum_{1\leq i\leq n,1\leq k\leq l}g_{i,k}(\mathbf{x})(x_{i}^{(k)}-f_{i}^{(k-1)}(\mathbf{x}))+\sum_{1\leq j\leq m,1\leq k\leq l}h_{j,k}(\mathbf{x})p_{j}^{(k)}+\sum_{1\leq j\leq m}h_{j}(\mathbf{x})p_{j},

where gi,k,hj,k,hj{𝐱}g_{i,k},h_{j,k},h_{j}\in\mathbb{R}\{\mathbf{x}\}. Proceeding as in the proof of Lemma 66 (i.e., replacing xix_{i}^{\prime} with xifi(𝐱)+fi(𝐱)x_{i}^{\prime}-f_{i}(\mathbf{x})+f_{i}(\mathbf{x})), for k1k\geq 1 we may replace pj(k)p_{j}^{(k)} with 𝐅(k)(pj)\mathcal{L}_{\mathbf{F}}^{(k)}(p_{j}) plus a sum of multiples of the various xifi(𝐱),,xi(k)(𝐱)fi(k1)(𝐱)x_{i}^{\prime}-f_{i}(\mathbf{x}),\ldots,x_{i}^{(k)}(\mathbf{x})-f_{i}^{(k-1)}(\mathbf{x}). Regrouping and renaming the coefficient polynomials gi,kg_{i,k}, etc., as necessary, we may thus assume qq has the form

q=1in,1klgi,k(𝐱)(xi(k)fi(k1)(𝐱))+1jm,1klhj,k(𝐱)𝐅(k)(pj)+1jmhj(𝐱)pj.q=\sum_{1\leq i\leq n,1\leq k\leq l}g_{i,k}(\mathbf{x})(x_{i}^{(k)}-f_{i}^{(k-1)}(\mathbf{x}))+\sum_{1\leq j\leq m,1\leq k\leq l}h_{j,k}(\mathbf{x})\mathcal{L}_{\mathbf{F}}^{(k)}(p_{j})+\sum_{1\leq j\leq m}h_{j}(\mathbf{x})p_{j}.

Because qq and the various fi(𝐱),𝐅(k)(pj),f_{i}(\mathbf{x}),\mathcal{L}_{\mathbf{F}}^{(k)}(p_{j}), and pjp_{j} belong to [𝐱]\mathbb{R}[\mathbf{x}], we may assume that no derivative of order greater than ll appears on the right-hand side (i.e., gi,k,hj,k,hj[x1,,xn,,x1(l),g_{i,k},h_{j,k},h_{j}\in\mathbb{R}[x_{1},\ldots,x_{n},\ldots,x_{1}^{(l)}, ,xn(l)]\ldots,x_{n}^{(l)}]). Finally, we may assume that hj,k,hj[𝐱]h_{j,k},h_{j}\in\mathbb{R}[\mathbf{x}] and that each gi,kg_{i,k} has order no greater than kk. To see this, note that any xi(r)x_{i}^{(r)} in gi,k,hj,k,hjg_{i,k},h_{j,k},h_{j} (lr>kl\geq r>k in the case of gi,kg_{i,k} and lr>0l\geq r>0 for hj,k,hjh_{j,k},h_{j}) may be replaced with xi(r)fi(r1)(𝐱)+fi(r1)(𝐱)x_{i}^{(r)}-f_{i}^{(r-1)}(\mathbf{x})+f_{i}^{(r-1)}(\mathbf{x}) where fi(r1)(𝐱)f_{i}^{(r-1)}(\mathbf{x}) has order less than rr. The general form of the representation of qq is preserved but the resulting replacements for gi,k,hj,k,hjg_{i,k},h_{j,k},h_{j} contain fewer derivatives of order rr (and no higher ones were introduced), so the claim follows by induction.

We now have a form that is conducive to proving q(𝐅(p1,,pm))q\in(\mathcal{L}^{*}_{\mathbf{F}}(p_{1},\ldots,p_{m})). We induct on the maximum order ll of the xi(k)fi(k1)(𝐱)x_{i}^{(k)}-f_{i}^{(k-1)}(\mathbf{x}) (in particular, for the inductive hypothesis we do not need the order of the Lie derivatives of pjp_{j} to match ll; we just require the assumptions that hj,k,hj[𝐱]h_{j,k},h_{j}\in\mathbb{R}[\mathbf{x}] and that gi,kg_{i,k} has order no greater than kk). Subtracting from both sides, we obtain

q\displaystyle q (1in,1k<lgi,k(𝐱)(xi(k)fi(k1)(𝐱))+1jm,1klhj,k(𝐱)𝐅(k)(pj)+.\displaystyle-\Bigg{(}\sum_{1\leq i\leq n,1\leq k<l}g_{i,k}(\mathbf{x})(x_{i}^{(k)}-f_{i}^{(k-1)}(\mathbf{x}))+\sum_{1\leq j\leq m,1\leq k\leq l}h_{j,k}(\mathbf{x})\mathcal{L}_{\mathbf{F}}^{(k)}(p_{j})\,+\Bigg{.}
+.1jmhj(𝐱)pj)=1ingi,l(𝐱)(xi(l)fi(l1)(𝐱)).\displaystyle+\Bigg{.}\sum_{1\leq j\leq m}h_{j}(\mathbf{x})p_{j}\Bigg{)}=\sum_{1\leq i\leq n}g_{i,l}(\mathbf{x})(x_{i}^{(l)}-f_{i}^{(l-1)}(\mathbf{x})). (11)

Denote the left-hand side of equation 4.1 by q~\tilde{q} and choose an orderly ranking on x1,,xnx_{1},\ldots,x_{n} (so all derivatives of order ll are greater than any derivative of lower order). Observe that A0:={x1(l)f1(l1)(𝐱),,xn(l)fn(l1)(𝐱))}A_{0}:=\{x_{1}^{(l)}-f_{1}^{(l-1)}(\mathbf{x}),\ldots,x_{n}^{(l)}-f_{n}^{(l-1)}(\mathbf{x}))\} is a regular set when we consider the entries as elements of [x1,,xn,,x1(l),,xn(l)]\mathbb{R}[x_{1},\ldots,x_{n},\ldots,x_{1}^{(l)},\ldots,x_{n}^{(l)}]: each entry in A0A_{0} has a distinct leader xi(l)x_{i}^{(l)} and every initial is 1 (whence Definition 79 (2) trivially holds). Moreover, q~\tilde{q} is reduced with respect to A0A_{0} (by our assumptions, none of the leaders xi(l)x_{i}^{(l)} appears in q~\tilde{q}). Equation 4.1 witnesses that q~(A0)=(A0):S\tilde{q}\in(A_{0})=(A_{0}):S^{\infty} (since the multplicative set SS generated by the initials of A0A_{0} is simply {1}\{1\}). However, by Theorem 81, q~(A0):S\tilde{q}\in{(A_{0})}:S^{\infty} if and only if A0A_{0} pseudoreduces q~\tilde{q} to zero. Since q~\tilde{q} is already reduced with respect to A0A_{0}, this implies that both q~\tilde{q} and the right-hand side 1ingi,l(𝐱)(xi(l)fi(l1)(𝐱))\sum_{1\leq i\leq n}g_{i,l}(\mathbf{x})(x_{i}^{(l)}-f_{i}^{(l-1)}(\mathbf{x})) are identically zero. Hence

q=1in,1k<lgi,k(𝐱)(xi(k)fi(k1)(𝐱))+1jm,1klhj,k(𝐱)𝐅(k)(pj)+1jmhj(𝐱)pj,q=\sum_{1\leq i\leq n,1\leq k<l}g_{i,k}(\mathbf{x})(x_{i}^{(k)}-f_{i}^{(k-1)}(\mathbf{x}))+\sum_{1\leq j\leq m,1\leq k\leq l}h_{j,k}(\mathbf{x})\mathcal{L}_{\mathbf{F}}^{(k)}(p_{j})+\sum_{1\leq j\leq m}h_{j}(\mathbf{x})p_{j},

which has lower maximum order of the xi(k)fi(k1)(𝐱)x_{i}^{(k)}-f_{i}^{(k-1)}(\mathbf{x}) but the same overall form and preserves our assumptions on gi,k,hj,k,hjg_{i,k},h_{j,k},h_{j}. By induction we may eliminate all the xi(k)fi(k1)(𝐱)x_{i}^{(k)}-f_{i}^{(k-1)}(\mathbf{x}), leaving

q=1jm,1klhj,k(𝐱)𝐅(k)(pj)+1jmhj(𝐱)pj.q=\sum_{1\leq j\leq m,1\leq k\leq l}h_{j,k}(\mathbf{x})\mathcal{L}_{\mathbf{F}}^{(k)}(p_{j})+\sum_{1\leq j\leq m}h_{j}(\mathbf{x})p_{j}.

This proves that q(𝐅(p1,,pm))q\in(\mathcal{L}^{*}_{\mathbf{F}}(p_{1},\ldots,p_{m})).

Our work on 𝚁𝙶𝙰o{\tt RGA}_{o} culminates with Theorem 98, which interprets the output as a canonical algebraic invariant of a polynomial vector field 𝐅\mathbf{F}. In particular, parts 1 and 3 connect differential ideals and the maximal invariant contained in 𝐕(A[𝐱])\mathbf{V}_{\mathbb{R}}(A\cap\mathbb{R}[\mathbf{x}]). Part 3 also indicates the structure of this invariant in terms of smaller invariant sets. These are the major contributions of Theorem 98. Part 2 is implicit in [91] because there the authors obtain (𝐅(A[𝐱]))(\mathcal{L}^{*}_{\mathbf{F}}(A_{\mathbb{R}[\mathbf{x}]})), from which membership in the radical can be tested. (See our remarks on [91] in Section 5.1. We discuss radical ideal membership in Section 4.4 and the two paragraphs preceding it.) However, our mechanism is different (regular differential systems instead of Gröbner bases) and shows that to test membership in (𝐅(A[𝐱]))\sqrt{(\mathcal{L}^{*}_{\mathbf{F}}(A_{\mathbb{R}[\mathbf{x}]}))} it is unnecessary to first find generators of (𝐅(A[𝐱]))(\mathcal{L}^{*}_{\mathbf{F}}(A_{\mathbb{R}[\mathbf{x}]})).

Theorem 98.

Let A={𝐱𝐟(𝐱),p1,p2,,pm}A=\{\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x}),p_{1},p_{2},\ldots,p_{m}\} with p1,,pm[𝐱]p_{1},\ldots,p_{m}\in\mathbb{R}[\mathbf{x}] and let 𝐅\mathbf{F} be the polynomial vector field 𝐱=𝐟(𝐱)\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x}). If (A1,S1),,(Ar,Sr)(A_{1},S_{1}),\ldots,(A_{r},S_{r}) are the regular differential systems returned by 𝚁𝙶𝙰o{\tt RGA}_{o} given (A,)(A,\emptyset) as input, then

  1. 1.
    (𝐅(A[𝐱]))\displaystyle\sqrt{(\mathcal{L}^{*}_{\mathbf{F}}(A_{\mathbb{R}[\mathbf{x}]}))} =[A][𝐱]\displaystyle=\sqrt{[A]}\cap\mathbb{R}[\mathbf{x}]
    =((A1[𝐱]):S1)((Ar[𝐱]):Sr).\displaystyle=({(A_{1}\cap\mathbb{R}[\mathbf{x}])}:S_{1}^{\infty})\cap\cdots\cap({(A_{r}\cap\mathbb{R}[\mathbf{x}])}:S_{r}^{\infty}).
  2. 2.

    Membership in (𝐅(A[𝐱]))\sqrt{(\mathcal{L}^{*}_{\mathbf{F}}(A_{\mathbb{R}[\mathbf{x}]}))} is decidable.

  3. 3.

    𝐕([A][𝐱])\mathbf{V}_{\mathbb{R}}([A]\cap\mathbb{R}[\mathbf{x}]) is the largest invariant with respect to 𝐅\mathbf{F} that is contained in 𝐕(A[𝐱])\mathbf{V}_{\mathbb{R}}(A\cap\mathbb{R}[\mathbf{x}]). Moreover, 𝐕([A][𝐱])\mathbf{V}_{\mathbb{R}}([A]\cap\mathbb{R}[\mathbf{x}]) is a finite union of invariants of the form 𝐕((Ai[𝐱]):Si)\mathbf{V}_{\mathbb{R}}({(A_{i}\cap\mathbb{R}[\mathbf{x}])}:S_{i}^{\infty}).

Proof.
  1. 1.

    The first equation follows from Theorem 97 and Lemma 57 (2). For the second, we have

    [A][𝐱]\displaystyle\sqrt{[A]}\cap\mathbb{R}[\mathbf{x}] =(([A1]:S1)([Ar]:Sr))[𝐱]\displaystyle=(({[A_{1}]}:S_{1}^{\infty})\cap\cdots\cap({[A_{r}]}:S_{r}^{\infty}))\cap\mathbb{R}[\mathbf{x}]      (Theorem 96)
    =(([A1]:S1)[𝐱])(([Ar]:Sr)[𝐱])\displaystyle=(({[A_{1}]}:S_{1}^{\infty})\cap\mathbb{R}[\mathbf{x}])\cap\cdots\cap(({[A_{r}]}:S_{r}^{\infty})\cap\mathbb{R}[\mathbf{x}])
    =(((A1):S1)[𝐱])(((Ar):Sr)[𝐱])\displaystyle=(({(A_{1})}:S_{1}^{\infty})\cap\mathbb{R}[\mathbf{x}])\cap\cdots\cap(({(A_{r})}:S_{r}^{\infty})\cap\mathbb{R}[\mathbf{x}])      (Theorem 82)
    =((A1[𝐱]):S1)((Ar[𝐱]):Sr).\displaystyle=({(A_{1}\cap\mathbb{R}[\mathbf{x}])}:S_{1}^{\infty})\cap\cdots\cap({(A_{r}\cap\mathbb{R}[\mathbf{x}])}:S_{r}^{\infty}).      (Lemma 85)

    Theorem 96, correctness of 𝚁𝙶𝙰o{\tt RGA}_{o}, applies because 𝐱𝐟(𝐱)A\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x})\in A. Lemma 85 applies because the (Ai,Si)(A_{i},S_{i}) are explicit regular differential systems by Theorem 96.

  2. 2.

    𝚁𝙶𝙰o{\tt RGA}_{o} computes the regular differential systems (Ai,Si)(A_{i},S_{i}). Membership in (Ai[𝐱]):Si{(A_{i}\cap\mathbb{R}[\mathbf{x}])}:S_{i}^{\infty} is decidable using Gröbner bases or regular chains (Section 2.6.1). Membership in a finite intersection of ideals is decidable using Gröbner bases [30, p. 194].

  3. 3.

    By part 1 of this theorem, Lemma 8, and part 3b of Proposition 23 we have

    𝐕(𝐅(A[𝐱]))\displaystyle\mathbf{V}_{\mathbb{R}}(\mathcal{L}^{*}_{\mathbf{F}}(A_{\mathbb{R}[\mathbf{x}]})) =𝐕([A][𝐱])\displaystyle=\mathbf{V}_{\mathbb{R}}([A]\cap\mathbb{R}[\mathbf{x}])
    =𝐕((A1[𝐱]):S1)𝐕((Ar[𝐱]):Sr)\displaystyle=\mathbf{V}_{\mathbb{R}}({(A_{1}\cap\mathbb{R}[\mathbf{x}])}:S_{1}^{\infty})\cup\cdots\cup\mathbf{V}_{\mathbb{R}}({(A_{r}\cap\mathbb{R}[\mathbf{x}])}:S_{r}^{\infty})

    The claims then follow from Lemma 53 and Theorem 86. (Theorem 86 applies because Theorem 96 implies that 𝐱𝐟(𝐱)[Ai]:Si\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x})\in{[A_{i}]}:S_{i}^{\infty} and (Ai,Si)(A_{i},S_{i}) is an explicit regular differential system.)

Note that our Theorems 96,98 have more specialized hypotheses than the RGA theorem of Boulier et al. (Theorem 90) and do not guarantee that all elements of [Ai]:Si{[A_{i}]}:S_{i}^{\infty} are differentially pseudoreduced to 0 by AiA_{i}. However, Theorem 90 does not identify the dynamical meaning of the nondifferential polynomials in the output. Moreover, our Theorem 98 still allows for testing membership in [A][𝐱]\sqrt{[A]}\cap\mathbb{R}[\mathbf{x}]. The greater specificity of Theorem 98 may also lead to better computational complexity; see Remark 114.

4.2 Algebraic Invariants from RGA Using Parameters

We now explain how we obtained the Lorenz system invariant in Section 3.3. Recall that the ODEs in question are x=yx,y=2xyxz,z=xyzx^{\prime}=y-x,y^{\prime}=2x-y-xz,z^{\prime}=xy-z. Our goal is to identify at least one nontrivial algebraic invariant of this system using the algorithms and theorems from Section 4.1. Consider the parameterized polynomial constraint g(x,y,z)=ax2+by2+cz2=0g(x,y,z)=ax^{2}+by^{2}+cz^{2}=0, where a,b,ca,b,c are unknown constants. (We call gg a template.) To settle on this choice, we first restricted to polynomials of degree 2 and looked at possibilities containing gg but also having additional monomials. By trial-and-error we found that other parameters seem to be 0 for interesting invariants, so here we only present gg. The input system is A:=(xy+x,y2x+y+xz,zxy+z,g,a,b,c)A:=(x^{\prime}-y+x,y^{\prime}-2x+y+xz,z^{\prime}-xy+z,g,a^{\prime},b^{\prime},c^{\prime}), where we interpret the polynomials as equations; the inequation set is empty. The terms a,b,ca^{\prime},b^{\prime},c^{\prime} express that a,b,ca,b,c are constant and do not depend on time like x,y,zx,y,z. Computing RGA in Maple (using the 𝚁𝚘𝚜𝚎𝚗𝚏𝚎𝚕𝚍𝙶𝚛𝚘𝚎𝚋𝚗𝚎𝚛\tt RosenfeldGroebner command) on the system AA with an orderly ranking x>y>z>a>b>cx>y>z>a>b>c yields five regular differential chains:

  1. 1.

    x+xy,xz2x+y+y,xy+z+z,a,b,cx^{\prime}+x-y,xz-2x+y+y^{\prime},-xy+z+z^{\prime},a,b,c,

  2. 2.

    xz2x+y+y,xy+z+z,c,2x2y2z2,a+2c,bcxz-2x+y+y^{\prime},-xy+z+z^{\prime},c^{\prime},2x^{2}-y^{2}-z^{2},a+2c,b-c,

  3. 3.

    z+z,a,b,x,y,cz^{\prime}+z,a^{\prime},b^{\prime},x,y,c,

  4. 4.

    b,c,xy,y21,z1,a+b+cb^{\prime},c^{\prime},x-y,y^{2}-1,z-1,a+b+c,

  5. 5.

    a,b,c,x,y,za^{\prime},b^{\prime},c^{\prime},x,y,z.

Even though we used a black-box commercial version of RGA for the calculation, Section 3.3 shows that the hypotheses of Theorems 86 and 88 hold of the output. (Specifically, chain 2; the others give invariants by inspection. See the next paragraph.) By default, Maple suppresses the inequations associated to each chain; however, the user can print them with the 𝙸𝚗𝚎𝚚𝚞𝚊𝚝𝚒𝚘𝚗𝚜\tt Inequations command. When implemented, 𝚁𝙶𝙰o{\tt RGA}_{o} should give equivalent output (but explicitly showing the inequations).

In the output we interpret a,b,ca,b,c as parameters and the invariants as algebraic sets in 3\mathbb{R}^{3} defined by polynomials in [x,y,z]\mathbb{R}[x,y,z]. Chain 1 defines the trivial invariant set 3\mathbb{R}^{3} because a=b=c=0a=b=c=0 causes gg to vanish at every point in 3\mathbb{R}^{3}. Chain 2 requires a=2ca=-2c and b=cb=c, which is the relationship of coefficients in ga=2,b=1,c=1=2x2y2z2g_{a=2,b=-1,c=-1}=2x^{2}-y^{2}-z^{2}. In other words, chain 2 defines the two-dimensional surface 2x2y2z2=02x^{2}-y^{2}-z^{2}=0, the invariant we confirmed in Section 3.3. (Any nonzero scalar multiple of (2,1,1)(2,-1,-1), or equivalently any nonzero solution of a=2c,b=ca=-2c,b=c, would define the same surface.) This appears to be the “most generic chain” or “general solution” produced by RGA (p. 4.1; roughly, no additional equations hold beyond those implied by the input). Chain 3 requires x,yx,y to constantly be zero; the final term of gg vanishes because c=0c=0. Thus chain 3 defines the zz-axis, a one-dimensional curve. Chain 4 is even simpler, defining the (zero-dimensional) points (1,1,1)(1,1,1) and (1,1,1)(-1,-1,1). Lastly, chain 5 defines the origin, (0,0,0)(0,0,0).

Theorem 98 implies that the union of these sets contains every algebraic invariant of the form ax2+by2+cz2=0ax^{2}+by^{2}+cz^{2}=0 in 3\mathbb{R}^{3} for the vector field x=yx,y=2xyxz,z=xyzx^{\prime}=y-x,y^{\prime}=2x-y-xz,z^{\prime}=xy-z. (Moreover, invariants that are proper subsets of 3\mathbb{R}^{3} are contained in the union of the invariants given by the final four chains.) This is essentially a completeness result describing the sense in which 𝚁𝙶𝙰o{\tt RGA}_{o} finds all invariants having a given parameterized form. Moreover, the output invariant is structured, being comprised of smaller invariants of various dimensions. The example suggests that a generic chain corresponds to an invariant that has maximal dimension among the proper invariants.

4.3 Bounds on 𝚁𝙶𝙰o{\tt RGA}_{o}

We now find upper bounds (Theorems 107,109) on the complexity of 𝚁𝙶𝙰o{\tt RGA}_{o}. The maximal degree of polynomials in the output is a common measure of complexity for algorithms that operate on polynomials; in this paper we use the term degree complexity. Like many authors we consider degree complexity as a function of the maximal degree dd of the input polynomials and the number of variables nn. Algorithms involving polynomial ideals frequently have degree complexity that is singly or doubly exponential in nn and polynomial in dd (e.g., O(d2n))O(d^{2^{n}})) [92]. Thus it is reasonable to ignore matters like time complexity of addition and multiplication, the number of polynomials in the input, etc., that affect the output in only polynomial or singly exponential fashion.

We start by analyzing 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate}. This involves a recursively defined function T(d,n)T(d,n) that bounds the degree complexity. It is not surprising that the Fibonacci numbers appear in the definition of T(d,n)T(d,n) because a single step of pseudodivision produces a pseudoremainder whose degree is at most the sum of the degrees of the dividend and divisor (see step 2 of 𝙳𝚒𝚏𝚏𝙿𝚜𝚎𝚞𝚍𝚘𝙳𝚒𝚟{\tt DiffPseudoDiv} on p. 2).

Notation 99.

We write FjF_{j} for the jj-th Fibonacci number, defined recursively by F0:=0,F1:=1,Fj:=Fj1+Fj2F_{0}:=0,F_{1}:=1,F_{j}:=F_{j-1}+F_{j-2} for 2j2\leq j.

Proposition 100 (Binet’s formula [93, p. 92]).
Fj=ϕ1jϕ2j5,F_{j}=\frac{\phi_{1}^{j}-\phi_{2}^{j}}{\sqrt{5}},

where ϕ1:=1+52\phi_{1}:=\frac{1+\sqrt{5}}{2} and ϕ2:=152\phi_{2}:=\frac{1-\sqrt{5}}{2}.

It is somewhat tricky to pin down the degree complexity of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} for the same reason that termination (Theorem 93) was delicate to establish: depending on the inputs, 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} must accommodate many different patterns of degrees throughout the computation. This includes the difficulty that multiple intermediate polynomials can have the same degree, so the degree of a given output is not necessarily tied to how many pseudodivision steps the calculation required. To handle this, we induct on the number of times that the minimal and maximal degrees in the target variable change.

Theorem 101 (Degree complexity of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate}).

Given finite sets of polynomials A[𝐱],S[𝐱]{0}A\subseteq\mathbb{R}[\mathbf{x}],S\subseteq\mathbb{R}[\mathbf{x}]\setminus\{0\} in n=|𝐱|n=|\mathbf{x}| variables such that each polynomial has total degree at most dd, algorithm 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} returns polynomials that have total degree at most T(d,n)T(d,n), where T(d,k)T(d,k) is defined recursively by T(d,0):=dT(d,0):=d, T(d,k):=(F2T(d,k1)+1)T(d,k1)T(d,k):=(F_{2\cdot T(d,k-1)+1})\cdot T(d,k-1) for 1k1\leq k.

Proof.

Throughout a run of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate}, the inequations are updated with initials and separants of updated equations. Hence it suffices to bound the total degrees of the equations. Equations result from including initials or separants, which doesn’t increase the degree, or from a single pseudodivision step. Hence to find an upper bound we may assume that each new equation results from pseudodivision and adds the degrees of the two polynomials involved.

For 0kn0\leq k\leq n we claim that T(d,k)T(d,k) is a bound on the total degree of any equation after eliminating kk target variables, which implies the theorem statement. (That is, T(d,k)T(d,k) is a bound after 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} ensures that each of those kk target variables is the leader in at most one equation and the separant the corresponding polynomial belongs to the inequations.) Initially, total degrees are at most T(d,0)=dT(d,0)=d because we haven’t done anything yet (no variables eliminated). We prove that T(d,1)=F2d+1dT(d,1)=F_{2d+1}d is a bound on the total degree after eliminating one target variable. This is sufficient because the process is identical going from k1k-1 to kk. In particular, if T(d,k1)T(d,k-1) bounds total degrees after we have eliminated k1k-1 variables, the same argument (just replacing dd with T(d,k1)T(d,k-1)) shows that T(T(d,k1),1)=(F2T(d,k1)+1)T(d,k1)T(T(d,k-1),1)=(F_{2\cdot T(d,k-1)+1})\cdot T(d,k-1) is a bound after eliminating kk variables. The latter expression is T(d,k)T(d,k) by definition.

We now show that T(d,1)=F2d+1dT(d,1)=F_{2d+1}d is a bound on the total degree after eliminating one target variable. Let xx be the first target variable. We introduce the following terminology to assist with the proof. We refer to the polynomial qq chosen in step 1 of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} as the minimal pseudodivisor for the next pseudodivision step. (Recall that by definition qq has minimal degree in xx among the equations with leader xx and also has minimal total degree among equations with that minimal degree in xx.) We refer to the polynomial pp chosen in step 2 of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} as the maximal pseudodividend (pp has maximal total degree among all equations of maximal degree in xx). Suppose we have performed ii pseudodivision steps so far. The key values are the current minimal nonzero degree in xx of any equation (call it xmin,ix_{\min,i}) and the current maximal degree in xx of any equation (call it xmax,ix_{\max,i}). Then the current minimal pseudodivisor has degree xmin,ix_{\min,i} in xx and the maximal pseudodividend has degree xmax,ix_{\max,i} in xx. Let tmax,it_{\max,i} be the current maximal total degree of any equation (not necessarily having xx as its leader). For instance, xmin,0xmax,0tmax,0dx_{\min,0}\leq x_{\max,0}\leq t_{\max,0}\leq d (the initial bound before any pseudodivisions).

As long as elements of degree xmin,0x_{\min,0} in xx are used to pseudodivide elements of degree xmax,0x_{\max,0} in xx, we get pseudoremainders of total degree at most 2d2d. (In other words, as long as xminx_{\min} and xmaxx_{\max} do not change.) This is because any polynomials not present initially are pseudoremainders that have degree in xx strictly less than xmax,0x_{\max,0}. Hence they have not been used as pseudodividends yet. Also, any polynomial with degree xmin,0x_{\min,0} in xx that becomes the minimal pseudodivisor in place of the original must have total degree no greater than that of the original minimal pseudodivisor (which was at most dd). Otherwise it would not be minimal. Hence as soon as xmin,i+1<xmin,ix_{\min,i+1}<x_{\min,i} or xmax,i+1<xmax,ix_{\max,i+1}<x_{\max,i} for the first time, we still have tmax,i+12dt_{\max,i+1}\leq 2d. Note that 2d=1d+1d=F1d+F2d=(F1+F2)d=F3d2d=1d+1d=F_{1}d+F_{2}d=(F_{1}+F_{2})d=F_{3}d. Note also that if exactly one of xmin,i+1<xmin,ix_{\min,i+1}<x_{\min,i} or xmax,i+1<xmax,ix_{\max,i+1}<x_{\max,i} occurs, then at least one of the subsequent minimal pseudodivisor and maximal pseudodividend still has total degree at most d=1d=F2dd=1d=F_{2}d. This is because the subsequent minimal pseudodivisor has total degree at most dd if xmin,i+1=xmin,ix_{\min,i+1}=x_{\min,i}. If xmax,i+1=xmax,ix_{\max,i+1}=x_{\max,i}, then one of the original equations of maximal degree in xx is still present and the subsequent maximal pseudodividend has total degree at most dd. If both xmin,i+1<xmin,ix_{\min,i+1}<x_{\min,i} and xmax,i+1<xmax,ix_{\max,i+1}<x_{\max,i} occur, then both the new minimal pseudodivisor and maximal pseudodividend have degree at most 2d=F3d2d=F_{3}d. From now on we omit the numerical subscripts from xmin,i,xmax,i,x_{\min,i},x_{\max,i}, and tmax,it_{\max,i} because the important quantity is how many times tmaxt_{\max} can increase, not how many pseudodivision steps are performed in all. The amount that tmaxt_{\max} can change in any individual step is bounded (e.g., earlier in this paragraph we saw that tmaxt_{\max} is at most 2d2d after the first change in xminx_{\min} or xmaxx_{\max}), so bounding the number of changes allows us to bound the final value of tmaxt_{\max}.

In particular, the crucial observation is that tmaxt_{\max} cannot increase more times than the combined number of decreases in xminx_{\min} and xmaxx_{\max}, plus 1. Each of xmin,xmaxx_{\min},x_{\max} can decrease at most d1d-1 times and keep a nonzero value. So after decreasing a combined number of 2d22d-2 times, at most xmin=xmax=1x_{\min}=x_{\max}=1. Then each subsequent pseudodivision eliminates xx, so the pseudoremainders are not used as long as xx is still the target variable. Hence at this stage there can be no more changes to xminx_{\min} and xmaxx_{\max} (they will both still be 1 when only one polynomial with leader xx remains) and tmaxt_{\max} can only increase one more time (due to pseudodivision involving elements having degree 1 in xx), making for 2d12d-1 increases at most.

As alluded to immediately before the theorem statement, we induct on the combined number of decreases in xminx_{\min} and xmaxx_{\max} to show that tmaxt_{\max} never exceeds F2d+1d=T(d,1)F_{2d+1}d=T(d,1). In particular, we assert that after jj total decreases in xminx_{\min} and xmaxx_{\max} (with 1j2d21\leq j\leq 2d-2), we satisfy two conditions: 1. we have tmaxFj+2dt_{\max}\leq F_{j+2}d and 2. at least one of the current minimal pseudodivisor and maximal pseudodividend has total degree at most Fj+1dF_{j+1}d. The paragraph before last establishes the base case j=1j=1. The reasoning is analogous for the inductive case: suppose after j1j-1 decreases we have tmaxF(j1)+2d=Fj+1dt_{\max}\leq F_{(j-1)+2}d=F_{j+1}d and at least one of the current minimal pseudodivisor and maximal pseudodividend has total degree at most F(j1)+1d=FjdF_{(j-1)+1}d=F_{j}d. As in the base case, we perform pseudodivision until we decrease either one or both of xminx_{\min} and xmaxx_{\max} for a total of jj or j+1j+1 decreases. Since by assumption either the pseudodivisor or pseudodividend has total degree at most FjdF_{j}d and neither has total degree greater than Fj+1dF_{j+1}d, the pseudoremainder has total degree at most Fjd+Fj+1d=Fj+2d<F(j+1)+2dF_{j}d+F_{j+1}d=F_{j+2}d<F_{(j+1)+2}d. This proves the assertion about tmaxt_{\max}. If xminx_{\min} stays the same, then the subsequent minimal pseudodivisor has total degree at most Fj+1dF_{j+1}d. If xmaxx_{\max} stays the same, then the subsequent maximal pseudodivisor has total degree at most Fj+1dF_{j+1}d. If both xminx_{\min} and xmaxx_{\max} decrease, the condition on minimal pseudodivisors and maximal pseudodividends continues to hold: we now have j+1j+1 decreases and both the new minimal pseudodivisor and new maximal pseudodividend have total degree at most Fj+2d=F(j+1)+1dF_{j+2}d=F_{(j+1)+1}d. This proves the inductive case.

Hence when j=2d2j=2d-2 (necessarily forcing xmin=xmax=1x_{\min}=x_{\max}=1), we have a current minimal pseudodivisor of total degree at most F2d2+1d=F2d1dF_{2d-2+1}d=F_{2d-1}d and current maximal pseudodividend of total degree at most F2d2+2d=F2ddF_{2d-2+2}d=F_{2d}d. The final pseudodivision steps at most add F2d1dF_{2d-1}d and F2ddF_{2d}d to yield the claimed value F2d+1d=T(d,1)F_{2d+1}d=T(d,1). This completes the proof. ∎

We now find an explicit function that bounds the recursively defined function T(d,n)T(d,n). We start with a couple of straightforward inequalities.

Lemma 102.

For all jj\in\mathbb{N}, the jj-th Fibonacci number FjF_{j} satisfies Fj<2jF_{j}<2^{j}.

Proof.
Fj\displaystyle F_{j}\, =ϕ1jϕ2j5=(1+52)j(152)j5\displaystyle=\,\frac{\phi_{1}^{j}-\phi_{2}^{j}}{\sqrt{5}}\,=\,\frac{\left(\frac{1+\sqrt{5}}{2}\right)^{j}-\left(\frac{1-\sqrt{5}}{2}\right)^{j}}{\sqrt{5}} (Binet’s formula, Proposition 100)
<2j+15\displaystyle<\frac{2^{j}+1}{\sqrt{5}} (ϕ1<2,|ϕ2|<1)\displaystyle\hskip 14.22636pt\text{(}\phi_{1}<2,|\phi_{2}|<1\text{)}
<2j.\displaystyle<2^{j}. (5>2,12j)\displaystyle\hskip 14.22636pt\text{(}\sqrt{5}>2,1\leq 2^{j}\text{)}

Lemma 103.

Let M,NM,N\in\mathbb{R} with M>2M>2. Then N(2M)+2M<(N+1)(2M)N\cdot\left(2^{M}\right)+2M<(N+1)\cdot\left(2^{M}\right).

Proof.

Note that N(2M)+2M<(N+1)(2M)N\cdot\left(2^{M}\right)+2M<(N+1)\cdot\left(2^{M}\right) if and only if 2M<2M2M<2^{M}. This holds by calculus: 2M=2M2M=2^{M} for M=2M=2 and the derivatives satisfy (2M)=2<ln2(2M)=(2M)(2M)^{\prime}=2<\ln{2}\cdot\left(2^{M}\right)=\left(2^{M}\right)^{\prime} when M2M\geq 2. ∎

Notation 104.

For natural numbers d1d\geq 1 and n=1n=1 we define

Tower(d,1):=23d+1.\text{Tower}(d,1):=2^{3d+1}.

For d1d\geq 1 and n>1n>1 we define

Tower(d,n):=223d+n+1,\text{Tower}(d,n):=2^{2^{\iddots^{{3d+n+1}}}},

where the right-hand side is an exponent tower of height n+1n+1 (i.e., the tower consists of nested exponents with nn copies of 2 followed by a final exponent 3d+n+13d+n+1).

Lemma 105.

All natural numbers d,n1d,n\geq 1 satisfy 24Tower(d,n)Tower(d,n+1)2^{4\cdot\text{Tower}(d,n)}\leq\text{Tower}(d,n+1).

Proof.

First let n=1n=1. Then

24Tower(d,1)=2423d+1=223d+1+2=223d+3=Tower(d,2).2^{4\cdot\text{Tower}(d,1)}=2^{4\cdot 2^{3d+1}}=2^{2^{3d+1+2}}=2^{2^{3d+3}}=\text{Tower}(d,2).

Now let n>1n>1. We find

24Tower(d,n)\displaystyle 2^{4\cdot\text{Tower}(d,n)} =24223d+n+1\displaystyle=2^{4\cdot 2^{2^{\iddots^{{3d+n+1}}}}}
=22(23d+n+1+2)\displaystyle=2^{2^{\left(2^{\iddots^{{3d+n+1}}}+2\right)}}
22(223d+n+1).\displaystyle\leq 2^{2^{\left(2\cdot 2^{\iddots^{{3d+n+1}}}\right)}}.

The net effect is to add 1 to the exponent of the third 2 from the bottom of the tower. Repeat the cycle of “adding 1 to an exponent is less than multiplying the exponent by 2, which adds 1 to the next exponent up” as long as the exponent is 2. This propagates addition of 1 up the tower to the final exponent, whence

24Tower(d,n)\displaystyle 2^{4\cdot\text{Tower}(d,n)} 2223d+n+2=Tower(d,n+1).\displaystyle\leq 2^{2^{2^{\iddots^{{3d+n+2}}}}}=\text{Tower}(d,n+1).

Theorem 106 (Explicit bounds on degree complexity of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate}).

Let T(d,n)T(d,n) be the recursive function from Theorem 101 that bounds the degree complexity of the output of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate}. The following inequality holds for natural numbers d,n1d,n\geq 1:

T(d,n)<Tower(d,n).T(d,n)<\text{Tower}(d,n).

(See Notation 104 for the definition of Tower(d,n)\text{Tower}(d,n).)

Proof.

We induct on nn, starting with n=1n=1. By definition, T(d,1)=(F2T(d,0)+1)T(d,0)=F2d+1dT(d,1)=(F_{2\cdot T(d,0)+1})\cdot T(d,0)=F_{2d+1}d. We observe the following:

F2d+1d\displaystyle F_{2d+1}d <22d+1d\displaystyle<2^{2d+1}d (Lemma 102)
<22d+12d=23d+1=Tower(d,1).\displaystyle<2^{2d+1}2^{d}\,=2^{3d+1}\,=\text{Tower}(d,1).

This proves the base case. Now suppose the inequality holds for n=kn=k; i.e., T(d,k)<Tower(d,k)T(d,k)<\text{Tower}(d,k). The inductive case is similar but we now have an additional power of 2, allowing us to use Lemma 103. By definition, T(d,k+1)=(F2T(d,k)+1)T(d,k)T(d,k+1)=(F_{2\cdot T(d,k)+1})\cdot T(d,k). We obtain the following:

(F2T(d,k)+1)T(d,k)\displaystyle(F_{2\cdot T(d,k)+1})\cdot T(d,k) <2(2Tower(d,k)+1)2log2Tower(d,k)\displaystyle<2^{\left(2\cdot\text{Tower}(d,k)+1\right)}\cdot 2^{\log_{2}{\text{Tower}(d,k)}}
=2(2Tower(d,k)+1+log2Tower(d,k))\displaystyle=2^{\left(2\cdot\text{Tower}(d,k)+1+\log_{2}{\text{Tower}(d,k)}\right)}
<2(22log2Tower(d,k)+2log2Tower(d,k))\displaystyle<2^{\left(2\cdot 2^{\log_{2}{\text{Tower}(d,k)}}+2\log_{2}{\text{Tower}(d,k)}\right)}
<2(32log2Tower(d,k))\displaystyle<2^{\left(3\cdot 2^{\log_{2}{\text{Tower}(d,k)}}\right)} (Lemma 103)
=2(3Tower(d,k))\displaystyle=2^{\left(3\cdot\text{Tower}(d,k)\right)}
<Tower(d,k+1).\displaystyle<\text{Tower}(d,k+1). (Lemma 105)

This completes the proof. ∎

Theorem 107 (Degree complexity of 𝚁𝙶𝙰o{\tt RGA}_{o}).

Let 𝐱=𝐟(𝐱),A,S\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x}),A,S satisfy the hypotheses of Theorem 96, the termination and correctness result for 𝚁𝙶𝙰o{\tt RGA}_{o}. Suppose further that each element of 𝐱𝐟(𝐱),A,S\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x}),A,S has degree at most dd. Then every nondifferential polynomial returned by 𝚁𝙶𝙰o(A,S){\tt RGA}_{o}(A,S) has degree at most R(d,n)R(d,n), defined recursively by R(d,n)0:=T(d,n)R(d,n)_{0}:=T(d,n), R(d,n)k+1:=T(d+R(d,n)k,n)R(d,n)_{k+1}:=T(d+R(d,n)_{k},n) for 0k<n0\leq k<n, and R(d,n):=R(d,n)nR(d,n):=R(d,n)_{n}. (The values R(d,n)kR(d,n)_{k} give bounds on intermediate polynomials’ degrees after 𝚁𝙶𝙰o{\tt RGA}_{o} has recursively called itself kk times out of the maximum possible nn. The outputs containing a proper derivative form a subset of 𝐱𝐟(𝐱)\mathbf{x^{\prime}}-\mathbf{f}(\mathbf{x}), so their degree is bounded by dd.)

Proof.

As noted in the correctness proof (Theorem 96), 𝚁𝙶𝙰o{\tt RGA}_{o} alternates between calls to 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} and to itself. The first possible call is to 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate}, producing nondifferential polynomials of degree at most T(d,n)=R(d,n)0T(d,n)=R(d,n)_{0}. Then in step 3 an ODE xf(𝐱)x^{\prime}-f(\mathbf{x}) may be pseudodivided by the derivative of a nondifferential polynomial qq; this at most adds the degrees of the dividend and divisor, yielding d+T(d,n)d+T(d,n). (Recall that sq(xf(𝐱))q=r~s_{q}(x^{\prime}-f(\mathbf{x}))-q^{\prime}=\widetilde{r}, where r~\widetilde{r} is the pseudoremainder. The total degree of sq(xf(𝐱))s_{q}(x^{\prime}-f(\mathbf{x})) is at most d+T(d,n)d+T(d,n). In fact, d+T(d,n)1d+T(d,n)-1 is a strict upper bound because the degree of the separant actually goes down, but we ignore this. The proper derivatives in r~\widetilde{r} all come from qq^{\prime}, which has total degree at most T(d,n)T(d,n). After replacing the proper derivatives using the relations 𝐱=𝐟(𝐱)\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x}) and obtaining rr, the total degree in the transformed version of qq^{\prime} is also at most d+T(d,n)d+T(d,n).)

Another call to 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} yields T(d+T(d,n),n)=R(d,n)1T(d+T(d,n),n)=R(d,n)_{1} and restarts the process (beginning with pseudodivision in step 3 since the equations are now triangular and have their separants in the set of inequations). After kk iterations have eliminated kk ODEs, the degree is at most R(d,n)kR(d,n)_{k}, whence pseudodivision and another call to 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} yield R(d,n)k+1=T(d+R(d,n)k,n)R(d,n)_{k+1}=T(d+R(d,n)_{k},n).∎

Notation 108.

For natural numbers d,n1d,n\geq 1 and 0kn0\leq k\leq n we define

RTower(d,n)k:=2Tower(d,n+k),\text{RTower}(d,n)_{k}:=2^{{\iddots^{{\text{Tower}(d,n+k)}}}},

where the right-hand side is an exponent tower of height k(n1)+1k(n-1)+1 (i.e., the tower consists of nested exponents with k(n1)k(n-1) copies of 2 followed by a final exponent Tower(d,n+k)\text{Tower}(d,n+k)).

We also define

RTower(d,n):=RTower(d,n)n=2Tower(d,2n)\text{RTower}(d,n):=\text{RTower}(d,n)_{n}=2^{{\iddots^{{\text{Tower}(d,2n)}}}}

where the right-hand side is an exponent tower of height n(n1)+1n(n-1)+1.

Theorem 109 (Explicit bounds on degree complexity of 𝚁𝙶𝙰o{\tt RGA}_{o}).

Let R(d,n)R(d,n) be the recursive function from Theorem 107 that bounds the degree complexity of the output of 𝚁𝙶𝙰o{\tt RGA}_{o}. The following inequality holds for natural numbers d,n1d,n\geq 1:

R(d,n)<RTower(d,n).R(d,n)<\text{RTower}(d,n).

(See Notation 108 for the definition of RTower(d,n)\text{RTower}(d,n).)

Proof.

We use induction on kk for 0kn0\leq k\leq n to bound R(d,n)kR(d,n)_{k} (recall that R(d,n):=R(d,n)nR(d,n):=R(d,n)_{n}. For k=0k=0 we have R(d,n)0:=T(d,n)<Tower(d,n)R(d,n)_{0}:=T(d,n)<\text{Tower}(d,n) by Theorem 106; this equals RTower(d,n)0\text{RTower}(d,n)_{0}, which is a tower with 0=0(n1)0=0(n-1) copies of 2 followed by exponent Tower(d,n+0)\text{Tower}(d,n+0).

Now let 0k<n0\leq k<n and suppose R(d,n)k<RTower(d,n)kR(d,n)_{k}<\text{RTower}(d,n)_{k}. We show that R(d,n)k+1<RTower(d,n)k+1R(d,n)_{k+1}<\text{RTower}(d,n)_{k+1}.

R(d,n)k+1\displaystyle R(d,n)_{k+1} =T(d+R(d,n)k,n)\displaystyle=T(d+R(d,n)_{k},n)
<Tower(d+R(d,n)k,n)\displaystyle<\text{Tower}(d+R(d,n)_{k},n) (Theorem 106)
<Tower(d+RTower(d,n)k,n)\displaystyle<\text{Tower}(d+\text{RTower}(d,n)_{k},n)
=23(d+RTower(d,n)k)+α\displaystyle=2^{{\iddots^{{3(d+\text{RTower}(d,n)_{k})+\alpha}}}}
=23RTower(d,n)k+3d+α\displaystyle=2^{{\iddots^{{3\cdot\text{RTower}(d,n)_{k}+3d+\alpha}}}}
<24RTower(d,n)k\displaystyle<2^{{\iddots^{{4\cdot\text{RTower}(d,n)_{k}}}}}
=24(2Tower(d,n+k))\displaystyle=2^{{\iddots^{{4\cdot\left(2^{{\iddots^{{\text{Tower}(d,n+k)}}}}\right)}}}}
2(24Tower(d,n+k))\displaystyle\leq 2^{{\iddots^{{\left(2^{{\iddots^{{4\cdot\text{Tower}(d,n+k)}}}}\right)}}}}
2Tower(d,n+k+1)\displaystyle\leq 2^{{\iddots^{\text{Tower}(d,n+k+1)}}}
=RTower(d,n)k+1.\displaystyle=\text{RTower}(d,n)_{k+1}.

After expanding the top exponent Tower(d,2n)\text{Tower}(d,2n) of RTower(d,n)\text{RTower}(d,n), the bound on 𝚁𝙶𝙰o{\tt RGA}_{o} becomes an exponent tower with n(n1)+2n=n2+nn(n-1)+2n=n^{2}+n copies of 2 followed by a final exponent 3d+2n+13d+2n+1.

While the nonelementary bounds in Theorem 109 are enormous from a practical perspective, there are important compensating factors. As noted in Remark 95, other published versions of RGA use the same mechanism of recursive splitting and pseudodivision that blows up the bounds on 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} and hence on 𝚁𝙶𝙰o{\tt RGA}_{o}. In spite of RGA’s apparently high worst-case complexity, it has nonetheless been used profitably in applications (p. 4.1). Likewise, our experience (e.g., Sections 3.3, 4.2) shows that RGA has potential for studying algebraic invariants due to its systematic nature and universal results.

More theoretically, the problem of getting a differential radical decomposition of an explicit system with nondifferential inequations is close in spirit to the non-differential radical ideal membership problem. The effective Nullstellensatz [94] shows that radical ideal membership in polynomial rings over fields is strictly easier than general ideal membership in those rings. This opens the door for specialized approaches to radical ideal membership that outperform general Gröbner basis methods in terms of asymptotic complexity. (Möller and Mora [95] adapted a previous example [32] to prove doubly exponential lower bounds for Gröbner bases. In particular, they demonstrated ideals with generators of degree dd in nn variables such that all Gröbner bases using certain monomial orderings must have an element of degree doubly exponential in nn and polynomial in dd.) Szántó [87, 88] developed a characteristic set method of singly exponential complexity (in nn, polynomial in dd) [96] for radical ideal membership. (See also [97, 98, 66, 99].) Szántó’s method reduces radical ideal membership testing to checking whether polynomials pseudoreduce to zero modulo certain characteristic sets. (In fact, the theory is closely related to that of RGA.)

It may be possible to generalize this to the differential case and prove Lemma 94 while replacing 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} with a method of singly exponential complexity. The results of [100] and [91] imply that the invariant yielded by 𝚁𝙶𝙰o{\tt RGA}_{o} can be obtained by other techniques with doubly exponential complexity (Section 5.2). This further supports the idea that some modification of 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} might dispense with the nonelementary bounds. Lastly, Theorem 112 and the resulting analysis in Section 4.4 suggest that the closely related problem of checking invariance has a very rare worst case and that singly exponential complexity is actually the norm.

4.4 Invariance Checking, Totally Real Varieties, and Complexity

In this section we connect totally real varieties to invariance checking. Theorem 112 below and the subsequent commentary are also relevant to complexity and bounds.

Proposition 110.

Let A={p1,,pm}[𝐱]A=\{p_{1},\ldots,p_{m}\}\subseteq\mathbb{R}[\mathbf{x}], let 𝐅\mathbf{F} be a polynomial vector field, and let 𝐕(A)\mathbf{V}_{\mathbb{R}}(A) be an invariant set with respect to 𝐅\mathbf{F}. Then (A)\sqrt[\mathbb{R}]{(A)} is an invariant ideal. If in addition 𝐕(A)\mathbf{V}_{\mathbb{C}}(A) is totally real, then (A)\sqrt{(A)} is an invariant ideal.

Proof.

By the real Nullstellensatz (Theorem 24) and statement 2 of Theorem 50, the ideal (𝐅(A))(A)(\mathcal{L}^{*}_{\mathbf{F}}(A))\subseteq\sqrt[\mathbb{R}]{(A)}. Since (A)(𝐅(A))(A)(A)\subseteq(\mathcal{L}^{*}_{\mathbf{F}}(A))\subseteq\sqrt[\mathbb{R}]{(A)}, Proposition 23 (3a) shows that (𝐅(A))=(A)\sqrt[\mathbb{R}]{(\mathcal{L}^{*}_{\mathbf{F}}(A))}=\sqrt[\mathbb{R}]{(A)}. The ideal (𝐅(A))(\mathcal{L}^{*}_{\mathbf{F}}(A)) is closed under Lie differentiation and hence is invariant; it follows by Lemma 52 that (A)\sqrt[\mathbb{R}]{(A)} is invariant.

If 𝐕(A)\mathbf{V}_{\mathbb{C}}(A) is totally real, then by Proposition 23 (2),(3b) and Proposition 33 we have (A)=(A)\sqrt{(A)}=\sqrt[\mathbb{R}]{(A)}, which is invariant by the preceding paragraph. ∎

Proposition 111.

Let A={p1,,pm}[𝐱]A=\{p_{1},\ldots,p_{m}\}\subseteq\mathbb{R}[\mathbf{x}] and let 𝐅\mathbf{F} be a polynomial vector field. If 𝐅(pj)(A)\mathcal{L}_{\mathbf{F}}(p_{j})\notin\sqrt[\mathbb{R}]{(A)} for some 1jm1\leq j\leq m, then 𝐕(A)\mathbf{V}_{\mathbb{R}}(A) is not an invariant set with respect to 𝐅\mathbf{F}. If 𝐕(A)\mathbf{V}_{\mathbb{C}}(A) is totally real and 𝐅(pj)(A)\mathcal{L}_{\mathbf{F}}(p_{j})\notin\sqrt{(A)} for some 1jm1\leq j\leq m, then 𝐕(A)\mathbf{V}_{\mathbb{R}}(A) is not invariant.

Proof.

Immediate from Proposition 110 because the hypotheses of Proposition 111 imply that (A)\sqrt[\mathbb{R}]{(A)} and (A)\sqrt{(A)}, respectively, are not invariant ideals. ∎

The next theorem generalizes to multiple polynomials Lie’s criterion for invariance of smooth algebraic manifolds [91, Fig. 1][101, Thm. 2.8]: let h[𝐱]h\in\mathbb{R}[\mathbf{x}] and assume that the real variety 𝐕(h)\mathbf{V}_{\mathbb{R}}(h) has no singular points. Lie’s criterion then implies that 𝐕(h)\mathbf{V}_{\mathbb{R}}(h) is invariant with respect to polynomial vector field 𝐅\mathbf{F} if the first Lie derivative 𝐅(h)\mathcal{L}_{\mathbf{F}}(h) vanishes everywhere on 𝐕(h)\mathbf{V}_{\mathbb{R}}(h).

Theorem 112.

Let A={p1,,pm}[𝐱]A=\{p_{1},\ldots,p_{m}\}\subseteq\mathbb{R}[\mathbf{x}] and let 𝐅\mathbf{F} be a polynomial vector field. If (A)(A) is real radical (i.e., (A)=(A)(A)=\sqrt[\mathbb{R}]{(A)}), then 𝐕(A)\mathbf{V}_{\mathbb{R}}(A) is an invariant set with respect to 𝐅\mathbf{F} if and only if 𝐅(pj)(A)\mathcal{L}_{\mathbf{F}}(p_{j})\in(A) for all 1jm1\leq j\leq m. Equivalently, if 𝐕(A)\mathbf{V}_{\mathbb{C}}(A) is totally real and (A)(A) is radical (i.e., (A)=(A)(A)=\sqrt{(A)}), then 𝐕(A)\mathbf{V}_{\mathbb{R}}(A) is an invariant set with respect to 𝐅\mathbf{F} if and only if 𝐅(pj)(A)\mathcal{L}_{\mathbf{F}}(p_{j})\in(A) for all 1jm1\leq j\leq m.

Proof.

Immediate from Corollary 51 and Proposition 111. ∎

Theorem 112 raises some important questions. How common is it for 𝐕(A)\mathbf{V}_{\mathbb{C}}(A) to be totally real and (A)(A) to be radical, and can we check those properties efficiently? Regarding the prevalence of totally real varieties, we make the following observations about Theorem 44, which states that the complex variety corresponding to an irreducible real algebraic variety defined by a single polynomial p[𝐱]p\in\mathbb{R}[\mathbf{x}] is totally real if and only if pp assumes both positive and negative values as 𝐱\mathbf{x} varies over n\mathbb{R}^{n}.

Fix the degree dd. Blekherman ([102, Thm. 1.1]) has given an asymptotic, probabilistic result showing that for large n=|𝐱|n=|\mathbf{x}|, a randomly chosen polynomial almost certainly attains both positive and negative values. (More precisely, [102] puts a probability measure on the space of polynomials and shows that as nn\rightarrow\infty, the ratio of the measure of the set of nonnegative polynomials and the measure of the set of all polynomials goes to 0. See the first inequality in Theorem 1.1 of [102], which gives an upper bound c2n1/2c_{2}n^{-1/2} on this ratio for some constant c2c_{2}.) Also, if n2n\geq 2 the space of reducible polynomials of at most a given bounded degree has strictly lower dimension than the space of all polynomials with that bound on the degree (see Example 113 below). Hence for large nn a randomly chosen polynomial p[𝐱]p\in\mathbb{R}[\mathbf{x}] will almost certainly define a totally real complex variety by Theorem 44 because pp will almost certainly be irreducible and take on both positive and negative values. We suspect that a similar result holds for varieties that are defined by multiple, possibly reducible, polynomials (i.e., the generic situation should be that a complex variety defined over \mathbb{R} is totally real).

We are not aware of specific results on the prevalence of radical ideals among all ideals, but we expect that a “typical” ideal (with respect to some reasonable probability distribution) is radical. Consequently, we hypothesize that for almost all (in a precise sense that would require additional work to specify) complex varieties defined over the reals, checking invariance with respect to a polynomial vector field reduces by Theorem 112 to checking membership of the first Lie derivatives in the ideal generated by the defining polynomials of the variety.

This leads to an interesting situation with regard to the computational complexity of checking for invariance. Given A[𝐱]A\subseteq\mathbb{R}[\mathbf{x}], if 𝐕(A)\mathbf{V}_{\mathbb{C}}(A) is totally real and (A)(A) is radical, then we can check invariance of 𝐕(A)\mathbf{V}_{\mathbb{R}}(A) with complexity singly exponential in the number of variables. (This requires a singly exponential test for radical ideal membership like Szántó’s [87, 88].) As explained in the preceding paragraph, we have reason to believe that this is possible for almost all choices of AA.

However, we are left with the “measure zero” cases where 𝐕(A)\mathbf{V}_{\mathbb{C}}(A) is not totally real or (A)(A) is not radical. Determining whether a given candidate AA has these properties appears, in the worst case, to be doubly exponential in the number of variables. For instance, decomposing a variety into irreducible components (which seems unavoidable for determining if the variety is totally real) has doubly exponential lower bounds in nn [103, Thm. 1]. (In particular, Chistov shows that for sufficiently large n,dn,d there are polynomials in nn variables of degree less than dd defining a reducible variety with a component whose corresponding prime ideal has no set of generators with all elements having degree less than a certain doubly exponential bound.) Likewise, checking if a variety is radical is closely related to primary ideal decomposition [30, Sect. 4.8], which has doubly exponential complexity (following again from [103, Thm. 1]).

In summary, then, we suspect that with singly exponential complexity we can almost always correctly guess whether a given AA is invariant, but proving that we have the correct answer may require doubly exponential complexity. (This is similar, but not identical, to the hypothesis–also possibly true–that proving invariance of an algebraic set has singly exponential average-case complexity but doubly exponential worst-case complexity.) However, we cannot discard the possibility that the worst case is also singly exponential; settling the matter appears difficult.

Example 113.

As part of the preceding analysis we claimed that the set of reducible polynomials of at most a given bounded degree has smaller dimension than the set of all such polynomials, and hence there is a precise sense in which almost all polynomials are irreducible. If n=1n=1, then over \mathbb{C} every polynomial of degree d>1d>1 is reducible, so we only care about the case n2n\geq 2. Rather than prove a formal theorem with full details, we illustrate with a simple case that mirrors the general result (the example is based on an argument from [104]).

Let KK be an algebraically closed field and consider P2,d2{0}K[x,y]P_{2,d\leq 2}\setminus\{0\}\subseteq K[x,y], where P2,d2{0}P_{2,d\leq 2}\setminus\{0\} is the set of all nonzero polynomials over KK in two variables having degree at most 2. An arbitrary element of P2,d2{0}P_{2,d\leq 2}\setminus\{0\} has the form p=a1+a2x+a3y+a4x2+a5xy+a6y2p=a_{1}+a_{2}x+a_{3}y+a_{4}x^{2}+a_{5}xy+a_{6}y^{2}, with not all aia_{i} being zero. We can thus identify pp with the 6-tuple (a1,,a6)K6{𝟎}(a_{1},\ldots,a_{6})\in K^{6}\setminus\{\mathbf{0}\}. Irreducibility is not affected by nonzero scalar multiples, so it is natural to view pp as a point (a1::a6)(a_{1}:\cdots:a_{6}) in 5(K)\mathbb{P}^{5}(K), the five-dimensional projective space over KK [30, Sect. 8.2]. By definition, 5(K)\mathbb{P}^{5}(K) is the quotient of K6{𝟎}K^{6}\setminus\{\mathbf{0}\} by the equivalence relation \sim such that 𝐚𝐛\mathbf{a}\sim\mathbf{b} if and only if there exists 0αK0\neq\alpha\in K such that α𝐚=𝐛\alpha\mathbf{a}=\mathbf{b}. (Going forward we omit the KK in 5(K)\mathbb{P}^{5}(K).) For instance, both 1+2x23xy1+2x^{2}-3xy and 24x2+6xy-2-4x^{2}+6xy correspond to (1:0:0:2:3:0)5(1:0:0:2:-3:0)\in\mathbb{P}^{5}.

Points of 5\mathbb{P}^{5} that correspond to reducible polynomials in K[x,y]K[x,y] are contained in the image of the map f:2×25f:\mathbb{P}^{2}\times\mathbb{P}^{2}\rightarrow\mathbb{P}^{5} defined by

f((b1:b2:b3),(c1:c2:c3))=(b1c1:b1c2+b2c1:b1c3+b3c1:b2c2:b2c3+b3c2:b3c3).f((b_{1}:b_{2}:b_{3}),(c_{1}:c_{2}:c_{3}))=(b_{1}c_{1}:b_{1}c_{2}+b_{2}c_{1}:b_{1}c_{3}+b_{3}c_{1}:b_{2}c_{2}:b_{2}c_{3}+b_{3}c_{2}:b_{3}c_{3}).

This point represents the factorization p=qrp=qr, where q=b1+b2x+b3yq=b_{1}+b_{2}x+b_{3}y and r=c1+c2x+c3yr=c_{1}+c_{2}x+c_{3}y. The image of ff has dimension at most 4=2+2= dim(2)+ dim(2)= dim(2×2)< dim(5)=54=2+2=\text{ dim}(\mathbb{P}^{2})+\text{ dim}(\mathbb{P}^{2})=\text{ dim}(\mathbb{P}^{2}\times\mathbb{P}^{2})<\text{ dim}(\mathbb{P}^{5})=5. These values are justified by Examples 1.30, 1.33 (p. 67) and Theorem 1.25 (p. 75) of [42]. Hence every polynomial corresponding to a point in the “large” set 5f(2×2)\mathbb{P}^{5}\setminus f(\mathbb{P}^{2}\times\mathbb{P}^{2}) (the complement of a lower-dimensional set) is irreducible.

Remark 114.

We note that the prevalence of totally real and/or irreducible varieties is also relevant to the complexity of generating equations for algebraic invariants. In particular, Theorem 88 implies that these and other conditions make it easier to interpret the output of 𝚁𝙶𝙰o{\tt RGA}_{o}. For instance, suppose 𝚁𝙶𝙰o{\tt RGA}_{o} returns a collection of regular differential systems (A1,S1),,(Ar,Sr)(A_{1},S_{1}),\ldots,(A_{r},S_{r}) and each (Ai,Si)(A_{i},S_{i}) satisfies the hypotheses of Theorem 88 (2). Then we may ignore the (doubly exponential) complication of finding generators of the saturation ideals (Ai[𝐱]):Si{(A_{i}\cap\mathbb{R}[\mathbf{x}])}:S_{i}^{\infty} because the invariant is simply i=1r𝐕(Ai[𝐱])\cup_{i=1}^{r}\mathbf{V}_{\mathbb{R}}(A_{i}\cap\mathbb{R}[\mathbf{x}]) and the inequations are superfluous. (Compare to Theorem 98 (3).)

5 Related work

5.1 Invariant Generation and Checking

Several recent algebraic algorithms for generating invariants are close in spirit to our use of 𝚁𝙶𝙰o{\tt RGA}_{o}. In particular, all are template methods that find invariants having the form of a parameterized polynomial input (see the example in Section 4.2). However, 𝚁𝙶𝙰o{\tt RGA}_{o}’s basic elimination method (namely, differential pseudodivision) is unique in the class. This leads to a major advantage of our approach: 𝚁𝙶𝙰o{\tt RGA}_{o} avoids both Gröbner bases and real quantifier elimination. In particular, we obtain the largest possible invariant that is consistent with the input system without having to test ideal membership or the vanishing of Lie derivatives.

Liu, Zhan, and Zhao [105] proved that invariance of semialgebraic sets (i.e., defined by polynomial equations and inequalities over the real numbers) with respect to a polynomial vector field is decidable and gave an algorithm–referred to here as the LZZ algorithm–for the problem of checking invariance. By enforcing an invariance criterion on a template, the algorithm gives a way of generating invariants of a given form. The chief downside of LZZ is that it uses two expensive tools, Gröbner bases and real quantifier elimination. (The generation version only uses real quantifier elimination, but the template might need to be large to find a nontrivial invariant.)

Ghorbal and Platzer [56] contributed a procedure that here we refer to as DRI (“differential radical invariant”). Given a homogeneous template polynomial hh with parameter coefficients, assume an order NN and write a symbolic matrix representing membership of the NN-th Lie derivative of hh in the ideal generated by hh and the preceding N1N-1 Lie derivatives. DRI seeks an invariant of maximal dimension with this form by minimizing the rank of the symbolic matrix.

One virtue of DRI is completeness: any algebraic invariant that exists can be produced by choosing NN and the degree of hh to be sufficiently large [56, Cor. 1]. Another is its reliance on linear algebra (similar to [106, 107], which DRI partly generalizes), an area with many efficient computational tools. DRI does not use Gröbner bases, but nonlinear real arithmetic/quantifier elimination is generally required to find parameter values that minimize the rank. DRI has considerable power, as demonstrated by a number of nontrivial case studies from the aerospace domain [56, Sect. 6]. Nonetheless, it is significantly slower than the following two algorithms [33, Sect. 6].

Kong et al. [108] use a similar idea for invariant generation, though they restrict themselves to the case of invariants pp that are Darboux polynomials. This means that the Lie derivative p˙=ap\dot{p}=ap for some polynomial aa (i.e., pp divides its own Lie derivative with respect to the vector field in question). This prevents completeness, but also contributes to better empirical performance when it applies [108, Table 1]. However, the implementation still uses Gröbner bases and nonlinear real arithmetic [108, Remark 3].

Recent work of Boreale [33] has strong ties to both DRI [56] and [108]. The POST algorithm [33, p. 9] builds on the same theory as [56] but focuses on invariants containing a given initial set. Moreover, POST uses Gröbner bases and an iterative process involving descending chains of vector spaces and ascending chains of ideals. In some sense, Boreale’s work is intermediate between that of [56] and [108]: POST offers completeness guarantees missing from [108] but in general is slower than [108] and faster than DRI. Boreale also uses POST and a generic point of the initial set to study the semialgebraic case.

In [91] Ghorbal, Sogokon, and Platzer give an invariant checking algorithm that is related to LZZ but is restricted to algebraic sets and improves efficiency in that case. Like LZZ, the method in [91] uses Gröbner bases and nonlinear real arithmetic. The algorithm computes successive Lie derivatives of the input A[𝐱]A\subseteq\mathbb{R}[\mathbf{x}] and checks ideal membership (where Gröbner bases come in) until the first-order Lie derivatives of all preceding elements belong to the ideal generated by those elements. This will eventually happen by Hilbert’s basis theorem (Theorem 2), so AA and the subsequent Lie derivatives computed up to that stage generate (𝐅(A))(\mathcal{L}^{*}_{\mathbf{F}}(A)) (see our comments immediately preceding Theorem 98). Real arithmetic checks that each Lie derivative computed vanishes on all of 𝐕(A)\mathbf{V}_{\mathbb{R}}(A). This holds if and only if 𝐕(A)\mathbf{V}_{\mathbb{R}}(A) is invariant with respect to 𝐅\mathbf{F} (Corollary 51).

The recent ESE invariant checking algorithm of [109] refines and extends both LZZ and [91]. ESE again uses Gröbner bases and real arithmetic, but it structures quantifier elimination subproblems more efficiently than does LZZ and, unlike [91], applies to semialgebraic sets. Based on the topological notion of exit sets [110] (which concern vector field trajectories exiting the boundary of a set in n\mathbb{R}^{n}), the ESE algorithm can verify or disprove invariance of a candidate semialgebraic set. ESE is often much faster than an enhanced version of LZZ that is also described in [109].

We lastly mention a new approach of Wang et al. [111] for generating invariant barrier certificates (a concept closely tied to invariants; see [111, Thm. 4]). The method employs Gröbner bases to find a sufficient number of Lie derivatives and uses them to satisfy conditions [111, Def. 4] that guarantee a template is an invariant barrier certificate. However, [111] then translates the criterion into a numerical optimization problem. Experiments show promising performance, but the method’s reliance on local extrema occasionally results in erroneous output [111, Table 1]. (Wang et al. provide the option of searching for global extrema using a branch-and-bound technique, but this can increase the complexity substantially.) This contrasts with the trade-offs made by fully symbolic methods like 𝚁𝙶𝙰o{\tt RGA}_{o} for generating or checking invariants.

5.2 Complexity

As indicated in Section 5.1, the order of Lie derivatives needed to check invariants is an important factor in the complexity of the algorithms from [105, 91, 33, 111, 109]. The best upper bound known is doubly exponential in the number of variables [100, Thm. 4], but both [109] and [100] suggest this is overly conservative. This intuition is consistent with our discussion in Section 4.4, where Theorem 112 collapses invariance checking to a single round of radical ideal membership testing (assuming a radical ideal that defines a totally real variety; we argued that this should almost always hold). Whether or not the worst-case complexity is greater than singly exponential, it is necessarily considerable since generating algebraic invariant sets is NP-hard [56, p. 289].)

In another direction, Section 4.3 demonstrates that the complexity of RGA is nontrivial to analyze. While degree bounds for RGA have not previously appeared, upper bounds on the order of intermediate and output differential polynomials have been worked out [79, 112]. The order bounds on RGA from [79] amount to n!n! for ODEs of the form 𝐱=𝐟(𝐱)\mathbf{x^{\prime}}=\mathbf{f}(\mathbf{x}) in nn variables. However, this result is excessive for 𝚁𝙶𝙰o{\tt RGA}_{o} because we differentiate at most nn times. Moreover, in 𝚁𝙶𝙰o{\tt RGA}_{o} we only handle differential polynomials of order at most 1 since we use the explicit form to substitute nondifferential polynomials for proper derivatives.

Degree bounds for differential characteristic sets appear in [113, Thm. 5.48], but these are again excessive for our situation.

6 Conclusion

In this paper we have adapted the Rosenfeld-Gröbner algorithm to generate algebraic invariants of polynomial differential systems. Finding invariants is a crucial and computationally difficult task that our method tackles with a new and systematic approach using tools from algebraic geometry, differential algebra, and the theory of regular systems. Our algorithm 𝚁𝙶𝙰o{\tt RGA}_{o} provides an alternative to the traditional Gröbner bases and real quantifier elimination while giving a novel representation of the largest algebraic invariant contained in an input algebraic set. We have also highlighted the prevalence and importance of totally real varieties for reducing the computational complexity of both generating and checking invariants of differential equations.

The unique aspects of 𝚁𝙶𝙰o{\tt RGA}_{o} provide multiple directions for future work. One important goal is modifying the subroutine 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate} to preserve differential solutions while obtaining a regular algebraic decomposition with singly exponential complexity. Beyond theoretical complexity improvements, our framework would greatly benefit from effective heuristics (e.g., for detecting totally real varieties) and optimizations like pruning superfluous branches in 𝚃𝚛𝚒𝚊𝚗𝚐𝚞𝚕𝚊𝚝𝚎{\tt Triangulate}. Some rankings are much easier to compute than others [114], so translating from one differential ranking to another could be an important strategy. Partial runs of 𝚁𝙶𝙰o{\tt RGA}_{o} are another interesting possibility. In our experience, the final iterations of the algorithm tend to be drastically more expensive than the early ones while yielding less additional information (e.g., giving relatively trivial, low-dimensional chains when we already know the generic chain). The example in 4.2 demonstrates this; we are most interested in the generic Chain 2 and would like the option of only computing it.

The treatment of parameters is also a critical matter. Our example used auxiliary variables with constant derivative, but this is suboptimal. Fakouri et al. [77] describe a modified version of RGA designed to more efficiently identify all possible regular chains corresponding to different values of parameters. Adapting this algorithm to our problems could be important for a more scalable 𝚁𝙶𝙰o{\tt RGA}_{o}.

While purely algebraic invariants are important for continuous dynamical systems and enjoy strong decidability properties [4], many polynomial vector fields have no such invariants that are nontrivial (not isolated points, coordinate axes, etc.). The Van der Pol oscillator is an example that nonetheless has interesting semialgebraic invariants [115, 116]. In the literature there are several encodings of inequalities as equations using auxiliary variables (e.g., [117, 118]). Our initial investigation suggests that this idea, together with RGA, can yield insights into semialgebraic invariants of nonlinear systems with non-obvious dynamics.

In light of these prospects, we view our results in this paper as laying the groundwork for an enhanced method that produces easily verified invariants, combines optimal theoretical complexity with strong practical performance, and is broadly applicable. Progress on these fronts could lead to inclusion in practical tools for CPS verification such as the theorem prover KeYmaera X [119] with its automatic invariant-generating utility, Pegasus [71].

Acknowledgements

We are grateful to François Boulier, Khalil Ghorbal, and Yong Kiam Tan for helpful exchanges. This work was supported by the AFOSR under grants FA9550-18-1-0120 and FA9550-16-1-0288.

References

  • [1] A. Platzer, Logical Analysis of Hybrid Systems: Proving Theorems for Complex Dynamics, Springer, Heidelberg, 2010. doi:10.1007/978-3-642-14509-4.
  • [2] A. Platzer, Logical Foundations of Cyber-Physical Systems, Springer, 2018. doi:10.1007/978-3-319-63588-0.
    URL https://doi.org/10.1007/978-3-319-63588-0
  • [3] A. Goriely, Integrability and nonintegrability of dynamical systems, Vol. 19, World Scientific, 2001.
  • [4] A. Platzer, Y. K. Tan, Differential equation invariance axiomatization, J. ACM 67 (1) (2020) 6:1–6:66. doi:10.1145/3380825.
  • [5] Y. K. Tan, A. Platzer, Deductive stability proofs for ordinary differential equations, in: TACAS (2), Vol. 12652 of Lecture Notes in Computer Science, Springer, 2021, pp. 181–199.
  • [6] Y. K. Tan, A. Platzer, An axiomatic approach to existence and liveness for differential equations, Formal Aspects of Computing (2021) 1–58.
  • [7] E. Rodríguez-Carbonell, A. Tiwari, Generating polynomial invariants for hybrid systems, in: M. Morari, L. Thiele (Eds.), HSCC, Vol. 3414 of LNCS, Springer, 2005, pp. 590–605.
  • [8] S. Sankaranarayanan, H. B. Sipma, Z. Manna, Constructing invariants for hybrid systems, Form. Methods Syst. Des. 32 (1) (2008) 25–55. doi:10.1007/s10703-007-0046-1.
  • [9] A. Tiwari, Generating box invariants, in: M. Egerstedt, B. Mishra (Eds.), HSCC, Vol. 4981 of LNCS, Springer, 2008, pp. 658–661.
  • [10] A. Platzer, E. M. Clarke, Computing differential invariants of hybrid systems as fixedpoints, Form. Methods Syst. Des. 35 (1) (2009) 98–120. doi:10.1007/s10703-009-0079-8.
  • [11] S. Sankaranarayanan, Automatic invariant generation for hybrid systems using ideal fixed points, in: K. H. Johansson, W. Yi (Eds.), HSCC, ACM, 2010, pp. 221–230. doi:10.1145/1755952.1755984.
  • [12] S. Sankaranarayanan, A. Tiwari, Relational abstractions for continuous and hybrid systems, in: G. Gopalakrishnan, S. Qadeer (Eds.), CAV, Vol. 6806 of LNCS, Springer, Berlin, 2011, pp. 686–702. doi:10.1007/978-3-642-22110-1_56.
  • [13] A. Taly, S. Gulwani, A. Tiwari, Synthesizing switching logic using constraint solving, STTT 13 (6) (2011) 519–535. doi:10.1007/s10009-010-0172-8.
  • [14] A. Platzer, A differential operator approach to equational differential invariants, in: L. Beringer, A. Felty (Eds.), ITP, Vol. 7406 of LNCS, Springer, 2012, pp. 28–48.
  • [15] B. Wu, X. Zou, Computing invariants for hybrid systems, in: Electronic System-Integration Technology Conference (ESTC), 2012 4th, 2012, pp. 203–206. doi:10.1109/ESTC.2012.6485572.
  • [16] K. Ghorbal, A. Platzer, Characterizing algebraic invariants by differential radical invariants, in: E. Ábrahám, K. Havelund (Eds.), TACAS, Vol. 8413 of LNCS, Springer, 2014, pp. 279–294. doi:10.1007/978-3-642-54862-8_19.
  • [17] A. Sogokon, K. Ghorbal, P. B. Jackson, A. Platzer, A method for invariant generation for polynomial continuous systems, in: B. Jobstmann, K. R. M. Leino (Eds.), Verification, Model Checking, and Abstract Interpretation - 17th International Conference, VMCAI 2016, St. Petersburg, FL, USA, January 17-19, 2016. Proceedings, Vol. 9583 of Lecture Notes in Computer Science, Springer, 2016, pp. 268–288. doi:10.1007/978-3-662-49122-5\_13.
    URL https://doi.org/10.1007/978-3-662-49122-5_13
  • [18] P. Roux, Y. Voronin, S. Sankaranarayanan, Validating numerical semidefinite programming solvers for polynomial invariants, in: X. Rival (Ed.), Static Analysis - 23rd International Symposium, SAS 2016, Edinburgh, UK, September 8-10, 2016, Proceedings, Vol. 9837 of LNCS, Springer, 2016, pp. 424–446. doi:10.1007/978-3-662-53413-7_21.
  • [19] S. Sankaranarayanan, Change-of-bases abstractions for non-linear hybrid systems, Nonlinear Analysis: Hybrid Systems 19 (2016) 107 – 133.
  • [20] H. Kong, S. Bogomolov, C. Schilling, Y. Jiang, T. A. Henzinger, Safety verification of nonlinear hybrid systems based on invariant clusters, in: G. Frehse, S. Mitra (Eds.), Proceedings of the 20th International Conference on Hybrid Systems: Computation and Control, HSCC 2017, Pittsburgh, PA, USA, April 18-20, 2017, ACM, 2017, pp. 163–172.
  • [21] M. Boreale, Complete algorithms for algebraic strongest postconditions and weakest preconditions in polynomial ode’s, in: A. M. Tjoa, L. Bellatreche, S. Biffl, J. van Leeuwen, J. Wiedermann (Eds.), SOFSEM 2018: Theory and Practice of Computer Science - 44th International Conference on Current Trends in Theory and Practice of Computer Science, Krems, Austria, January 29 - February 2, 2018, Proceedings, Vol. 10706 of LNCS, Springer, 2018, pp. 442–455.
  • [22] K. Ghorbal, A. Sogokon, Characterizing positively invariant sets: Inductive and topological methods, J. Symb. Comput. 113 (2022) 1–28. doi:10.1016/j.jsc.2022.01.004.
    URL https://doi.org/10.1016/j.jsc.2022.01.004
  • [23] A. Sogokon, S. Mitsch, Y. K. Tan, K. Cordwell, A. Platzer, Pegasus: Sound continuous invariant generation, Form. Methods Syst. Des. 58 (1) (2022) 5–41, special issue for selected papers from FM’19. doi:10.1007/s10703-020-00355-z.
  • [24] D. Wang, Elimination Methods, Texts & Monographs in Symbolic Computation, Springer, 2001. doi:10.1007/978-3-7091-6202-6.
    URL https://doi.org/10.1007/978-3-7091-6202-6
  • [25] J. Bochnak, M. Coste, M.-F. Roy, Real algebraic geometry, Vol. 36 of Ergebnisse der Mathematikund ihrer Grenzgebiete, Springer, 1998.
  • [26] E. R. Kolchin, Differential algebra and algebraic groups, Pure and Applied Mathematics, Vol. 54, Academic Press, New York-London, 1973.
  • [27] W. Li, C. Yuan, Elimination theory in differential and difference algebra, J. Syst. Sci. Complex. 32 (1) (2019) 287–316. doi:10.1007/s11424-019-8367-x.
    URL https://doi.org/10.1007/s11424-019-8367-x
  • [28] L. M. Pardo, How lower and upper complexity bounds meet in elimination theory, in: AAECC, Vol. 948 of Lecture Notes in Computer Science, Springer, 1995, pp. 33–69.
  • [29] B. Mishra, Algorithmic algebra, Texts and Monographs in Computer Science, Springer-Verlag, New York, 1993.
  • [30] D. Cox, J. Little, D. O’Shea, Ideals, varieties, and algorithms, 4th Edition, Undergraduate Texts in Mathematics, Springer, 2015.
  • [31] G. Gallo, B. Mishra, Efficient algorithms and bounds for Wu-Ritt characteristic sets, in: Effective methods in algebraic geometry, Springer, 1991, pp. 119–142.
  • [32] E. W. Mayr, A. R. Meyer, The complexity of the word problems for commutative semigroups and polynomial ideals, Advances in Mathematics 46 (3) (1982) 305–329.
  • [33] M. Boreale, Complete algorithms for algebraic strongest postconditions and weakest preconditions in polynomial ODEs, Sci. Comput. Program. 193 (2020) 102441. doi:10.1016/j.scico.2020.102441.
    URL https://doi.org/10.1016/j.scico.2020.102441
  • [34] E. Becker, R. Neuhaus, Computation of real radicals of polynomial ideals, in: Computational algebraic geometry, Springer, 1993, pp. 1–20.
  • [35] L. Menini, C. Possieri, A. Tornambè, Algebraic Geometry for Robotics and Control Theory, World Scientific, 2021.
  • [36] D. Richardson, Some undecidable problems involving elementary functions of a real variable, The Journal of Symbolic Logic 33 (4) (1969) 514–520.
  • [37] F. Boulier, D. Lazard, F. Ollivier, M. Petitot, Representation for the radical of a finitely generated differential ideal, in: ISSAC, ACM, 1995, pp. 158–166.
  • [38] S. Lang, Algebra, 3rd Edition, Vol. 211 of Graduate Texts in Mathematics, Springer-Verlag, New York, 2002.
  • [39] W. Rudin, Real and Complex Analysis, 3rd Ed., McGraw-Hill, Inc., USA, 1987.
  • [40] S. Mac Lane, Categories for the working mathematician, 2nd Edition, Vol. 5 of Graduate Texts in Mathematics, Springer Science & Business Media, 2013.
  • [41] O. Ore, Galois connexions, Transactions of the American Mathematical Society 55 (3) (1944) 493–513.
  • [42] I. R. Shafarevich, Basic algebraic geometry 1, 3rd Edition, Springer-Verlag, Berlin Heidelberg, 2013, translated from the 2007 Russian edition by Miles Reid. doi:https://doi.org/10.1007/978-3-642-37956-7.
  • [43] M. Michałek, B. Sturmfels, Invitation to nonlinear algebra, Vol. 211 of Graduate Studies in Mathematics, American Mathematical Soc., 2021.
  • [44] F. Boulier, F. Ollivier, D. Lazard, M. Petitot, Computing representations for radicals of finitely generated differential ideals, Appl. Algebra Engrg. Comm. Comput. 20 (1) (2009) 73–121. doi:10.1007/s00200-009-0091-7.
    URL http://dx.doi.org/10.1007/s00200-009-0091-7
  • [45] F. Sottile, Real algebraic geometry for geometric constraints, in: M. Sitharam, A. S. John, J. Sidman (Eds.), Handbook of geometric constraint systems principles, CRC Press, 2019, pp. 273–286.
  • [46] T. Sander, Aspects of algebraic geometry over non algebraically closed fields, Technical report, International Comp. Sci. Institute (1996).
  • [47] M. Marshall, Positive polynomials and sums of squares, no. 146, American Mathematical Soc., 2008.
  • [48] K. Harris, J. D. Hauenstein, Á. Szántó, Smooth points on semi-algebraic sets, ACM Commun. Comput. Algebra 54 (3) (2020) 105–108.
  • [49] R. Hartshorne, Algebraic Geometry, Graduate Texts in Mathemematics 52. Springer-Verlag, 1977.
  • [50] G. Blekherman, R. Sinn, G. G. Smith, M. Velasco, Sums of squares: A real projective story, Notices of the American Mathematical Society 68 (5) (2021).
  • [51] P. Conti, C. Traverso, A case of automatic theorem proving in euclidean geometry: the Maclane 83{}_{\mbox{3}} theorem, in: AAECC, Vol. 948 of Lecture Notes in Computer Science, Springer, 1995, pp. 183–193.
  • [52] D. Wang, Irreducible decomposition of algebraic varieties via characteristic sets and Gröbner bases, Comput. Aided Geom. Des. 9 (6) (1992) 471–484.
  • [53] J. H. Hubbard, B. B. Hubbard, Vector calculus, linear algebra, and differential forms: a unified approach, Matrix Editions, 2015.
  • [54] W. Walter, Ordinary Differential Equations, 1st Edition, Graduate Texts in Mathematics, 182, Springer New York, 1998.
  • [55] C. Christopher, J. Llibre, C. Pantazi, S. Walcher, Inverse problems for multiple invariant curves, Proceedings of the Royal Society of Edinburgh Section A: Mathematics 137 (6) (2007) 1197–1226.
  • [56] K. Ghorbal, A. Platzer, Characterizing algebraic invariants by differential radical invariants, in: TACAS, Vol. 8413 of Lecture Notes in Computer Science, Springer, 2014, pp. 279–294.
  • [57] J. F. Ritt, Differential Algebra, Dover Publications, New York, 1950.
  • [58] E. R. Kolchin, Differential Algebra and Algebraic Groups, Academic Press, New York, 1976.
  • [59] D. Marker, Model theory of differential fields, Model Theory of Fields, eds. D. Marker, M. Messmer, & A. Pillay 5 (2005) 41–109.
  • [60] A. Robinson, On the concept of a differentially closed field, Office of Scientific Research, US Air Force, 1959.
  • [61] D. Marker, Introduction to the model theory of fields, Model Theory of Fields, eds. D. Marker, M. Messmer, & A. Pillay 5 (2005) 1–37.
  • [62] H. B. Enderton, Elements of set theory, Academic Press [Harcourt Brace Jovanovich Publishers], New York, 1977.
  • [63] W. Y. Sit, The Ritt–Kolchin theory for differential polynomials, in: W. Y. Sit (Ed.), Differential algebra and related topics, World Scientific, 2002, pp. 1–70.
  • [64] F. Boulier, Differential elimination and biological modelling, in: Workshop D2. 2 of the Special Semester on Gröbner Bases and Related Methods, Vol. 2, de Gruyter, 2006, pp. 111–139.
  • [65] F. Boulier, F. Lemaire, M. M. Maza, A. Poteaux, A short contribution to the theory of regular chains, Math. Comput. Sci. 15 (2) (2021) 177–188.
  • [66] P. Aubry, D. Lazard, M. M. Maza, On the theories of triangular sets, J. Symb. Comput. 28 (1-2) (1999) 105–124.
  • [67] E. N. Lorenz, Deterministic nonperiodic flow, Journal of atmospheric sciences 20 (2) (1963) 130–141.
  • [68] C. Sparrow, The Lorenz equations: bifurcations, chaos, and strange attractors, Vol. 41, Springer Science & Business Media, 2012.
  • [69] J. Llibre, X. Zhang, Invariant algebraic surfaces of the Lorenz system, Journal of Mathematical Physics 43 (3) (2002) 1622–1645.
  • [70] S. P. Swinnerton-Dyer, The invariant algebraic surfaces of the Lorenz system, in: Mathematical Proceedings of the Cambridge Philosophical Society, Vol. 132, Cambridge University Press, 2002, pp. 385–393.
  • [71] A. Sogokon, S. Mitsch, Y. K. Tan, K. Cordwell, A. Platzer, Pegasus: sound continuous invariant generation, Formal Methods Syst. Des. 58 (1-2) (2021) 5–41.
  • [72] F. Boulier, F. Lemaire, A normal form algorithm for regular differential chains, Math. Comput. Sci. 4 (2-3) (2010) 185–201.
  • [73] E. Hubert, Essential components of an algebraic differential equation, J. Symb. Comput. 28 (4-5) (1999) 657–680.
  • [74] U. Umirbaev, Algorithmic problems for differential polynomial algebras, Journal of Algebra 455 (2016) 77–92.
  • [75] M. (Waterloo Maple Inc.), Overview of the DifferentialAlgebra package (online documentation), https://www.maplesoft.com/support/help/maple/view.aspx?path=DifferentialAlgebra, Accessed: 2021-09-01.
  • [76] F. Boulier, BLAD software package, https://www.lifl.fr/%7Eboulier/pmwiki/pmwiki.php?n=Main.BLAD, Accessed: 2021-09-01.
  • [77] S. Fakouri, S. Rahmany, A. Basiri, A new algorithm for computing regular representations for radicals of parametric differential ideals, Cogent Mathematics & Statistics 5 (1) (2018) 1507131.
  • [78] A. Hashemi, Z. Touraji, An improvement of Rosenfeld-Gröbner algorithm, in: ICMS, Vol. 8592 of Lecture Notes in Computer Science, Springer, 2014, pp. 466–471.
  • [79] O. Golubitsky, M. V. Kondratieva, M. M. Maza, A. Ovchinnikov, A bound for the Rosenfeld-Gröbner algorithm, J. Symb. Comput. 43 (8) (2008) 582–610.
  • [80] D. Bouziane, A. Kandri-Rody, H. Maarouf, Unmixed-dimensional decomposition of a finitely generated perfect differential ideal, J. Symb. Comput. 31 (6) (2001) 631–649.
  • [81] E. Hubert, Factorization-free decomposition algorithms in differential algebra, J. Symb. Comput. 29 (4-5) (2000) 641–662.
  • [82] R. Ushirobira, D. V. Efimov, P. Blirnan, Estimating the infection rate of a SIR epidemic model via differential elimination, in: ECC, IEEE, 2019, pp. 1170–1175.
  • [83] N. Verdière, S. Zhu, L. Denis-Vidal, A distribution input-output polynomial approach for estimating parameters in nonlinear models: application to a chikungunya model, J. Comput. Appl. Math. 331 (2018) 104–118.
  • [84] F. Boulier, F. Lemaire, Differential algebra and system modeling in cellular biology, Algebraic Biology (2008) 22–39.
  • [85] H. A. Harrington, K. L. Ho, N. Meshkat, A parameter-free model comparison test using differential algebra, Complex. 2019 (2019) 6041981:1–6041981:15.
  • [86] J.-Y. Hong, K. Hara, J.-W. Kim, E. F. Sato, E. B. Shim, K.-H. Cho, Minimal systems analysis of mitochondria-dependent apoptosis induced by cisplatin, The Korean Journal of Physiology & Pharmacology 20 (4) (2016) 367–378.
  • [87] Á. Szántó, Complexity of the Wu-Ritt decomposition, in: PASCO, ACM, 1997, pp. 139–149.
  • [88] A. Szántó, Computation with polynomial systems, PhD dissertation, Cornell University, 1999.
  • [89] A. V. Aho, J. E. Hopcroft, J. D. Ullman, The Design and Analysis of Computer Algorithms, Addison-Wesley, 1974.
  • [90] G. Gallo, B. Mishra, Wu-Ritt characteristic sets and their complexity, in: Discrete and Computational Geometry, Vol. 6 of DIMACS Series in Discrete Mathematics and Theoretical Computer Science, DIMACS/AMS, 1990, pp. 111–136.
  • [91] K. Ghorbal, A. Sogokon, A. Platzer, Invariance of conjunctions of polynomial equalities for algebraic differential equations, in: SAS, Vol. 8723 of Lecture Notes in Computer Science, Springer, 2014, pp. 151–167.
  • [92] A. Dickenstein, N. Fitchas, M. Giusti, C. Sessa, The membership problem for unmixed polynomial ideals is solvable in single exponential time, Discret. Appl. Math. 33 (1-3) (1991) 73–94.
  • [93] W. D. Wallis, J. C. George, Introduction to combinatorics, Chapman and Hall/CRC, 2010.
  • [94] W. D. Brownawell, Bounds for the degrees in the Nullstellensatz, Annals of Mathematics 126 (3) (1987) 577–591.
  • [95] H. M. Möller, F. Mora, Upper and lower bounds for the degree of Groebner bases, in: EUROSAM, Vol. 174 of Lecture Notes in Computer Science, Springer, 1984, pp. 172–183.
  • [96] E. Amzallag, M. Sun, G. Pogudin, T. N. Vo, Complexity of triangular representations of algebraic sets, Journal of Algebra 523 (2019) 342–364.
  • [97] P. Bürgisser, P. Scheiblechner, On the complexity of counting components of algebraic varieties, J. Symb. Comput. 44 (9) (2009) 1114–1136.
  • [98] F. Boulier, F. Lemaire, M. M. Maza, Well known theorems on triangular systems and the D5 principle, in: Transgressive Computing 2006, J.-G. Dumas, Université Joseph Fourier, Grenoble, France, 2006, pp. 79–91.
  • [99] M. Kalkbrener, Prime decompositions of radicals in polynomial rings, J. Symb. Comput. 18 (4) (1994) 365–372.
  • [100] D. Novikov, S. Yakovenko, Trajectories of polynomial vector fields and ascending chains of polynomial ideals, in: Annales de l’institut Fourier, Vol. 49, 1999, pp. 563–609.
  • [101] P. J. Olver, Applications of Lie groups to differential equations, 2nd Edition, Vol. 107 of Graduate Texts in Mathematics, Springer, 2000.
  • [102] G. Blekherman, There are significantly more nonegative polynomials than sums of squares, Israel Journal of Mathematics 153 (1) (2006) 355–380.
  • [103] A. Chistov, Double-exponential lower bound for the degree of any system of generators of a polynomial prime ideal, St. Petersburg Mathematical Journal 20 (6) (2009) 983–1001.
  • [104] Q. Yuan, Are most polynomials reducible or irreducible?, Mathematics Stack Exchange, https://math.stackexchange.com/q/459881 (version: 2013-08-05, accessed 2022-05-30).
  • [105] J. Liu, N. Zhan, H. Zhao, Computing semi-algebraic invariants for polynomial dynamical systems, in: EMSOFT, ACM, 2011, pp. 97–106.
  • [106] R. Rebiha, A. V. Moura, N. Matringe, Generating invariants for non-linear hybrid systems, Theor. Comput. Sci. 594 (2015) 180–200.
  • [107] N. Matringe, A. V. Moura, R. Rebiha, Generating invariants for non-linear hybrid systems by linear algebraic methods, in: SAS, Vol. 6337 of Lecture Notes in Computer Science, Springer, 2010, pp. 373–389.
  • [108] H. Kong, S. Bogomolov, C. Schilling, Y. Jiang, T. A. Henzinger, Safety verification of nonlinear hybrid systems based on invariant clusters, in: HSCC, ACM, 2017, pp. 163–172.
  • [109] K. Ghorbal, A. Sogokon, Characterizing positively invariant sets: Inductive and topological methods, J. Symb. Comput. 113 (2022) 1–28.
  • [110] C. C. Conley, Isolated invariant sets and the Morse index, no. 38, American Mathematical Soc., 1978.
  • [111] Q. Wang, M. Chen, B. Xue, N. Zhan, J. Katoen, Synthesizing invariant barrier certificates via difference-of-convex programming, in: CAV (1), Vol. 12759 of Lecture Notes in Computer Science, Springer, 2021, pp. 443–466.
  • [112] R. Gustavson, A. Ovchinnikov, G. Pogudin, New order bounds in differential elimination algorithms, J. Symb. Comput. 85 (2018) 128–147.
  • [113] W. Simmons, H. Towsner, Proof mining and effective bounds in differential polynomial rings, Advances in Mathematics 343 (2019) 567–623.
  • [114] F. Boulier, Efficient computation of regular differential systems by change of rankings using kähler differentials, in: MEGA 2000, 2000.
  • [115] M. Jones, M. M. Peet, Using SOS for optimal semialgebraic representation of sets: Finding minimal representations of limit cycles, chaotic attractors and unions, in: ACC, IEEE, 2019, pp. 2084–2091.
  • [116] K. Odani, The limit cycle of the van der Pol equation is not algebraic, Journal of Differential Equations 115 (1) (1995) 146–152.
  • [117] A. Platzer, J. Quesel, P. Rümmer, Real world verification, in: CADE, Vol. 5663 of Lecture Notes in Computer Science, Springer, 2009, pp. 485–501.
  • [118] B. D. O. Anderson, R. W. Scott, Output feedback stabilization—solution by algebraic geometry methods, Proceedings of the IEEE 65 (6) (1977) 849–861.
  • [119] N. Fulton, S. Mitsch, J. Quesel, M. Völp, A. Platzer, Keymaera X: an axiomatic tactical theorem prover for hybrid systems, in: CADE, Vol. 9195 of Lecture Notes in Computer Science, Springer, 2015, pp. 527–538.