Austin Roche

140 Reputation

5 Badges

11 years, 164 days
Waterloo, Ontario, Canada
I am a Senior Software Developer in the Math Group, working mostly on the Maple library. I have been working at Maplesoft since 2007, in various areas including differential equations, integration, mathematical functions, simplification, root finding, and logic. I completed a Master's degree from McGill University with a thesis in Differential Geometry, and a PhD from Simon Fraser University with a thesis on Differential Equations.

MaplePrimes Activity

These are replies submitted by aroche

Thanks for the report. A fix has been made and is expected in the next patch release (2024.1).


@Aung Yes, the fix mentioned above only fixes a wrong answer from simplify. It does not fix the weakness in integration. I'm not even sure if this integral can be solved.

In Maple 2024 simplify will directly give the desired answer under the assumption m::integer:

simplify(4*cos(Pi*m+2*alpha*Pi)/(Pi*(2*m + 1))) assuming m::integer;




Hi @Preben Alsholm ,
The simplify bug mentioned above is now fixed:

simplify(int((1 - sigma*sin(2*Pi*N))^k, N = 0 .. N))

now returns unchanged and thanks to @ecterrab the fix is also distributed for everybody using Maple 2024 within the Maplesoft Physics Updates v.1717 or newer. As usual, to install the Updates, open Maple and input Physics:-Version(latest).



Hi @nm,
This fix should also be available in a future Maple2024.1 patch release.

Follow up note on this. If we take the original integral, let t=x^2, -1/2 a^2 =b, then we get the simpler version:

Int(exp(b/x^2), x = 0 .. infinity)

The antiderivative oscillates wildly at 0+ and so the integral is undefined (does not converge, even to infinity) when Re(b) > 0 and Im(b) <> 0 (example, b=I+1). As such the new answer is unevaluated, but it returns infinity if evaluated under appropriate assumptions.

@Mariusz Iwaniuk Thank you, we've entered these issues into our system.

Thank you all for your comments regarding not handling equality assumptions as assignments. Historically assume was not really intended to be used to give a variable a specific value - other mechanisms, such as eval, or the 'use' command, are more suited to this. In particular, Maple may ignore special cases (for which the associated set of parameter values has measure 0), because returning an answer which accounts for every possible subcase may not be practical (or efficient - note, checking for potential subcases using 'is' can be much slower than checking a type!). Instead, it aims to at least return an answer for the general case, and relies on the user explicitly substituting the parameter values before calling the function in question. Of course, finding the right set of cases to treat specially is definitely a goal we are working towards.

Austin Roche
Mathematical Software, Maplesoft

@JacquesC Regarding details, it's a mixed bag, including various changes targeted at improving specific int routines, as well as improvements in other parts of the library, which had the side effect of improving int. These latter improvements were sometimes motivated specifically by the effect they would have on improving int.

Page 1 of 1