fix for #41
This fix contains a completely new implementation of generate_exponent_matrix
as part of minterpy.core.utils
. As part of that, the following new utility functions are added to minterpy.utils
: lp_sum
and cartesian_product
, which are described in their docstrings.
Furthermore, the deprecated version of generate_exponent_matrix
was deleted along with their related jit-compiled version (which wasn't used anywhere else).
Last but not least, there was a minor bug in the tests_multi_index_utils.py
, which was also fixed by this MR.
FYI: I started benchmarking these functions in a new repo, where some timing results can be found here. However, those benchmarks are not finished yet, but one may see that 'numpy2' performs very well compared to the other versions.