algsys gives up for solvable polynomial system
- Subject: algsys gives up for solvable polynomial system
- From: andre maute
- Date: Fri, 04 Jan 2013 22:17:54 +0100
Hi list,
I have the following reduced test case
------- algsys-bug4.mac -----------
display2d : false;
eqs : [
((7*c0312+21)*c1221+(7*c0312+1)*c1203+21*c0312+7)/1120 = 0,
-((35*c0312-35)*c2130+(-21*c0312-7)*c2112+(-7*c0312-1)*c2103-7*c0312-21)/1120
= 0,
((c0312+3)*c3021+(3*c0312+1)*c3012-5*c0312+5)/160 = 0,
-((11*c1221-9*c1203-3)*c3021+(-3*c1221-3*c1203-9)*c3012-15*c1221-15*c1203+15)/480
= 0,
((15*c2130+3*c2112+9*c2103-11)*c3021+(-15*c2130+9*c2112+3*c2103+3)*c3012-15*c2130-15*c2112+15*c2103+15)/480
= 0,
((105*c1221+105*c1203-105)*c2130+(21*c1221+21*c1203+63)*c2112+(63*c1221+3*c1203+21)*c2103-77*c1221+63*c1203+21)/3360
= 0
];
length(listofvars(eqs));
sols : errcatch(algsys(eqs,listofvars(eqs)));
length(sols);
/* algsys with eqs (1), (2), (3) */
eqs :
subst(-(14*c3021-14*c1221*c3012+35*c1221+35)/(5*c3021+c3012+10),c1203,eqs)$
eqs :
subst(((35*c2130-14*c2112)*c3021+(35*c2130+14)*c3012-35*c2112-35)/(5*c3021+c3012+10),c2103,eqs)$
/* algsys with eqs (1), (2), (3) */
eqs : subst(-(3*c3021+c3012+5)/(c3021+3*c3012-5),c0312,eqs)$
/* algsys with eqs (1), (2), (3), (4) */
eqs :
subst(-(111*c3021^2+(570-6*c3012)*c3021-9*c3012^2+30*c3012+675)/(55*c3021^2+(350-130*c3012)*c3021-45*c3012^2-150*c3012+375),c1221,eqs)$
/* algsys with eqs (1), (2), (3), (4), (5) */
eqs :
subst(((390*c2130-55)*c3021^2+((360*c2130+130)*c3012+600*c2130-350)*c3021+(90*c2130+45)*c3012^2+(360*c2130+150)*c3012-150*c2130-375)/(111*c3021^2+(570-6*c3012)*c3021-9*c3012^2+30*c3012+675),c2112,eqs)$
/* algsys with eqs (1), (2), (3), (4), (5), (6) */
eqs :
subst(-(11*c3021^2+(-6*c3012-30)*c3021-9*c3012^2+30*c3012-225)/(33*c3021^2+(150-18*c3012)*c3021-27*c3012^2+90*c3012+45),c2130,eqs)$
ratsimp(eqs);
------- algsys-bug4.mac -----------
the last ratsimp will give a list of "0=0".
so the substitutions solve the system,
with the free variables c3012 and c3021.
Problem:
algsys errors with:
------------------------------------------
algsys: tried and failed to reduce system to a polynomial in one
variable; give up.
------------------------------------------
Regards
Andre
-------------- next part --------------
display2d : false;
eqs : [
((7*c0312+21)*c1221+(7*c0312+1)*c1203+21*c0312+7)/1120 = 0,
-((35*c0312-35)*c2130+(-21*c0312-7)*c2112+(-7*c0312-1)*c2103-7*c0312-21)/1120 = 0,
((c0312+3)*c3021+(3*c0312+1)*c3012-5*c0312+5)/160 = 0,
-((11*c1221-9*c1203-3)*c3021+(-3*c1221-3*c1203-9)*c3012-15*c1221-15*c1203+15)/480 = 0,
((15*c2130+3*c2112+9*c2103-11)*c3021+(-15*c2130+9*c2112+3*c2103+3)*c3012-15*c2130-15*c2112+15*c2103+15)/480 = 0,
((105*c1221+105*c1203-105)*c2130+(21*c1221+21*c1203+63)*c2112+(63*c1221+3*c1203+21)*c2103-77*c1221+63*c1203+21)/3360 = 0
];
length(listofvars(eqs));
sols : errcatch(algsys(eqs,listofvars(eqs)));
length(sols);
/* algsys with eqs (1), (2), (3) */
eqs : subst(-(14*c3021-14*c1221*c3012+35*c1221+35)/(5*c3021+c3012+10),c1203,eqs)$
eqs : subst(((35*c2130-14*c2112)*c3021+(35*c2130+14)*c3012-35*c2112-35)/(5*c3021+c3012+10),c2103,eqs)$
/* algsys with eqs (1), (2), (3) */
eqs : subst(-(3*c3021+c3012+5)/(c3021+3*c3012-5),c0312,eqs)$
/* algsys with eqs (1), (2), (3), (4) */
eqs : subst(-(111*c3021^2+(570-6*c3012)*c3021-9*c3012^2+30*c3012+675)/(55*c3021^2+(350-130*c3012)*c3021-45*c3012^2-150*c3012+375),c1221,eqs)$
/* algsys with eqs (1), (2), (3), (4), (5) */
eqs : subst(((390*c2130-55)*c3021^2+((360*c2130+130)*c3012+600*c2130-350)*c3021+(90*c2130+45)*c3012^2+(360*c2130+150)*c3012-150*c2130-375)/(111*c3021^2+(570-6*c3012)*c3021-9*c3012^2+30*c3012+675),c2112,eqs)$
/* algsys with eqs (1), (2), (3), (4), (5), (6) */
eqs : subst(-(11*c3021^2+(-6*c3012-30)*c3021-9*c3012^2+30*c3012-225)/(33*c3021^2+(150-18*c3012)*c3021-27*c3012^2+90*c3012+45),c2130,eqs)$
ratsimp(eqs);
-------------- next part --------------
Maxima 5.27.0 http://maxima.sourceforge.net
using Lisp SBCL 1.0.57-1.fc17
Distributed under the GNU Public License. See the file COPYING.
Dedicated to the memory of William Schelter.
The function bug_report() provides bug reporting information.
(%i1) batch(algsys-bug4.mac)
read and interpret file: /home/user/algsys-bug4.mac
(%i2) display2d : false
(%o2) false
(%i3) eqs:[(7+21*c0312+(1+7*c0312)*c1203+(21+7*c0312)*c1221)/1120 = 0,
(-(-21-7*c0312+(-1-7*c0312)*c2103+(-7-21*c0312)*c2112
+(35*c0312-35)*c2130))
/1120
= 0,(5-5*c0312+(1+3*c0312)*c3012+(3+c0312)*c3021)/160 = 0,
(-(15-15*c1203-15*c1221+(-9-3*c1203-3*c1221)*c3012
+(-3-9*c1203+11*c1221)*c3021))
/480
= 0,
(15+15*c2103-15*c2112-15*c2130+(3+3*c2103+9*c2112-15*c2130)*c3012
+(-11+9*c2103+3*c2112+15*c2130)*c3021)
/480
= 0,
(21+63*c1203-77*c1221+(21+3*c1203+63*c1221)*c2103
+(63+21*c1203+21*c1221)*c2112+(-105+105*c1203+105*c1221)*c2130)
/3360
= 0]
(%o3) [((7*c0312+21)*c1221+(7*c0312+1)*c1203+21*c0312+7)/1120 = 0,
(-(35*c0312-35)*c2130-(-21*c0312-7)*c2112-(-7*c0312-1)*c2103+7*c0312
+21)
/1120
= 0,((c0312+3)*c3021+(3*c0312+1)*c3012-5*c0312+5)/160 = 0,
(-(11*c1221-9*c1203-3)*c3021-(-3*c1221-3*c1203-9)*c3012+15*c1221
+15*c1203-15)
/480
= 0,
((15*c2130+3*c2112+9*c2103-11)*c3021
+(-15*c2130+9*c2112+3*c2103+3)*c3012-15*c2130-15*c2112+15*c2103+15)
/480
= 0,
((105*c1221+105*c1203-105)*c2130+(21*c1221+21*c1203+63)*c2112
+(63*c1221+3*c1203+21)*c2103-77*c1221
+63*c1203+21)
/3360
= 0]
(%i4) length(listofvars(eqs))
(%o4) 8
(%i5) sols:errcatch(algsys(eqs,listofvars(eqs)))
algsys: tried and failed to reduce system to a polynomial in one variable; give up.
(%o5) []
(%i6) length(sols)
(%o6) 0
(%i7) eqs:subst((-(35+35*c1221-14*c1221*c3012+14*c3021))/(10+c3012+5*c3021),
c1203,eqs)
(%i8) eqs:subst((-35-35*c2112+(14+35*c2130)*c3012+(35*c2130-14*c2112)*c3021)
/(10+c3012+5*c3021),c2103,eqs)
(%i9) eqs:subst((-(5+c3012+3*c3021))/(-5+3*c3012+c3021),c0312,eqs)
(%i10) eqs:subst((-(675+30*c3012-9*c3012^2+(570-6*c3012)*c3021+111*c3021^2))
/(375-150*c3012-45*c3012^2+(350-130*c3012)*c3021
+55*c3021^2),c1221,eqs)
(%i11) eqs:subst((-375-150*c2130+(150+360*c2130)*c3012+(45+90*c2130)*c3012^2
+(-350+600*c2130+(130+360*c2130)*c3012)*c3021
+(390*c2130-55)*c3021^2)
/(675+30*c3012-9*c3012^2+(570-6*c3012)*c3021+111*c3021^2),
c2112,eqs)
(%i12) eqs:subst((-(-225+30*c3012-9*c3012^2+(-30-6*c3012)*c3021+11*c3021^2))
/(45+90*c3012-27*c3012^2+(150-18*c3012)*c3021+33*c3021^2),
c2130,eqs)
(%i13) ratsimp(eqs)
(%o13) [0 = 0,0 = 0,0 = 0,0 = 0,0 = 0,0 = 0]
(%o13) "/home/user/algsys-bug4.mac"