summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKevin Ryde <user42@zip.com.au>2000-06-10 03:40:24 +0200
committerKevin Ryde <user42@zip.com.au>2000-06-10 03:40:24 +0200
commitad1c58b0ba8d84ca0f3948fd4a69729a63b66cbf (patch)
treeb84a43410ee68de1fd3d3897f49333d02f7b4487
parent0f77cd90424697beb5b3d82514de799dc2b7f0c8 (diff)
downloadgmp-ad1c58b0ba8d84ca0f3948fd4a69729a63b66cbf.tar.gz
Remove the division task, now completed, except for one bit now moved
to tasks.html.
-rw-r--r--doc/projects.html29
1 files changed, 0 insertions, 29 deletions
diff --git a/doc/projects.html b/doc/projects.html
index a9b08cb0d..b3029d8d7 100644
--- a/doc/projects.html
+++ b/doc/projects.html
@@ -71,35 +71,6 @@
</ol>
-<p> <li> <strong>Division and modular multiplication</strong>
-
- <p> GMP's current division routines are O(n^2), or to be accurate, O(n(m-n))
- where n is the digit count of the divisor, and m is the digit count of the
- dividend. Modular reduction code rely on division, and is thus also slow.
-
- <p> Desirable new developments:
-
- <ol>
- <li> Implement O(n^1.58) division. There is an algorithm published recently
- that accomplish this.
- <li> Implement division based on first computing an approximation to the
- reciprocal of the divisor, using Newton's algorithm, and then multiplying
- the dividend by the approximate reciprocal.
- <li> Implement modular multiplication based on Peter Montgomery's REDC
- algorithm. This algorithm is O(n^2) and should therefore be used only for
- operands under a certain limit. Operands greater than that limit need to
- reply on computing the divisor reciprocal, see above.
- <li> Make <code>mpz_powm</code>, <code>mpz_powm_ui</code>, etc, use modular
- multiplication for the operand ranges where that helps. Actually, these
- functions should probably be implemented at the mpn level as part of
- this development.
- <li> Tune the aging plain division functions. (Mostly done by Torbjörn.)
- Perhaps write new functions with better interfaces,
- (<code>mpn_tdiv_q</code>, <code>mpn_tdiv_r</code>,
- <code>mpn_tdiv_qr</code>) replacing <code>mpn_divmod</code> and (the
- slow!) <code>mpn_divrem</code>.
- </ol>
-
<p> <li> <strong>Assembly routines</strong>
<p> Write new and tune existing assembly routines. The functions in