1% Test only multipliation:
2easy1 := (x1+1*x2)*(x1-1*x2);
3easy2 := (a()*partial(x1)+b())*(c()*partial(x1)+d());
4
5% Domain for the next factorizations:
6lpdoset lpdoweyl(1,x1,x2);
7
8% Not really binomial but caused problems at some point:
9b3 := (a-partial(x1))*(a+partial(x1));
10lpdofactorize b3;
11
12% Differential binomial formulas:
13bin1 := (a()+partial(x1))*(a()+partial(x1));
14lpdofactorize bin1;
15bin2 := (a()-partial(x1))*(a()-partial(x1));
16lpdofactorize bin2;
17bin3 := (a()-partial(x1))*(a()+partial(x1));
18lpdofactorize bin3;
19
20% Beals-Kartashova 2005, Section 5.3, special case
21bkf := (partial(x1)+partial(x2)+(a10-a01)/2) *
22   (partial(x1)-partial(x2)+(a10+a01)/2);
23lpdofactorize bkf;
24
25% Ad hoc example:
26sth := (partial(x1)+partial(x2)+(a10+a01)) *
27   (partial(x1)-partial(x2)+(a10+a01));
28lpdofactorize sth;
29
30% Blumberg 1912:
31p := partial(x1)+x1*partial(x2);
32q := partial(x1)+1;
33r := partial(x1)^2+x1*partial(x1)*partial(x2)+partial(x1)+
34   (2+x1)*partial(x2);
35d := partial(x1)^3+x1*partial(x1)^2*partial(x2)+2*partial(x1)^2+
36   2*(x1+1)*partial(x1)*partial(x2)+(x1+2)*partial(x2)+partial(x1);
37d - q*q*p;
38d - r*q;
39lpdofactorize(d,a()*partial(x1)+b());
40
41% Approximate factorisations:
42
43% Blumberg 1912:
44lpdofactorizex(r,-1<x1<1 and -1<x2<1,q,p);
45
46sol1 := lpdofactorizex(r,-1<x1<1 and -1<x2<1,q,partial(x1)+a()*partial(x2),1);
47r - first second first sol1 * second second first sol1;
48
49sol2 := lpdofactorizex(r,-2<x1<2 and -2<x2<2,q,partial(x1)+a()*partial(x2),1);
50r - first second first sol2 * second second first sol2;
51
52end;
53