bugAxiom Computer Algebra System - Bugs: bug #9217, substituting for an operator in a...

 
 

You are not allowed to post comments on this tracker with your current authentication level.

bug #9217: substituting for an operator in a sum does not apply the summation algorithms

Submitter:  Martin Rubey <kratt6>
Submitted:  Fri 04 Jun 2004 08:18:34 AM UTC
   
 
Category:  None Severity:  3 - Normal
Item Group:  code bug Status:  transferred
Privacy:  Public Assigned to:  None
Originator Name:  kratt6 Open/Closed:  Open
Release:  tla from may 2004 Reproducibility:  None
Fixed Release: 
Error message: 


Example of code trigerring the bug: 

 eval(sum(f(i),i=a..b),f,x+->x)

Internal cause: 

first the sum is evaluated. Since the argument -- f(x)-- is not a polynomial or rational function, using first iidsum, than idsum of COMBF. Afterwards the substitution is performed. Now the sum has the internal format
%defsum [%A, %A, i, a, b], which is again evaluated with iidsum and idsum of COMBF. The function sum$InnerPolySum is never called, of course. A general solution is to call sum from within idsum, but in this case, care has to be taken that summation algorithms that can fail (such as Gosper's) do not produce an infinite loop. (In fact I think this is OK, I only did not have the time to check)

Fri 04 Jun 2004 08:18:34 AM UTC, original submission:  

(6) -> eval(sum(f(i),i=a..b),f,x+->x)

         b
        --+
   (6)  >     i
        --+
        i= a
                                                     Type: Expression Integer

Although axiom can evaluate this sum, it does not.

Martin Rubey <kratt6>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

CC list is empty

 

There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

 

Follow 2 latest changes.

Date Changed by Updated Field Previous Value => Replaced by
2005-10-03 billpage1 StatusNone transferred
    Internal causefirst the sum is evaluated. Since the argument -- f(x)-- is not a polynomial or rational function, using first iidsum, than idsum of COMBF. Afterwards the substitution is performed. Now the sum has the internal format %defsum [%A, %A, i, a, b], which is again evaluated with iidsum and idsum of COMBF. The function sum$InnerPolySum is never called, of course. A general solution is to call sum from within idsum, but in this case, care has to be taken that summation algorithms that can fail (such as Gosper's) do not produce an infinite loop. (In fact I think this is OK, I only did not have the time to check) first the sum is evaluated. Since the argument -- f(x)-- is not a polynomial or rational function, using first iidsum, than idsum of COMBF. Afterwards the substitution is performed. Now the sum has the internal format %defsum [%A, %A, i, a, b], which is again evaluated with iidsum and idsum of COMBF. The function sum$InnerPolySum is never called, of course. A general solution is to call sum from within idsum, but in this case, care has to be taken that summation algorithms that can fail (such as Gosper's) do not produce an infinite loop. (In fact I think this is OK, I only did not have the time to check)

Back to the top

Powered by Savane 3.13-cf05.
Corresponding source code