Number-theoretic algorithms; complexity Computational number theory mathematics