22

Miller-Rabin-Testと単純な因数分解関数を実装しました。どちらももっとうまくやれる可能性があり、少なくとも Miller-Rabin-Test はよく知られています。

そのような一般的な素数関数を実装する Python-Library が存在するかどうか、またはそのようなライブラリが存在しない理由を教えてください。

4

6 に答える 6

23

私はSymPyパッケージisprimeから発見しました:

import sympy
print sympy.isprime(10)

出力:

False

primen 番目の素数を返すと混同しないでください。

import sympy
print sympy.prime(10)

出力:

29
于 2014-08-29T16:59:47.627 に答える
14

gmpy2は、さまざまな疑似素数テストをサポートしています。Miller-Rabin 検定は、として利用できますgmpy2.is_strong_prp()

gmpy2 には因数分解コードがまだありません。

免責事項: 私は gmpy2 のメンテナーです。素数性テストは、 http: //sourceforge.net/projects/mpzprp/files/ のコードに基づいています。

于 2012-06-11T05:34:33.570 に答える
3

素数関数専用のモジュールが標準ライブラリにあるとは思いませんが、もちろん素数性テストなどを書いている人はたくさんいます。

多倍精度演算を対象としているが、素数用の関数 ( や など) がいくつかあるライブラリの 1 つis_prime()next_prime()ですGMPY2ドキュメントも入手可能です。

于 2012-06-11T05:34:07.643 に答える
2

アルゴリズムの実装を探している場合は、Rosetta Codeを調べてください。この Web サイトには、Python での多くの実装があります。個人的なニーズに合わせて独自のライブラリを組み合わせることは間違いありません。

于 2012-06-11T05:36:49.543 に答える