1 | initial version |

Maxima is responsible for default symbolic integration in Sage, and nobody understands how Maxima's integration code works. I just tried continuing your example above as follows:

sage: deriv=diff((exp(x)-1)/x,x); deriv
sage: f = integrate(deriv, x)
sage: g = f - (exp(x)-1)/x
sage: CDF(g(5))
-1.7776787288 + 2.08166817117e-17*I
sage: CDF(g(10))
-4.43650184726 + 2.22044604925e-16*I
sage: CDF(g(20))
-0.530325316824 + 2.27373675443e-12*I

So it doesn't even look like f differs from (exp(x)-1)/x by a constant. Branch cuts are probably relevant. I can't wait until we have our symbolic integration code that we actually understand.

2 | No.2 Revision |

Maxima is responsible for default symbolic integration in Sage, and nobody understands how Maxima's integration code works. I just tried continuing your example above as follows:

```
sage: deriv=diff((exp(x)-1)/x,x); deriv
sage: f = integrate(deriv, x)
sage: g = f - (exp(x)-1)/x
sage: CDF(g(5))
-1.7776787288 +
```~~2.08166817117e-17~~*I
**2.08166817117e-17*I
sage: CDF(g(10))
-4.43650184726 + *~~2.22044604925e-16~~I
2.22044604925e-16*I
sage: CDF(g(20))
-0.530325316824 + ~~2.27373675443e-12*I~~2.27373675443e-12*I

So it doesn't even look like f differs from (exp(x)-1)/x by a constant. Branch cuts are probably relevant. I can't wait until we have our symbolic integration code that we actually understand.

Copyright Sage, 2010. Some rights reserved under creative commons license. Content on this site is licensed under a Creative Commons Attribution Share Alike 3.0 license.