2012-06-11 17 views

Respuesta

9

gmpy2 es compatible con una variedad de pruebas de pseudoprima. La prueba de Miller-Rabin está disponible como gmpy2.is_strong_prp().

gmpy2 aún no tiene ningún código de factorización.

Descargo de responsabilidad: Soy el encargado de mantenimiento de gmpy2. Las pruebas de primalidad se basan en el código de http://sourceforge.net/projects/mpzprp/files/

1

No creo que exista tal módulo dedicado a las funciones principales en la biblioteca estándar, pero por supuesto hay muchas personas que han escrito pruebas de primalidad y tal.

Una biblioteca que está orientada a la aritmética de precisión múltiple, pero que tiene varias funciones para números primos (como is_prime() y next_prime()) es GMPY2. El documentation también está disponible.

0

Si está buscando implementaciones de algoritmos, consulte Rosetta Code. El sitio web tiene muchas implementaciones en Python. Definitivamente podría armar su propia biblioteca para su necesidad personal.

+1

Estoy explícitamente no buscando implementaciones. Ya he implementado el código, pero generalmente prefiero cargar una función de un módulo que ha sido revisado que escribirlo, especialmente si es algo bien conocido como Miller-Rabin. –

9

acabo de descubrir isprime del SymPy package:

import sympy 
print sympy.isprime(10) 

Salida:

False 

no confundir con prime, que devuelve el número primo de orden n:

import sympy 
print sympy.prime(10) 

Salida:

29 
Cuestiones relacionadas