{'fraction_non_alphanumeric': 0.024433020864832174, 'fraction_numerical': 0.011369821590565467, 'mean_word_length': 4.322014805278403, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 2, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 5, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Size reduction and partial decoupling of systems of equations

A method is presented that reduces the number of terms of systems of linear equations (algebraic, ordinary and partial differential equations). As a byproduct these systems have a tendency to become partially decoupled and are more likely to be factorizable or integrable. A variation of this method is applicable to non-linear systems. Modifications to improve efficiency are given and examples are shown. This procedure can be used in connection with the computation of the radical of a differential ideal (differential Groebner basis).


Motivation
Algorithms for applying integrability conditions to a system of differential equations in a systematic way in order to generate simplified differential equations are implemented in a number of programs ( [3,4,7,8,10,11,12] and more in [6]). Such calculations result in the radical or a (pseudo) differential Gröbner Basis of the differential ideal generated by the original system. A common problem of these algorithms, and consequently their implementations, is an explosive expression swell. Optimizations like Buchberger's 2 nd criterion (section 5.5 in [1]) and their analogue for differential equations aim to reduce the number of steps to reach a characteristic set (one step = computation of an S-polynomial for algebraic systems or a cross-differentiation of two differential equations for differential systems). These optimizations do not cover other 'obvious' simplifications. For a very simple example, consider Df to be a leading derivative of a function f in two equations 0 = Df + A, 0 = Df + 2A with A a sum of a large number of terms. A simplification step in the standard procedure would aim at eliminating Df and get as a consequence the system 0 = Df + A, 0 = A where the big expression A occurs twice. An alternative to be described in this paper would be to try to shorten equations and therefore to get at first the system 0 = Df + A, 0 = Df and in a second length reduction step the system 0 = A, 0 = Df .
For a slightly more realistic example, consider two equations 0 = A + C and 0 = B − C, where A, B, C are differential expressions, A, B having only few terms and C involving many terms. If both equations are long and if they involve high derivatives then they would have a low priority to be used in standard algorithms. Typically, each of them would be paired individually with short low order equations for their reduction or the generation of integrability conditions. A simplification of both equations to the system 0 = A + C and 0 = A + B would usually not be found. Instead the expression C would grow in both equations when any substitutions of functions are made that occur in C.
Both examples are clear cut situations where big expressions in different equations can cancel each other. Although in practical applications to be described in a later section each length reduction step saves only a small number of terms, these reduction steps can often be repeated many times.
The need to reduce the length of equations comes from the danger of dealing with long equations in elimination algorithms. For elimination algorithms to be finite, i.e. to involve only a finite number of steps, they have to eliminate the leading derivative of equations first which involves differentiations and multiplications. Both tend to increase the length of long equations even further. However, elimination algorithms would remain finite if terms other than the leading derivative would be eliminated a finite number of times. Flexibility of this kind could be used to prevent excessive expression swell. In this way not only memory is saved. Long expressions also require an increased time to be computed which slows down any future computations in which long expressions are involved.
The procedure to be described in section 2 is a first step in the direction of an 'intelligent' and more efficient computation. It aims at finding equations in the algebraic ideal of the given system with fewer terms. The basic idea is rather straightforward. Any pair of two equations of a given system of equations is checked whether there is a linear combination (with non-vanishing coefficients) of these two equations that is shorter than the longer of the two. If that is the case then the longer one is replaced by the shorter new equation. To find a length reducing linear combination of a pair of two equations, each term of one equation is divided by each term of the other equation, the quotient is simplified, i.e. common factors of numerator and denominator are dropped and a counter of the number of occurrences of this quotient is incremented. The quotient occurring most often is picked, its numerator and its denominator are the multipliers of both equations which are then subtracted from each other. By choosing the quotient that occurs most frequently a maximum number of terms cancel and the result is as short as possible.
The main content of the first part of the paper is to introduce data structures (L, c i below) which allow an efficient implementation and to describe some optimizations that speed up the method and that allow one to consider non-linear equations for length reduction. Beneficial side-effects are discussed such as the increased chance to find ordinary differential equations (ODEs) or to find exact differential equations in a length reduced system of partial differential equations (PDEs).
In the second half, in section 3 the method is applied to determining equations of Killing vectors and Killing tensors in General Relativity. One example is explained in more detail in the appendix where the beneficial side-effects of length reduction become important.
The length reduction module is incorporated in the package Crack for solving over determined PDE-systems. To show that the usefulness of the length reduction module is not just based on special features of Crack but is of a more universal nature a test is described at the end of section 3. In this test other well known programs are used to solve a system of PDEs before and after it has been length reduced. The suitability of length reduction as a pre-processing step is demonstrated.

The term reduction method Introduction
The procedure to be described takes as input two expressions E 1 , E 2 . Both represent equations 0 = E 1 = E 2 and are regarded as sums with n 1 and n 2 terms (n 1 , n 2 ≥ 1). The aim is to multiply each with a different single term and to add the expressions such that the result has fewer terms than max(n 1 , n 2 ) and can be substituted for the longer of E 1 , E 2 . For a given system of equations this process is repeated with all possible pairs of equations until no pair can produce an equation that is shorter than the longer of both. The restrictions to multiply only with monomials and to combine only two equations at a time are non-trivial constraints (see the discussion in section 4).
Example: The method will be illustrated with the following two expressions f and g are the unknowns that are to be computed from 0 = E 1 , 0 = E 2 . To explain the method it does not matter if f and g would be replaced by derivatives of unknown functions or by products of powers of different derivatives as long as f = g. x and y are independent variables or parameters such that 0 = E 1 , 0 = E 2 are to be satisfied for any value of x and y.
The treatment of two equations Given are two expressions E 1 , E 2 with n 1 and n 2 terms, n 1 ≥ n 2 . If each expression is multiplied with a single term (monomial) and both expressions are added, then their sum E 3 can have between n 1 − n 2 and n 1 + n 2 terms depending on how many terms cancel each other. A way to find the optimal cancellation, i.e. optimal multipliers is to divide each term of expression E 1 by each term of E 2 and to collect the simplified quotients (common factors of numerator and denominator dropped) together with the multiplicity they occur.
Example: E 1 , E 2 given in (1),(2) have 4 terms each (n 1 = n 2 = 4) and the quotients are A new equation E 3 would be generated by picking a quotient, say E 12 /E 21 = 4xg 3yf and using its numerator and denominator to compute E 3 = 3yf · E 1 − 4xg · E 2 . Because this quotient involves f and g, the new equation 0 = E 3 is non-linear in f, g. As a consequence after replacing E 1 by E 3 the new system 0 = E 3 = E 2 may not be equivalent to the old system 0 = E 1 = E 2 , i.e. E 1 could not automatically be replaced by E 3 . The algorithm will therefore not consider quotients that involve any unknowns, here f and g. An effective method to avoid the computation of such quotients will be explained further below.
The quotient occuring most often is 2x 3y which is appearing twice and is free of f and g. Each appearance of a quotient means that two terms cancel. We therefore would expect that in the expression E 3 := 3y · E 1 − 2x · E 2 two times two terms cancel and therefore E 3 has 4 + 4 − 2 · 2 = 4 terms. But E 3 = 6f x 2 + 18f y 2 + 29xy has only 3 terms. When computing E 3 := 3y · E 1 − 2x · E 2 the two terms 3y · E 14 − 2x · E 24 = 3y · 5x − 2x · (−7y) = 15xy + 14xy add up to only one term 29xy. We could have forecast the saving of one additional term by realizing that the quotient E 14 /E 24 = − 5x 7y differs from E 11 /E 21 = 2x 3y only by a numerical factor.
The example implies that we should record all quotients with the multiplicity they occur and group them into classes c i where all quotients in a class differ by only a numerical factor. Finally, for each class c i the sum M i of all the multiplicities of all quotients in the class is recorded too. All classes c i together with M i are listed in a list L: q ij are the different quotients such that two quotients q ij , q ik in the same class c i differ only by a numerical factor.
s i is the number of different quotients in the class c i . m ij is the number of how often q ij occurs.
L is the complete (unsorted) list of all classes of quotients.
A pre-processing step As argued above only quotients q ij should be considered which do not involve any unknowns, i.e. functions or constants that are to be computed from E i = 0. An effective method to even avoid the computation of those quotients requires to re-write expressions E 1 , E 2 in the following way. This initial re-writing step also clarifies how the method works for non-linear expressions E 1 , E 2 .
One always can regard non-linear expressions E 1 , E 2 as linear homogeneous expressions in some newly defined variables v a which are linear or non-linear constructs of the dependent variables. For example, for independent variables x, y, dependent variables f = const, g = g(x, y) and the related system that is homogeneous and linear in v i would be with After this re-writing the method will investigate the system (6), (7) and avoid quotients q ij that involve any v l .
Methods to increase speed The restriction of not multiplying with factors involving dependent variables enables the following major speed up. Instead of investigating the system (4),(5) and computing 6×4 = 24 quotients we investigate the system (6), (7) and compute only quotients between the terms of the coefficients of the same v i in E 1 and E 2 . This reduces the number of quotients to 1 × 1 (for v 0 ) +1 × 1 (for v 1 ) +3 × 2 (for v 2 ) +3 × 0 (for v 3 ) = 8 quotients. For large expressions, or more exactly for a high number of different v j the speed up is naturally much higher. If we have r + 1 new dependent variables v 0 , . . . , v r and if we denote the number of terms involving v j in E i as n ij , 0 ≤ j ≤ r then instead of computing r j=0 n 1j × ( r k=0 n 2k ) quotients the more efficient method only computes r j=0 (n 1j × n 2j ) quotients. Another way of increasing efficiency is based on knowing the n ij beforehand. For the terms involving a specific v j , an upper bound on the maximal number of cancellations is min(n 1j , n 2j ), saving twice as many terms. This value summed over j = 0 . . . r (for each v j ) gives an upper bound on how many terms can be saved due to cancellations. This test can be performed without computing any quotients: This test of a necessary criterion is not only possible at the beginning but also during the computation of quotients. We assume that at first all quotients related to v 0 are computed, then those related to v 1 , and so on. When the calculation has reached v j and the first w terms in E 1 that involve v j have been processed, i.e. all quotients between each of them and all terms in E 2 with v j have already been computed then the following holds. At most min(n 1j −w, n 2j ) more cancellations related to v j are possible and an upper bound B j (w) of the total number of any cancellations still to be found is given as At this moment any quotient q kl that has a chance to provide a length reduction must satisfy All q kl which do not satisfy this condition can be dropped from the list L. For the same reason no new quotients should be added to L as soon as 2B j (w) ≤ n 2 . If the list L becomes empty at any time during the computation of quotients, then the search can stop. In that case no length reduction is possible. By dropping quotients from the list L, the updating of m ij and M i speeds up.
A speed up not recommended When deleting quotients from L that have no chance to give a length reduction then it is little extra effort to check whether any q kl of the remaining quotients in L already satisfies M k + m kl > n 2 , and therefore is guaranteed to provide a length reduction. As soon as such a quotient q kl is found the execution could stop. In practical tests it appeared that the negative effects of an early stop dominate. The first length reducing quotient q kl that is found does not have to be the one giving the highest length reduction possible. After using a sub-optimal q kl to compute E 3 and to substitute E 1 no further length reductions may be possible, or even if further length reductions were possible, equations tend to have at least intermediately more terms compared with determining always the optimal quotient that gives the highest length reduction. After a suboptimal length reduction, subsequent pairings with other equations would be slower which would result in an overall slow down. It therefore is recommended to complete the computation of all relevant quotients and not to stop early when the first length reducing q kl is found.

Some time tests
The following tests can only provide some idea of the running times of the length reduction method. They are measured in a 8 MB Reduce 3.6 session running under Linux on a 133 MHz Pentium PC (Dec. 1998). Equations which have been paired had been generated with the Reduce command RANDPOLY which allows one to specify the number of terms to be generated. In RANDPOLY the randomly generated coefficients may become zero which in that case results in a polynomial with fewer terms than specified. Therefore the number of terms was chosen somewhat larger to be able to drop the surplus terms and get the required size of the polynomial and perform the following statistics.
Performing a length reduction investigation involves no other risk or cost than the computer time that may be lost if no length reduction was possible. Therefore in figure 1 and table 1 a statistics of investigations of each time two equations is shown where no length reduction could be found, i.e. the worst possible result. This will be referred to as unsuccessful pairings in contrast to successful pairings where a length reduction was possible. Both equations are random polynomials of degree up to 5 and with up to 8 variables. Times are obtained by averaging 20 runs. The individual times in these runs differ typically by up to 30%. The results confirm an overall dependence time ∝ (terms of eqn. 1)×(terms of eqn. 2).  Test results shown in table 2 are based on pairing equations which are polynomials of 7 th degree with each 300 terms but with a varying number of variables. Times are averaged again over 20 runs.
The effect of efficiency improvements as described in the above sub-section to detect the non-existence of length reductions early can be seen clearly from the second row in table 2. As more independent variables occur the number of different quotients q kl increases and the average frequency for each quotient to appear becomes smaller. This in turn rules out many quotients early in the computation and it becomes clear earlier that no quotient will result in a length reduction if that is the case.
Usually length reductions do not happen with random polynomials of that size. In order to measure computing times for pairings when length reductions were possible, pairs of polynomials had been constructed in the following way: a multiple of one random polynomial P 1 of 300 terms is added to another random polynomial P 2 and terms in excess of 300 terms are dropped to obtain a polynomial P 3 with 300 terms. Length reductions between polynomials P 1 and P 3 are investigated which produced the third row in table 2. Two trends seem to be present, one lowering the time with an increase of the number of variables (mainly effective between 4 and 5 variables) due to a decrease of potentially successful quotients and another trend slightly increasing the time with the number of variables.  To summarize this sub-section, the main feature found in this study is that computing times are lower in unsuccessful attempts to shorten equations and only when a length reduction becomes possible, i.e. when computing times are of less importance, then they are increased. The speed up measures become increasingly efficient if more unknowns (like f and g in the first example) are present which is the case for partial differential equations with many different partial derivatives acting as different unknowns v j during length reduction.
The order of pairings of equations If more than two equations are given then the question arises in which order they should be paired to search for length reductions. Given that we combine only two equations at a time and multiplying them only with a monomial, we can not expect results that are invariant against combining equations in a different order. The following criteria serve only as a suggestion but they proved to be useful in applications. According to them pairs of equations are picked with the following priorities: • There should be as few as possible dependent variables v i in the shorter equation which do not occur in the longer equation.
• The shorter of both equations should be as short as possible.
• The longer of both equations should be as short as possible.
The first two rules maximizes the chance to find a reduction of terms. The third rule reduces computation times. The second rule has a higher priority than the third rule because the shorter the equations are, the more useful they are potentially in reducing the length of other equations. In the following table the above priority list is compared with the same list, only modified by exchanging in the first rule 'as few as possible' with 'as many as possible'. The equations are a set of first order partial differential equations (PDEs) resulting from investigating in General Relativity the Kimura metric [9] with respect to Killing tensors (see section 3). Because sin and cos occur in these differential equations, both length reductions are performed once with the simplification rule cos(x) 2 ⇒ 1 − sin(x) 2 and once with the simplification rule sin(x) 2 ⇒ 1 − cos(x) 2 . It becomes apparent that these simplifications are not equivalent in their effect.  As it was to be expected, the '... as few as ...' rule performed better (i.e. resulted in shorter length reduced systems) than the '... as many as ...' rule. What also becomes apparent is that choosing accidentally the less effective simplification rule sin(x) 2 ⇒ 1 − cos(x) 2 is less critical when length reduction is performed than without length reduction: no of terms of original system using cos-rule no of terms of original system using sin-rule = 607 464 > no of terms of reduced system using cos-rule no of terms of reduced system using sin-rule = 81 74 .
Beneficial side effects The reduction of length is not only useful for saving memory, and as shorter expressions are quicker to process later on, also for saving time. In this section we want to explain further benefits.
1. Given a set of PDEs, the length reduced system is more likely to contain ordinary differential equations (ODEs) or to contain integrable exact PDEs.
2. Length reduced polynomially non-linear equations are much more likely to be algebraically factorizable.
3. Length reduction of a system of equations has in general the side effect of partially decoupling the system.
If the number of terms of an equation is lowered to, say, n and if the equation is linear then n is necessarily an upper bound for the number of different functions and different derivatives that occur. The length reduction method as described above is indiscriminate to different functions or different derivatives. On average therefore a consequence of a reduction of the number of terms will be a reduction of the number of different functions and the number of different derivatives that occur (see the comparison between tables 6 and 7 below) which in turn provides the above side effects.

About 1:
If the number of terms in a length reduced equation got very small (say less than 4) then the chance increases that they involve only one differentiation variable, or that all derivatives can be looked at as derivatives with respect to only one variable of a common partial derivative, like ∂ y f, ∂ xy f, ∂ xxy f are all x-derivatives of ∂ y f . In these cases the equation has been reduced to an ODE. (A proper ODE can of course only appear if the differential ideal of the original system does contain ODEs, but that is guaranteed for all the typical sources of over determined PDE-systems, like the computation of infinitesimal symmetries and of conservation laws.) Similarly the chance increases to obtain an exact differential equation. In order for a differential expression P (f i ) that involves functions f i and that satisfies 0 = P to be a total x derivative of some expression I(f i ), the identity P = dI/dx has to be satisfied identically in all functions f i and in all their derivatives. The fewer different functions f i and the fewer different derivatives with respect to variables other than x occur, the less restrictive is this assumption of exactness and the more likely it will be satisfied.
The conclusion is not that length reduction is the best way to proceed in order to integrate. We only say that the chance increases to find an integrable PDE in a length reduced system. In the appendix this statement is illustrated by a sequence of 10 integrations which a system of Killing tensor equations admits after being reduced in length.
To explain the usefulness of integrability let us consider an extreme hypothetical example. Gröbner Basis techniques aim at equations with a low differential order. This is a good strategy but not the only way to go. For example, knowing that 0 = ∂ 10 f /∂x 10 is included in the differential ideal would be very useful as well. After integration, substitution of f and direct separation with respect to x (sometimes called splitting or fragmentation) a highly over determined system for the 10 functions of integration results. Although an expensive Gröbner basis computation might have provided an ODE of lower order than 10, this information is usually gained faster by integrating 0 = ∂ 10 f /∂x 10 and solving the over determined system that resulted from direct separation for the 10 functions of integration. The key to this speed up would be to sacrifice the minimal differential order for a reduction in the number of terms.

About 2:
In a small experiment we want to show that the chance for an algebraic factorization increases with a reduction of the number of terms. Bi-linear polynomials with up to 5 variables and coefficients in the interval −9, . . . , −1, 1 . . . 9 have been randomly generated for each length from 2 terms up to 6 terms. The percentage of factorizable polynomials is given in table 4. The chance to have a non-trivial factorization (non-numeric factors) decreases surprisingly quick with an increasing number of terms. Although this test is not proving anything it may serve as an illustration.  Table 4: The chances for random quadratic homogeneous polynomials in up to 5 variables to be factorizable in dependence on the number of terms.

About 3:
The fewer different functions occur in each equation (on average) the more the system is (at least partially) decoupled and the fewer steps are needed in a subsequent computation to get a differential Gröbner Basis or characteristic system. This means that an elimination algorithm performed afterwards has less work to do, i.e. needs fewer steps. A sparsely occupied system also opens the possibility to choose an appropriate total ordering on which an elimination algorithm is based. For example, if a function turns up in only few equations and with very few different derivatives then this function should get a high priority, i.e. the lexicographical ordering of functions which plays a role in any total ordering should give this function a high priority to be eliminated first because this will probably take the fewest steps to eliminate this function.

Applications
One of the applications to which the above length reduction procedure has been applied successfully is the computation of Killing vectors K i (x p ) and rank 2 Killing tensors K ij (x p ) of given space times with a metric g ij in General Relativity. Killing vectors and Killing tensors provide conservation laws of the form K i u i = const. and K ij u i u j = const. where u i is the 4velocity of geodesic motion in a curved space-time. If enough Killing vectors (i.e. symmetries of the space time) and Killing tensors are found then the equations of free (geodesic) motion of test particles in a curved space can be integrated which is a major step towards the physical interpretation of a space time metric. Killing vectors and their Lie algebras are also widely used to classify space time metrics.
The determining equations for Killing vectors are and for Killing tensors they are K ij;l + K jl;i + K li;j = 0, i, j, l = 1 . . . 4 (9) where ';' is the covariant derivative. Conditions (8),(9) are generated for a given space-time with metric tensor g ij by the program Classym described in [13]. Examples are shown in table 5 (not selected from a larger set, but as they appeared in applications). The systems of equations determine either Killing vectors (KV) or Killing tensors (KT) for different space time metrics. One system is extended by integrability conditions (IC) and one system by contractions (CT) with the metric tensor. The number of equations and terms before and after length reduction are shown. Running times in a Reduce 3.6 session running under Linux on a 133 MHz Pentium PC are given in the right column.  The benefits of a length reduction for a program like Crack [14] are manifold. Tables 6  and 7 show the number of terms and the occurring dependent variables in each of the Killing tensor equations for the Kimura metric before and after the reduction of length.

Length reduction as an adjunct to elimination algorithms
The main purpose of the term reduction method is to shorten and simplify systems of equations without imposing any risk of an intermediate length increase. This risk is present when using standard Gaussian elimination or standard Gröbner basis methods. For that reason and the benefits discussed above it would not matter if the term reduction method would be comparatively time consuming. The following run time tests show that term reduction can even be time saving if it is used in connections with computing differential Gröbner bases or the radical of a differential ideal.
The program rif [11], [12] has been applied by Allan Wittkopf to the Killing tensor conditions for the Kimura metric (see table 3, the shortened form is given in the appendix). Because we only provide the relative speed up in tables 8,9 the following hard and software specifications are not of much relevance. They are added only for completeness. Computing times of the program rif are measured on a PII 333 MHz Linux system with 384 MB RAM (although only about 3 MB was needed), running in XMaple release 5.0. Differential Gröbner Bases have been computed, once in the generic case where the constant b is treated like a dependent variable and a second time where b is regarded as an arbitrary constant, ignoring b pivots.
In the tables 8 and 9 kimu1 is the form of the system with 607 terms (see table 3), kimu2 is a pre-optimal form of the system with 128 terms which resulted when a non-optimal pairing of equations was used and finally kimu3 is the system with 74 terms (see appendix).   A potential gain of a reduction of the number of terms is the possibility to choose a more appropriate total ordering in a Gröbner Basis computations when a system is already partially decoupled. For example, dependent variables which turn up in fewer equations could be given a higher lexicographical priority than other dependent variables. So far no advantage has been taken of this opportunity in the package Crack.

Possible extensions
The manipulations studied in this paper to achieve a reduction of length seem very special and one might seek a more comprehensive theory, for example, covering all possible linear combinations of any number of equations multiplied not only with monomials but with any number of terms. This problem is harder than it looks. It would include being able to decide whether any given linear algebraic system could be solved without intermediate memory increase. Already the question of combining 3 equations to kill at least 5 terms (4 terms could be killed by combining 2 equations twice) has a much larger search space than combining 2 equations. Although not proven, the author expects that in generic practical applications the frequency of reducing the length of any one of 3 equations which can not be reached by combining repeatedly 2 equations is low (which, of course, may be different in specific applications). To give an example, the system 0 It seems to be a general phenomenon that the computational complexity increases drastically when any method of investigating systems of equations is generalized whereas the success rate of the generalized method increases only marginally.
To give an example, in determining Lie-symmetries and conservation laws of generic partial differential equations (not the rare fully integrable PDEs) the success rate in finding symmetries when going from point symmetries to higher order symmetries or the success rate in finding conservation laws when going from zeroth order integrating factors to higher order conservation laws increases only marginally. On the other hand the complexity in solving the related over determined system of conditions grows drastically when the order of the ansatz is increased. The growth in complexity comes from the task to determine an increased number of constants or functions or in determining functions of more independent variables. The decreasing success rate results from a relatively more over determined problem: having to satisfy not only the more restrictive conditions of a more general ansatz but also the conditions that the solution may not be decomposable into simpler cases.

Summary
Although conceptually simple, the method explained in this paper proved to be very useful. It is fast and it has zero risk of increasing the size of the system of equations during the computation or as a result of it. This is an important feature for very memory intensive computations. In such a case, computation times are of less concern. Still, it was possible to show that even for other well known programs the time saving using term reduction could be higher than the additional cost.
As discussed in the subsection 'Other benefits', size reduced equations on average are more likely to be an ODE or to be a total derivative and therefore easily integrable. They are also more likely to be algebraically factorizable. The fact that the system becomes partially decoupled opens the possibility to select a total ordering according to which the system is already close to a characteristic form. This has the potential to reduce subsequent computations to obtain a characteristic system to a high extend.

Acknowledgement
The author thanks Allan Wittkopf for many discussions. He, together with Evelyne Hubert are thanked for running the tests mentioned in the text with their systems. The Symbolic Computation Group at the University of Waterloo is thanked for its hospitality during the authors sabbatical in the fall of 1998 when the manuscript was prepared.