my problem is messy, and I will use a simple problem to explain my problem. Suppose, we have a set of DE:


This is how I treat it in Mathematica. The actual set of DE consists of 3 equations eq1==0, eq2==0, eq3==0. It is easy to see, that we don't need 3rd equation here, since we can obtain it by multiplying first DE by u[x], second DE by v[x], and subtracting second DE from the first DE. I want to know, how to figure out using mathematica, if one of the equations is redundant.

My actual problem is more complicated. It has different parameters, and equations are non-linear (there are terms like Cos[v[x]]), coefficients are nonlinear as well.

Is there some "general" method to implement this procedure in Mathematica?

Thanks in advance.

  • 1
    $\begingroup$ Well, you need as many equations as functions and making sure that all functions are used in the subset. Of course not every subset will present the same difficulty ... $\endgroup$ Oct 8, 2015 at 16:13
  • 2
    $\begingroup$ I'm voting to close this question as off-topic because the issue it raises is not a Mathematica issue but a mathematical one. That it is formulated in terms of Mathematica is not sufficient to make it an appropriate question for Mathematica.SE. $\endgroup$
    – m_goldberg
    Oct 8, 2015 at 18:28
  • 2
    $\begingroup$ It is a reasonable question as to how to do this in Mathematica. I make that claim because it falls into the area of differential algebra, hence may be amenable to algorithmic approaches. $\endgroup$ Oct 8, 2015 at 22:02

1 Answer 1


This might be along the lines of what you want.

eqns = {u''[x] + v[x], v''[x] + u[x], u[x]*u''[x] - v[x]*v''[x]};
vars = {u[x], v[x], u''[x], v''[x]};
GroebnerBasis[eqns, vars]

(* Out[52]= {v[x] + (u^\[Prime]\[Prime])[x], 
 u[x] + (v^\[Prime]\[Prime])[x]} *)

In general you may need to do more work to get enough equations, e.g. using prolongation.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.