Handle un-normal zeros properly in the division-free elimination.
authorVitaly Magerya <vmagerya@gmail.com>
Fri, 12 Oct 2018 18:45:27 +0000 (20:45 +0200)
committerRichard Kreckel <kreckel@ginac.de>
Fri, 12 Oct 2018 18:45:27 +0000 (20:45 +0200)
commit96be7a17790700998e2d071e00ad5c1ffb4a2d3e
treeeb9804167030874887544e896251401b323ed656
parenta039abd06ed205ed9868ff1ceb1378082f8cb1ab
Handle un-normal zeros properly in the division-free elimination.

Call .normal() instead of just .expand(), such that matrix::pivot() finds
the pivot.

Note that this problem also affects matrix::solve() with 'algo'
set to solve_algo::automatic.

Of course, using .normal() makes division_free_elimination only
truly "division-free" if the input matrix didn't have fractions.
In other cases, GCDs will be computed.
check/exam_matrices.cpp
ginac/matrix.cpp