crazyeti

45 Reputation

3 Badges

6 years, 68 days

MaplePrimes Activity


These are replies submitted by crazyeti

@Mac Dude I contacted customer service and here is the reply I've got so far,

It certainly looks like a bug. I tried it in various versions of Maple, including the GUI version, and the same thing happened, even after just copying-and-pasting the input for “expr1” to “expr2”.

I will let our developers know, and hopefully it will be fixed in a future version of Maple. Thank you for bringing this to our attention.


Don't know how serious they will loot at it. At least I'd like them to define the exact conditions that lead to the bug so I can avoid it in the future.

@Christopher2222 as others said, the bug is also there in the graphic interface. It only happens when you execute the statements with freshly started kernel. The second time you run it, it's gone. At least that's what happened in my machine. So I'm thinking it might be related to memory allocation for algebraic expressions. I haven't lost my confidence in Maple yet. The bug should just be a single incident. It's just annoying to know that now I have to double or triple check my result with different implementations due to this particular bug. Now everyone confirms it, I just hope Maple could post a solution/workaround soon, something like always executing the assignment statement twice etc. As an user, we wouldn't know what's the right solution/workaround that's guaranteed to work each time until Maple debugs their own source code.

Yes it is more general. I found it by noticing some inconsistency in my results when I implemented my calculation in two different ways. My original script is much more complicated, and the problem seems to occur when at least

1. there are identical expressions appeared in the script
2. the expression has some cancellation in terms and the number of terms must be large enough

Just to give some other examples the following two script would also not run correctly on my machines,

1.
rule1:=[expr=t1+t2+t3+t4+t5+t6+t7+t8+t9+t10+t11+t12+t13+t14+t15+t16+t17+t18+t19+t20+t21+t22+t0-t0+t23];
rule2:=[expr=t1+t2+t3+t4+t5+t6+t7+t8+t9+t10+t11+t12+t13+t14+t15+t16+t17+t18+t19+t20+t21+t22+t0-t0+t23];
map(x->lhs(x)-rhs(x),subs(rule1,rule2));

2.
expr1:=F(1)+F(2)-2*F(3)-F(4)-2*F(5)+4*F(6)-F(7)+4*F(8)-4*F(9)+F(10)-F(11)-F(12)+4*F(13)-2*(-F(14)+2*F(13))-F(15)+4*F(16)-8*F(17)+4*(-F(16)+2*F(17))-F(18)-F(19)+2*F(20)+F(21)+2*F(22):
expr2:=F(1)+F(2)-2*F(3)-F(4)-2*F(5)+4*F(6)-F(7)+4*F(8)-4*F(9)+F(10)-F(11)-F(12)+4*F(13)-2*(-F(14)+2*F(13))-F(15)+4*F(16)-8*F(17)+4*(-F(16)+2*F(17))-F(18)-F(19)+2*F(20)+F(21)+2*F(22):
expr1-expr2;


This bug makes me really nervous since now I'm not even sure if Maple can give me correct result.

Page 1 of 1