# How can I eliminate a function in a system of PDEs, Maple-style?

Maple can separate and eliminate a function in a system of PDE equations, with casesplit in the PDEtools package. How to do that in Mathematica? Starting PDEs are:

$$-A\frac{\partial ^2Q(x,y)}{\partial x^2}+B\frac{\partial ^3P(x,y)}{\partial x^3}+C Q(x,y)-C\frac{\partial P(x,y)}{\partial x}+D\frac{\partial ^2Q(x,y)}{\partial y^2}=0$$

$$-B\frac{\partial ^3Q(x,y)}{\partial x^3}+E\frac{\partial ^4P(x,y)}{\partial x^4}-C \frac{\partial Q(x,y)}{\partial x}+C\frac{\partial ^2P(x,y)}{\partial x^2}-F\frac{\partial ^2P(x,y)}{\partial y^2}=0$$

Maple code

des:= {-A*diff(Q(x,y),x,x)+B*diff(P(x,y),x,x,x)+C*Q(x,y)
-C*diff(P(x,y),x)+D*diff(Q(x,y),y,y)=0,
-B*diff(Q(x,y),x,x,x)+E*diff(P(x,y),x,x,x,x)-C*diff(Q(x,y),x) +
C*diff(P(x,y),x,x)-F*diff(P(x,y),y,y)=0};

PDEtools:-casesplit(des,[Q,P]);


Maple output is

$$\left( -{B}^{2}+EA \right) {\frac {\partial ^{6}}{\partial {x}^{6}}}P \left( x,y \right) + \left( - D C-AF \right) {\frac { \partial ^{4}}{\partial {y}^{2}\partial {x}^{2}}}P \left( x,y \right) + \left( AC-CE \right) {\frac {\partial ^{4}}{\partial {x}^{4}}}P \left( x,y \right) + D F{\frac {\partial ^{4}}{ \partial {y}^{4}}}P \left( x,y \right) - D E { \frac {\partial ^{6}}{\partial {y}^{2}\partial {x}^{4}}}P \left( x,y \right) +CF{\frac {\partial ^{2}}{\partial {y}^{2}}}P \left( x,y \right) = 0$$

-
Thank you. ---- – Mr.Wizard Jun 5 '12 at 8:59
@ Mr. Wizard Thank you for attention. – George Mills Jun 5 '12 at 9:08
An even easier question would be: how can one eliminate a function in a set of ordinary differential equations using Mathematica. – Fabian Jun 6 '12 at 17:03
@ Fabian, thank you for suggestion, if you have idea, write it. – George Mills Jun 9 '12 at 8:05

q = qq[x, y]; p = pp[x, y];

r1 = -a D[q, {x, 2}] +b D[p, {x, 3}] +c D[q, {x, 0}] -c D[p, {x, 1}] + d D[q, {y , 2}] == 0;

s1 = -b D[q, {x, 3}] +e D[p, {x, 4}] -c D[q, {x, 1}] +c D[p, {x, 2}] - f D[p, {y , 2}] == 0;


then declare:

rule = Flatten[{#[x, y] -> #, Derivative[n_, m_][#][x_, y_] -> # x^n y^m} & /@ {pp, qq}];
invRule = (x_ -> y_) :> y Derivative[Sequence @@ x][pp];


Transform

t = Total[CoefficientRules[Eliminate[{r1, s1} /. rule, qq] /. (x_ == y_) -> (x - y), {x, y}]
/. pp -> 1 /. invRule] == 0;

t // StandardForm // TeXForm


$c f \text{pp}^{(0,2)}+d f \text{pp}^{(0,4)}+(-c d-a f) \text{pp}^{(2,2)}+(a c-c e) \text{pp}^{(4,0)}-d e \text{pp}^{(4,2)}+\left(-b^2+a e\right) \text{pp}^{(6,0)}=0$

-
It is ok, but how to do that if I have three variables, for example, I need to eliminate to variables – George Mills Dec 7 '12 at 0:21
Code is working when I am using for eliminating from 3 eqs, but how when I have 4. i used your steps: link mathematica.stackexchange.com/questions/15949/… – George Mills Dec 20 '12 at 23:34