![Maple Icon](/images2018/NavIcons/Maple.png)
Maple
Powerful math software that is easy to use
• Maple for Academic • Maple for Students • Maple Learn • Maple Calculator App • Maple for Industry and Government • Maple Flow • Maple for Individuals![Maple Addon Icon](/images2018/NavIcons/Maple-Addon.png)
Maple 2019 improves the performance of many routines.
factor
Maple 2019 includes performance improvements for factoring sparse multivariate polynomials with integer coefficients.
> | ![]() |
![]() |
> | ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
> | ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
> | ![]() |
The following factorization took about 5 seconds in Maple 2018 on the same machine.
> | ![]() |
memory used=40.03MiB, alloc change=41.09MiB, cpu time=250.00ms, real time=247.00ms, gc time=0ns |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
A larger example, with about 30000 terms.
> | ![]() |
> | ![]() |
![]() |
This factorization took more than 1 minute in Maple 2018.
> | ![]() |
memory used=475.20MiB, alloc change=133.50MiB, cpu time=3.29s, real time=3.08s, gc time=468.00ms |
> | ![]() |
![]() |
The last example is the determinant of a generic circulant matrix, i.e., where all entries are indeterminates, and each row is a cyclic rotation of the first one.
> | ![]() |
> | ![]() |
![]() |
> | ![]() |
> | ![]() |
![]() |
This factorization took about 17 seconds in Maple 2018.
> | ![]() |
memory used=488.25MiB, alloc change=-41.44MiB, cpu time=5.37s, real time=3.96s, gc time=421.20ms |
> | ![]() |
![]() |
> | ![]() |
![]() |
> | ![]() |
![]() |
> | ![]() |
![]() |
Graph Theory
In Maple 2019 the MaximumClique function of the GraphTheory package has new algorithms for computing the maximum clique of a graph and an option to choose the algorithm that you want to use, giving a huge performance boost on certain kinds of graphs. In the following example, Maple 2019 almost instantly finds the maximum clique of a graph that Maple 2018 needed over 3 minutes to find. In this case the "sat" method is used which translates the problem into Boolean logic and solves the resulting satisfiability problem using a SAT solver.
> | ![]() |
> | ![]() |
![]() |
> | ![]() |
![]() |
> | ![]() |
![]() ![]() |
> | ![]() |
memory used=10.44MiB, alloc change=28.99MiB, cpu time=187.00ms, real time=152.00ms, gc time=62.40ms |
![]() |
> | ![]() |
![]() |
Group Theory
> | ![]() |
> | ![]() |
> | ![]() |
![]() |
> | ![]() |
> | ![]() |
![]() |
> | ![]() |
![]() |
> | ![]() |
![]() |
> | ![]() |
![]() |
> | ![]() |
![]() |
> | ![]() |
![]() |
> | ![]() |
![]() |
> | ![]() |
![]() |
> | ![]() |
![]() |
> | ![]() |
![]() |
> | ![]() |
![]() |
Real Root Finding
The RootFinding:-Isolate command has a new algorithm for univariate polynomials that is much faster for ill-conditioned problems and high accuracy solutions.