2012-06-11 13 views

Antwort

9

gmpy2 unterstützt eine Vielzahl von Pseudoprimientests. Der Miller-Rabin-Test ist als gmpy2.is_strong_prp() verfügbar.

gmpy2 hat noch keinen Faktorisierungscode.

Haftungsausschluss: Ich bin der Betreuer von gmpy2. Die Primalitätstests basieren auf Code von http://sourceforge.net/projects/mpzprp/files/

1

Ich glaube nicht, dass es ein solches Modul gibt, das Prim-Funktionen in der Standard-Bibliothek gewidmet ist, aber natürlich gibt es viele Leute, die Primalitäts-Tests und dergleichen geschrieben haben.

Eine Bibliothek, die auf mehrfachgenauen Arithmetik ausgerichtet ist, die aber GMPY2 mehrere Funktionen für die Primzahlen (wie is_prime() und next_prime()) ist, hat. Die documentation ist ebenfalls verfügbar.

0

Wenn Sie nach Implementierungen von Algorithmen suchen, überprüfen Sie Rosetta Code. Die Website hat viele Implementierungen in Python. Sie könnten auf jeden Fall Ihre eigene Bibliothek für Ihre persönlichen Bedürfnisse zusammenstellen.

+1

Ich suche explizit nicht nach Implementierungen. Ich habe den Code bereits implementiert, aber im Allgemeinen ziehe ich es vor, eine Funktion aus einem überprüften Modul zu laden, anstatt sie selbst zu schreiben, besonders wenn es etwas ist, das gut bekannt ist wie Miller-Rabin. –

9

Ich habe gerade entdeckt isprime vom SymPy package:

import sympy 
print sympy.isprime(10) 

Ausgang:

False 

Nicht mit prime, die gibt die n-te Primzahl zu verwechseln:

import sympy 
print sympy.prime(10) 

Ausgang:

29 
Verwandte Themen