aboutsummaryrefslogtreecommitdiffstats
path: root/TODO
blob: 9eaac435f0c660cfd47e0c9998df4554ccee2b11 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
GMP has mpz_divexact(q,n,d), we should have zdiv_exact(q,n,d).
It uses optimised division algorithm that requires that d|n.

Add zsets_radix
Add zstr_radix

Can zmodpowu and zmodpow be improved using some other algorithm?
Is it worth implementing precomputed optimal
  addition-chain exponentiation in zpowu?

Test big endian
Test always having .used > 0 for zero
  Test negative/non-negative instead of sign
Test long .sign
Test always having .chars % 4 == 0
Test reusing objects in the temp-stack

Test optimisation of zmul:
  bc = [(Hb * Hc) << (m2 << 1)]
     + [(Hb * Hc) << m2]
     - [(Hb - Lb)(Hc - Lc) << m2]
     + [(Lb * Lc) << m2]
     + (Lb * Lc)

Would zmul be faster if we split only one of the
factors until they are both approximately the same
size?

Add entropy test for zrand.

Should zmodpowu, zmodpow, and zmodmul be removed?
  I need to research how important these are.
  They are important for cryptography, but we do not care about that.
  They are important for discrete/abstract mathematics, but bignum probably isn't in those cases?