[Maxima] improving solve

Andrej Vodopivec andrej.vodopivec at gmail.com
Mon Dec 17 06:08:28 CST 2007


This is a recent bug report:

(%i1) solve([x^2+y^2=2^2,(x-1)^2+(y-1)^2=2^2]);
(%o1) []

The workarond is to use grobner:

(%i1) load(grobner);
Loading maxima-grobner $Revision: 1.3 $ $Date: 2007/04/14 21:23:05 $
(%o1) /usr/local/share/maxima/5.13.0cvs/share/contrib/Grobner/grobner.lisp
(%i2) poly_reduced_grobner([x^2+y^2-2^2,(x-1)^2+(y-1)^2-2^2], [x,y]);
(%o2) [y+x-1,2*y^2-2*y-3]
(%i3) solve(%);
(%o3) [[y=-(sqrt(7)-1)/2,x=(sqrt(7)+1)/2],[y=(sqrt(7)+1)/2,x=-(sqrt(7)-1)/2]]

I propose that algsys uses poly_reduced_grobner on equations before
looking for a solution (and that poly_reduced_grobner autoloads). This
will extend the class of problems which algsys can solve. I think
there should be a global variable which would control if
poly_reduced_grobner is used (algsys_use_grobner). I know this is not
popular, but it is the model currently used in maxima.

-- 
Andrej


More information about the Maxima mailing list