Thanks for reporting this. Your copy of REDUCE is rather old; an up-to-date
version still exhibits the problem, but gives the error message
+++ Error attempt to take car of an atom: failed
I think I have found the cause of the problem; it seems to be an incorrect
treatment of one particular case in the algorithm.
As to why it works when you rename one of the variables, I suspect that this
renaming leads to a different internal ordering of the variables when computing
the Groebner base.
I have a preliminary solution; I'll get back to you after I have verified that
it is indeed correct.
Regards,
Rainer
______________________________________________________________________________
On Wed, 12 Sep 2012 at 10:36 -0000, Jarmo Hietarinta wrote:
> This is distilled from an actual problem.
>
> Suppose I have already solved 6 equations using groesolve and now add the 7th:
>
> res3:={c16=(c11**2*c6)/(a11*cp11),
> b11=(bp11*cp11)/c11,
> b6=c11/cp11,
> a6=cp11/c11,
> ap11=(a11*ap16*cp11)/c11,
> apzz=(a11*cp11*cpzz)/(c11*cp6),
> - ap16*cp11*cp6 + c11*c6};
>
> I now try to solve this with reduce as follows:
>
> Reduce (Free CSL version), 14-Apr-09 ...
>
> 1: off nat;
>
> 2: load groebner;
>
> 3: groebmonfac:=0;
>
> groebmonfac := 0$
>
> 4:
> 4: res3:={c16=(c11**2*c6)/(a11*cp11),
> 4: b11=(bp11*cp11)/c11,
> 4: b6=c11/cp11,
> 4: a6=cp11/c11,
> 4: ap11=(a11*ap16*cp11)/c11,
> 4: apzz=(a11*cp11*cpzz)/(c11*cp6),
> 4: - ap16*cp11*cp6 + c11*c6};
>
> res3 := {c16=(c11**2*c6)/(a11*cp11),
> b11=(bp11*cp11)/c11,
> b6=c11/cp11,
> a6=cp11/c11,
> ap11=(a11*ap16*cp11)/c11,
> apzz=(a11*cp11*cpzz)/(c11*cp6),
> - ap16*cp11*cp6 + c11*c6}$
>
> %then groesolve tilts without giving any result at all; same with solve:
>
> 5: solve(res3);
>
> Unknowns: {a11,a6,ap11,ap16,apzz,b11,b6,bp11,c11,c16,c6,cp11,cp6,cpzz}
> 6: groesolve(res3);
>
> % but if after this I change 1 variable in the set:
>
> 7: sub(bp11=bp10,res3);
>
> {c16=(c11**2*c6)/(a11*cp11),
> b11=(bp10*cp11)/c11,
> b6=c11/cp11,
> a6=cp11/c11,
> ap11=(a11*ap16*cp11)/c11,
> apzz=(a11*cp11*cpzz)/(c11*cp6),
> - ap16*cp11*cp6 + c11*c6}$
>
> % then groesolve can solve it, but uses 12 seconds!
>
> 8: groesolve ws;
>
> {{a6=cp11/c11,
> ap11=(a11*c6)/cp6,
> apzz=(a11*cp11*cpzz)/(c11*cp6),
> b11=(bp10*cp11)/c11,
> b6=c11/cp11,
> c16=(c11**2*c6)/(a11*cp11),
> ap16=(c11*c6)/(cp11*cp6)}}$
>
> 9: showtime;
>
> Time: 12139 ms plus GC time: 220 ms
>
> What goes wrong?
>
> regards, Jarmo Hietarinta
>
> ----------------------------------------------------------------------------------
> Prof. Jarmo Hietarinta
> Department of Physics and Astronomy
> University of Turku, FIN-20014 Turku, Finland
> mobile: +358-40-722 5685
> ----------------------------------------------------------------------------------
> ------------------------------------------------------------------------------
> Live Security Virtual Conference
> Exclusive live event will cover all the ways today's security and
> threat landscape has changed and how IT managers can respond. Discussions
> will include endpoint security, mobile security and the latest in malware
> threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
> _______________________________________________
> Reduce-algebra-developers mailing list
> Reduce-algebra-developers@...
> https://lists.sourceforge.net/lists/listinfo/reduce-algebra-developers
>
Rainer Schöpf |