Add a numba-accelerated version of the function "get_exponent_matrix()"
Following Issue #41 (closed) and the corresponding MR !21 (merged),
the numba-accelerated version of get_exponent_matrix()
was replaced by
a shorter and more readable implementation solely based on NumPy.
While this particular implementation works, it becomes increasingly slower for creating multi-index set in high dimension and high lp./poly. degree (as expected).
Following a discussion that was originally part of MR !73,
another numba-accelerated version of get_exponent_matrix()
is now available without the previous issues.
Based on some benchmark in moderate dimensions up to poly. degree 5, the function is indeed faster by a couple order of magnitudes compared
to the current NumPy version although the scaling (w.r.t to poly. degree across dimensions and lp-degree) is more or less similar.
This iterative version of get_exponent_matrix()
should be added to the Minterpy codebase.
Create a new separate MR related solely on this issue (unlike MR !73).
We can decide later whether we will keep the two implementations or replace the old implementation with the new one.