Prime[n]
第 n 番目の素数
を与える.
Prime
Prime[n]
第 n 番目の素数
を与える.
詳細
- Primeは素数列としても知られている.
- 記号操作・数値操作の両方に適した数学的整数関数である.
は,1より大きくそれ自身より小さい整数では割れない
より大きい最小の正の整数である.最初の素数
は整数2である.
は
のとき
と漸近的に等しい.
例題
すべて開く すべて閉じる例 (3)
スコープ (10)
数値評価 (4)
記号演算 (6)
TraditionalFormによる表示:
Prime[n]//TraditionalFormPrimeを使って方程式の解の例を求める:
FindInstance[Prime[n] + 2 == Prime[n + 1], n, Integers]Sum[1 / Prime[n] ^ s, {n, Infinity}]Product[1 + 1 / Prime[n] ^ s, {n, Infinity}]Prime数列を求める:
FindSequenceFunction[{2, 3, 5, 7, 11, 13, 17, 19, 23, 29}, n]FullSimplify[Prime[n] > n Log[n], n∈Integers && n > 0]
がInfinityに近付くときの,Primeの最高次の漸近項を求める:
DiscreteAsymptotic[Prime[n], n -> ∞]数列とその最高次の漸近項の比は,
がInfinityに近付くにつれて1に近付く:
DiscreteLimit[Prime[n] / (n Log[n]), n -> ∞]アプリケーション (38)
基本的なアプリケーション (9)
Multicolumn[If[PrimeQ[#], Framed[Style[#, Red]], #]& /@ Range[70], ...]Plot[{x^(1/2), -x^(1/2)}, {x, 0, 10}, Sequence[...]]最初の5つの素数について,エラストテネス(Eratosthenes)の篩を可視化する:
Plot[Evaluate[Table[Prime[n] * Sin[x * Pi / Prime[n]], {n, 5}]], {x, 0, 30}]ListPolarPlot[Table[{Mod[π / 2 - n 4π / 20, 2π], Prime[n]}, {n, 20}], Sequence[...]]hexagonalSpiral[n_] := {Re[#], Im[#]}& /@ Fold[Join[#1, Last[#1] + Exp[I Pi / 3] ^ #2Range[#2 / 2]]&, {0}, Range[n]]spiral = hexagonalSpiral[25];primes = spiral[[Prime[Range[PrimePi[Length[spiral]]]]]];ListPlot[spiral, ...]firstDivisorPair[n_Integer] :=
If[n == 1, 1, (If[PrimeQ[#[[1]]], #[[1]], #[[1]][#[[2]], Divide@@#]]&)[NestWhile[MapAt[NextPrime, #, 2]&, {n, 2}, !IntegerQ[Divide@@#]&]]]firstDivisorPair[24]trialByDivision[n_Integer] :=
First[FixedPoint[MapAt[firstDivisorPair, #, Last[Position[#, _Integer, Heads -> False]]]&, {n}]]trialByDivision[24]factorTree[n_Integer] := TreeForm[trialByDivision[n], Rule[...]]factorTree[24]GraphPlot[Table[If[PrimeQ[(n/m)], 1, 0], {m, 11}, {n, 11}], ...]周期曲線で素数を可視化する.素数は,それ自身と1の線の2本の曲線しか交差していないところである:
labels = Table["" <> ToString[i], {i, 1, 10}];Plot[{Tooltip[-Sin[Pi * x], "1"], Evaluate[Table[Tooltip[n * Sin[Pi * x / n], labels[[n]]], {n, 2, 10}]]}, {x, 1, 10}, Sequence[...]]ArrayPlot[Partition[(PrimeQ[#1]&) /@ Table[i, {i, 1000}] /. {False -> 0, True -> 1}, Ceiling[Sqrt[1000]]], Rule[...]]近似 (3)
Prime[25]25 * Log[25.]Primeを推定値と比較してプロットする:
ListStepPlot[{Table[Prime[n], {n, 25}], Table[n Log[n], {n, 25}]}]ListPlot[Table[Prime[n] / (n Log[n]), {n, 2, 5000}]]cesaro[n_] := Floor[n * (Log[n] + Log[Log[n]] - 1 + (Log[Log[n]] - 2) / Log[n] - (Log[Log[n]] ^ 2 - 6Log[Log[n]] + 11) / (2 * Log[n] ^ 2))]cesaro[2 10 ^ 15]Prime[2 10 ^ 15]
が素数のときは1になるアリコット合計
を使って Primeを計算する:
primeNumbers = Position[Table[DivisorSigma[1, n] - n, {n, 1, 100}], 1][[All, 1]]Table[Prime[n], {n, 1, PrimePi[100]}]整数論 (14)
Mod[Array[Prime, 100], 10]ListLinePlot[Mod[Array[Prime, 100], 10]]ListLinePlot[Table[Mod[Prime[n + 1], n], {n, 1, 100}]]DiscretePlot[Mod[Prime[n], 6], {n, 50}]Count[Prime[Range[3, 1000002]], p_ /; Mod[p, 6] == 1] / 1000000% + Count[Prime[Range[3, 1000002]], p_ /; Mod[p, 6] == 5] / 1000000modulus = {Prime[100], Prime[101], Prime[102], Prime[103]};a = 1234587;
b = 1423;remaindera = Mod[a, modulus]remainderb = Mod[b, modulus]ChineseRemainder[remaindera remainderb, modulus]a bChineseRemainder[remaindera + remainderb, modulus]a + b1 / Product[1 - 1 / Prime[n] ^ s, {n, 6}]% /. s -> 2N[%]N[Zeta[2]]N[Last[FoldList[Times, 1, 1 - (1/Prime[Range[25]])]]100]ListPlot[FoldList[Times, 1, 1 - (1/Prime[Range[25]])], Rule[...]]DiscretePlot[Prime[n + 1] - Prime[n], {n, 1, 100}]ジャンピングチャンピオン(連続する素数間で最も頻出する差)を求める:
jumpingChampion = Commonest[Table[Prime[n + 1] - Prime[n], {n, 1, 100}]]sumPrimeFactors[n_] := Plus@@Flatten[Table[#1, {#2}]&@@@FactorInteger[n]]sumPrimeFactors[25]ListStepPlot[sumPrimeFactors /@ Range[25]]ゴールドバッハ(Goldbach)の予想,つまり
となるような素数対(
,
)を求める:
GoldbachPartitions[n_] := IntegerPartitions[2n, {2}, Prime@Range@PrimePi[2n]]GoldbachPartitions[50]ListPlot[Transpose[{Range[4, 1000, 2], Length /@ Table[IntegerPartitions[i, 2, Table[Prime[n], {n, PrimePi[i]}]], {i, 4, 1000, 2}]}], AxesOrigin -> {0, 0}]素数階乗(階乗と同じような連続する素数の乗算)を n 番目の素数まで計算する:
primorial[0] := 1
primorial[1] := 2
primorial[n_] := Times@@Prime@Range[n];primorial[5]DiscretePlot[{Log[n!], Log[Times@@Prime[Range[PrimePi[n]]]]}, {n, 1, 50}]ListLinePlot[If[True, Differences, Identity][Table[Log[(n!/Times@@Prime[Range[PrimePi[n]]])], {n, 1, 100, 1}]], Rule[...]]チェビシェフ(Chebyshev)のシータ関数をプロットする:
chebyshevTheta[n_] := Log[primorial[PrimePi[n]]];Plot[chebyshevTheta[n], {n, 1, 100}]primePowers[n_] := Union@@Table[Prime[Range[PrimePi[n ^ (1 / x)]]] ^ x, {x, Log2[n]}]primePowers[10]PrimePowerQ[%]primePowerPi[n_] := PrimePi[n] + Sum[Floor@Log[Prime[k], n] - 1, {k, PrimePi[Sqrt[n]//Floor]}]primePowerPi[10]DiscretePlot[primePowerPi[n], {n, 1, 100}]n = RandomInteger[500]n < NextPrime[n] < 2nAllTrue[Table[n < NextPrime[n] < 2n, {n, 2, 200}], #&]連続する素数 pnと pn+1のすべてのペアについて √pn+1-√pn<1であるとするアンドリカ(Andrica)の予想をプロットする:
ListStepPlot[-Subtract@@@Partition[Sqrt /@ Prime[Range[100]], 2, 1], Rule[...]]pnと pn+1が2より大きい連続する素数なら,(pn)2と(pn+1)2の間に少なくとも4つの素数が存在するというブロカール(Brocard)の予想をプロットする:
ListStepPlot[-Subtract@@@Partition[PrimePi[Prime[Range[100]] ^ 2], 2, 1], Rule[...]]
ゴンについての多項式,つまり
が素数になるような第2種チェビシェフ多項式をプロットする:
Table[Plot[Evaluate[Table[Factor[ChebyshevU[Prime[n] - 1, x] / (GCD@@CoefficientList[ChebyshevU[Prime[n] - 1, x], x])][[k]], {k, 1, Length[Factor[ChebyshevU[Prime[n] - 1, x] / (GCD@@CoefficientList[ChebyshevU[Prime[n] - 1, x], x])]]}]], {x, -1, 1}], {n, 3, 6}]特殊数列 (12)
Select[Table[If[PrimeQ[n + 2], n], {n, 2, 100}], PrimeQ]ListStepPlot[Select[Table[If[PrimeQ[n + 2], n], {n, 2, 100}], PrimeQ]]
もまた素数なら,素数
はソフィー・ジェルマン(Sophie Germain)素数である:
Multicolumn[If[PrimeQ[2 * Prime[#] + 1], Framed[Style[Prime[#], Red]], Prime[#]]& /@ Range[42], ...]MersennePrimeExponentQ[Prime[4]]PrimeQ[2 ^ Prime[4] - 1]フェルマ(Fermat)素数(
が素数であるようなフェルマ数
)は5つある:
Select[Table[2^2^n + 1, {n, 0, 4}], PrimeQ]
より小さいヴィーフェリッヒ(Wieferich)素数(
で
が割れる素数
)は2つある:
Select[Range[10 ^ 4], Mod[2 ^ (# - 1) - 1, # ^ 2] == 0 && PrimeQ[#]&]Select[Table[Product[Prime[n], {n, m}] + 1, {m, 100}], PrimeQ]perfectNumbers = Select[Table[If[PrimeQ[(2 ^ Prime[n]) - 1], (2 ^ (Prime[n] - 1))((2 ^ Prime[n]) - 1)], {n, 1, 25}], IntegerQ]ピタゴラス素数は2つの数列の合計,つまり素数
として書くことができる:
Select[Table[If[Mod[Prime[n], 4] == 1, Prime[n]], {n, 1, 15}], IntegerQ]PowersRepresentations[13, 2, 2]13 == 2^2 + 3^2ラマヌジャン(Ramanujan)素数は,すべてのx≥ Rnについて π(x) - π(x/2) ≥ n である最小の数 Rnである:
list = Table[PrimePi[n] - PrimePi[n / 2], {n, 10 ^ 4}];ramanujanPrime[n_] := 1 + Last[Position[list, n - 1]][[1]]ramanujanPrime[10]n 番目のラマヌジャン素数とPrimeの差:
DiscretePlot[{ramanujanPrime[n], Prime[n]}, {n, 1, 50}]Select[Table[If[PrimeQ[Prime[n], GaussianIntegers -> True], Prime[n]], {n, 1, 25}], PrimeQ]ガウス素数の配列プロット.ガウス整数
(
と
が非零のとき
は素数.あるいは,
のとき
.あるいは
のとき
):
ArrayPlot[Table[If[PrimeQ[x + I y, GaussianIntegers -> True], If[1 ≠ 1 && !CoprimeQ[x + I y, 1], 2, 1], 0], {x, -25, 25}, {y, -25, 25}], Rule[...]](*or this version*)ArrayPlot[Array[Boole[PrimeQ[Complex@##, GaussianIntegers -> True]]&, {65, 65}, -32], Rule[...]]エマープ素数は,逆から読んでも素数であるが回文構造ではない素数
である:
emirpPrimes = Select[Table[If[PrimeQ[If[IntegerReverse@Prime[n] ≠ Prime[n], IntegerReverse@Prime[n]]], Prime[n]], {n, 1, 20}], IntegerQ]IntegerReverse[%]PrimeQ[%]
.
のホーム素数は
の素因数を連結して素数になるまで繰り返すことで求まる:
concatenatePrimes[n_] := FromDigits[Flatten[IntegerDigits /@ Flatten[Table[#1, {#2}]&@@@FactorInteger[n]]]];concatenatePrimes[9]PrimeQ[%]homePrime[n_] := NestWhile[concatenatePrimes[#]&, n, !PrimeQ[#]&];homePrime[1] = 1;homePrime[9]PrimeQ[%]特性と関係 (8)
Primeの従来の数学表記:
Prime[n]//TraditionalFormPrimesはすべての素数の領域を表す:
Element[Prime[30], Primes]Primeの定義の最大領域:
FunctionDomain[Prime[n], n]Primeは
のとき
と漸近的に等しい:
DiscreteAsymptotic[Prime[n], n -> ∞]PrimePi[Prime[100]]NextPrimeを使って n より大きい次の素数を求める:
NextPrime[30]Prime[PrimePi[30] + 1]PrimeOmegaは素因数を数える:
PrimeOmega[Prime[5]]Divisors[Prime[5]]EulerPhi[n]は
と互いに素な
以下の数を数える:
EulerPhi[Prime[10]]Prime[10] - 1考えられる問題 (1)
インタラクティブな例題 (2)
おもしろい例題 (6)
Primeの値の差に基づいて彩色されたウラム(Ulam)の螺線:
ulam[n_] := Partition[Permute[Range[n ^ 2], Accumulate[Take[Flatten[{{n ^ 2 + 1} / 2, Table
[(-1) ^ j i, {j, n}, {i, {-1, n}}, {j}]}], n ^ 2]]], n]ArrayPlot[Prime[ulam[101] + 1] - Prime[ulam[101]], Rule[...]]
が素数で割れるときに可視化する.点の各行は水平軸に沿ってラベルがつけられた
の除数を表す:
NumberLinePlot[Table[Select[Range[Prime[n]], (Divisible[Prime[n] - 1, #] && # > 1 && PrimeQ[#])&], {n, 1, 40}], PlotRange -> All]Prime列に基づいて経路を生成する:
Graphics[Line[AnglePath[Table[Prime[n], {n, 1, 1000}]], Rule[...]]]
より小さい素数を使って生成された有向グラフを使って多面体を構築する:
vertexcoords[p_] := GraphEmbedding[Graph3D[Flatten@Table[i -> Mod[i q, p], {i, 1, p - 1}, {q, Prime[Range[PrimePi[p] - 1]]}]]];Table[ConvexHullMesh[vertexcoords[p], Rule[...]], {p, Prime[Range[4, 7]]}]Table[Graphics[{EdgeForm[StandardGray], Riffle[RandomColor@50, Polygon /@ (CirclePoints[#, 1, Prime[n]]& /@ Tuples[Range@1, {2}])]}], {n, 2, 5}]WordCloud[Table[Prime[n], {n, 1, 100}], [image]]テクニカルノート
履歴
1988 で導入 (1.0) | 2020 で更新 (12.1)
テキスト
Wolfram Research (1988), Prime, Wolfram言語関数, https://reference.wolfram.com/language/ref/Prime.html (2020年に更新).
CMS
Wolfram Language. 1988. "Prime." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2020. https://reference.wolfram.com/language/ref/Prime.html.
APA
Wolfram Language. (1988). Prime. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/Prime.html
BibTeX
@misc{reference.wolfram_2026_prime, author="Wolfram Research", title="{Prime}", year="2020", howpublished="\url{https://reference.wolfram.com/language/ref/Prime.html}", note=[Accessed: 15-November-2026]}
BibLaTeX
@online{reference.wolfram_2026_prime, organization={Wolfram Research}, title={Prime}, year={2020}, url={https://reference.wolfram.com/language/ref/Prime.html}, note=[Accessed: 15-November-2026]}