PrimalityProving`
PrimalityProving`
ProvablePrimeQ
詳細とオプション
- ProvablePrimeQを使うためには,まず素数証明パッケージをロードしなくてはならない.それにはNeeds["PrimalityProving`"]を実行する必要がある.
- ProvablePrimeQ[n]がTrueを返すならば,n はプラットの素数証明書,あるいはAtkin–Morainの素数証明に基づいた素数である.
- PrimeQは桁違いに速いので, ProvablePrimeQをPrimeQの代用として使うべきではない.代りに必要な場合は,PrimeQの結果の証明にProvablePrimeQを使うとよい.
- 次のオプションを使うことができる:
-
"SmallPrime" 1050 Atkin–Morainテストを使用する下限 "Certificate" False 証明書を出力するかどうか "PollardPTest" Automatic ポラード(Pollard)の メソッドを使うかどうか "PollardRhoTest" Automatic ポラードの メソッドを使うかどうか "TrialDivisionLimit" Automatic 試行割算で使う素数の数 "PrimeQMessages" False 処理状況を監視するかどうか
例題
すべて開くすべて閉じる例 (1)
PrimeQにより1093が素数であることが分かる:
ProvablePrimeQでも同じ結果であるが,証明書が生成される:
スコープ (2)
オプション (2)
Certificate (1)
オプション"Certificate"->Trueを使うと,直接証明書を見ることができる:
PrimeQMessages (1)
特性と関係 (1)
ProvablePrimeQが結果を返したら,PrimeQCertificateを使って証明書を出力することができる:
"Certificate"->Trueとすると,ProvablePrimeQはAtkin–Morain素数検定を繰り返す: