平方剰余

提供: testwiki
ナビゲーションに移動 検索に移動

数論において、テンプレート:Mvarとして平方数合同である整数 テンプレート:Mvar を、テンプレート:Mvar を法とする平方剰余(へいほうじょうよ、テンプレート:Lang-en-short)と呼ぶ。つまり、テンプレート:Mvar が平方剰余であるとは、テンプレート:Mvar に対し以下の条件を満たす整数 テンプレート:Mvar が存在することを意味する:

x2q(modp).

平方剰余でない数を平方非剰余(へいほうひじょうよ、テンプレート:Lang-en-short)と呼ぶ。

元々、合同算術という数論の一分野からの抽象的な数学的概念であった平方剰余は、現在様々な分野で応用されており、その応用先は音響工学から暗号化、大きな数の素因数分解にまで至る。

歴史、規約、および基本的な事実

フェルマーオイラーラグランジュルジャンドルをはじめとする17〜18世紀の数論者たちはそれぞれ平方剰余についての定理を確立し[1]、予想を打ち立てた[2]が、最初の体系的な扱いはガウスDisquisitiones ArithmeticaeのIV節 (1801) である。Article 95では、「平方剰余」と「平方非剰余」という用語を導入し、文脈から明らかであれば、形容詞「平方」を削除できると述べている。

与えられた テンプレート:Mvar に対して、テンプレート:Mvar を法とする平方剰余のリストは単に テンプレート:Math2 を二乗するだけで得られる。テンプレート:Math2 であるので、テンプレート:Mvar を法とする平方数のリストは テンプレート:Math に対して対称であり、リストアップは テンプレート:Math まで続ければ十分である。これは下の表で確認できる。

つまり、テンプレート:Mvar を法とする平方剰余の数は、テンプレート:Math2テンプレート:Mvar が偶数)または テンプレート:Math2テンプレート:Mvar が奇数)を超えることはない[3]

2つの剰余の積は常に剰余となる。

素数の法

2 を法とすると、すべての整数が平方剰余となる。

オイラーの規準 (Euler's criterion) によると、奇素数 p を法とすると、テンプレート:Sfrac 個の剰余(0を含む)と テンプレート:Sfrac 個の非剰余が存在する。この場合、慣例として0を特殊なケースと見なし、 Z/pZテンプレート:仮リンク内に議論を限定する。(言い換えると、p を法とするゼロを除くすべての合同類は乗法逆元を持つ。これは合成数の法には当てはまらない。)[4]

この規約に従うと、剰余の乗法逆元は剰余、非剰余の乗法逆元は非剰余であり[5]、また、奇数の素数を法とすると剰余と非剰余が同数存在する[4]

素数を法とすると、2つの非剰余の積は剰余であり、非剰余と(非ゼロ)剰余の積は非剰余である[5]

平方剰余の相互法則への最初の補足[6]は、p ≡ 1 (mod 4) ならば −1 は p を法とする平方剰余であり、p ≡ 3 (mod 4) ならば −1 は p を法とする非剰余である。これは以下のことを意味する。

p ≡ 1 (mod 4) ならば p を法とする負の剰余(絶対値が同じで符号を反転したもの)は剰余であり、負の非剰余は非剰余である。

p ≡ 3 (mod 4) ならば p を法とする負の剰余は非剰余であり、負の非剰余は剰余である。

素数のべき乗の法

すべての奇数の平方数は ≡ 1 (mod 8) であり、それ故に ≡ 1 (mod 4) でもある。a が奇数で、m = 8, 16 またはそれよりも大きな 2 のべき乗の場合、am を法とする剰余であり、これは a ≡ 1 (mod 8) と同値である[7]

たとえば、mod 32 の奇数の平方数は

1テンプレート:Sup ≡ 15テンプレート:Sup ≡ 1
3テンプレート:Sup ≡ 13テンプレート:Sup ≡ 9
5テンプレート:Sup ≡ 11テンプレート:Sup ≡ 25
7テンプレート:Sup ≡ 9テンプレート:Sup ≡ 49 ≡ 17

そして偶数のものは

0テンプレート:Sup ≡ 8テンプレート:Sup ≡ 16テンプレート:Sup ≡ 0
2テンプレート:Sup ≡ 6テンプレート:Sup ≡ 10テンプレート:Sup ≡ 14テンプレート:Sup ≡ 4
4テンプレート:Sup ≡ 12テンプレート:Sup ≡ 16.

したがって、0 以外の数が 8, 16, … を法として剰余となるのは、その数が 4テンプレート:Sup(8n + 1) の形で表現できる場合でかつその場合に限る。

奇素数 p と互いに素な数 a が、p の任意のべき乗を法として剰余であるのは、p を法として剰余である場合でかつその場合に限る[8]

法が pテンプレート:Sup の場合、

pテンプレート:Supa
剰余である(kn の場合)
非剰余である(k < n が奇数の場合)
剰余である(k < n が偶数で a が剰余の場合)
非剰余である(k < n が偶数で a が非剰余の場合)[9]

ただし、2のべき乗と奇素数のべき乗では、ルールが異なることに注意せよ。

奇素数のべき乗 n = pテンプレート:Sup を法として、p と互いに素な剰余と非剰余の積は、p を法としたときと同じルールに従う。p は非剰余であり、一般に全ての剰余と非剰余に対して、その積の中の p のべき乗が n 以上ならば積がゼロとなることを除けば、同じルールに従う。

例えば 8 を法とすると、非剰余 3 と 5 の積は非剰余 7 であり、3, 5, 7 を互いに入れ替えた場合も同様である。実際、非剰余と1の乗法群はクラインの四元群を成す。

素数のべき乗以外の合成数の法

この場合の基本的な事実は

an を法として剰余である場合、aすべての素数のべき乗 pテンプレート:Supn を割り切る pテンプレート:Sup を法として剰余である。
an を法として非剰余である場合、a少なくとも1つの素数のべき乗 pテンプレート:Supn を割り切る pテンプレート:Sup を法として非剰余である。

合成数を法として、2つの剰余の積は剰余である。剰余と非剰余の積は、剰余、非剰余、またはゼロの場合がある。

たとえば、mod 6 の表から

1, 2, 3, 4, 5(太字は剰余)

剰余 3 と非剰余 5 の積は剰余 3 であるが、剰余 4と非剰余 2 の積は非剰余 2 である。

また、2つの非剰余の積は、剰余、非剰余、またはゼロのいずれかになる。

たとえば、mod 15 の表から

1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14(太字は剰余)

非剰余2と非剰余8の積は剰余1だが、非剰余2と非剰余7の積は非剰余14である。

この現象は、抽象代数の言葉でよく説明できる。法と互いに素な合同類は、 Z/nZ単元群と呼ばれる乗法に関するであり、平方数はその部分群となる。異なる非剰余は異なる剰余類に属している可能性があり、それらの積がどの類に属するかを予測する単純なルールは存在しない。素数を法として、平方数の部分群と単一の剰余類が存在するのみである。

たとえば15を法とする非剰余3と5の積、または非剰余5と剰余9の積、または2つの剰余9と10の積がすべてゼロであるという事実は、完全な環 Z/nZ の中にあることから生じ、この環は合成数 n零因子を持つ。

このため、一部の著者[10]は、平方剰余 a は平方数であるだけでなく、法 n互いに素でなければならないという定義を追加している。(an と互いに素となるのは、aテンプレート:Supn と互いに素である場合でかつその場合に限る。)

これで話は片付くが、本記事では剰余が法と互いに素であるという定義は用いない。

記法

ガウス[11]は、テンプレート:Mathテンプレート:Math を使用して、それぞれ剰余性と非剰余性を表現した。

たとえば、テンプレート:Mathテンプレート:Math、また テンプレート:Mathテンプレート:Math

この表記はコンパクトで、いくつかの目的には便利であるが[12][13]、より有用な表記は二次指標とも呼ばれるルジャンドル記号であり、すべての整数 a および正の奇素数 テンプレート:Mvar に対して次のように定義される。

(ap)={0 if p divides a+1 if aRp and p does not divide a1 if aNp and p does not divide a

数値 ≡ 0 (mod テンプレート:Mvar) を特別に扱う理由は2つある。1つは、これまで見てきたように、多くの公式や定理を簡単に説明できるためである。もう1つは、二次指標が乗算の下で、テンプレート:仮リンクから複素数への準同型であるためである。(npp)=0 とすると、その定義域をすべての整数の乗法半群に拡張することができる[14]

ガウスの表記法よりも優れている点の1つは、ルジャンドル記号が数式として使用できる関数であることである[15]。また、3次、4次、および高次の剰余に簡単に一般化できる[16]

ルジャンドル記号を テンプレート:Mvar が合成数である場合に一般化したものとしてヤコビ記号があるが、その特性はそれほど単純ではない。テンプレート:Mvar が合成数で、ヤコビ記号が (am)=1 ならば テンプレート:Math であり、テンプレート:Math2 ならば (am)=1 である。しかし、(am)=1 ならば、テンプレート:Mathテンプレート:Math のいずれなのかは判断できない。例えば、(215)=1(415)=1 に対して、テンプレート:Mathテンプレート:Math である。テンプレート:Mvar が素数の場合、ヤコビ記号とルジャンドル記号は同一のものとなる。

平方剰余の分布

平方剰余は n を法としてランダムなパターンが見られ、これは音響や暗号などの応用で利用されているが、一方でその分布は規則性も示す。

算術級数の素数に関するディリクレの定理平方剰余の定理、および中国の剰余定理 (CRT) を使うと、任意の M > 0 に対して、1, 2, …, M が全て素数 p を法として剰余であることが簡単に分かる。

例えば、p ≡ 1 (mod 8), (mod 12), (mod 5), (mod 28) ならば、平方剰余の定理から 2, 3, 5, 7 は素数 p を法として剰余であり、故に1〜10のすべての数字が剰余になる。CRTはこれが p ≡1 (mod 840) の場合と同じであり、ディリクレの定理はこの形式の素数の無限に存在すると主張する。これを満たす素数 p は 2521 が最小であり、実際に 1テンプレート:Sup ≡ 1, 1046テンプレート:Sup ≡ 2, 123テンプレート:Sup ≡ 3, 2テンプレート:Sup ≡ 4, 643テンプレート:Sup ≡ 5, 87テンプレート:Sup ≡ 6, 668テンプレート:Sup ≡ 7, 429テンプレート:Sup ≡ 8, 3テンプレート:Sup ≡ 9, 529テンプレート:Sup ≡ 10 (mod 2521) となる。

ディリクレの公式

こうした規則性の研究は、二進二次形式類数公式に関する(1830年代の)ディリクレの研究に由来する[17]q を素数、s を複素変数とし、ディリクレのL関数を次のように定義する。

L(s)=n=1(nq)ns

ディリクレは、q ≡ 3 (mod 3) のとき、

L(1)=πqn=1q1nq(nq)>0

となることを示した。したがってこの場合(素数 q ≡ 3 (mod 4))、平方剰余の和から 1, 2, …, q − 1 の範囲における非剰余の和を引いたものは負の数になる。

たとえば、11を法とすると

1, 2, 3, 4, 5, 6, 7, 8, 9, 10(太字は剰余)
1 + 4 + 9 + 5 + = 22, 2 + 6 + 7 + 8 + 10 = 33、そして差は −11 である。

実際、q > 3の場合、差は常に q の奇数倍になる[18]。対照的に、平方剰余の和から 1, 2, …, q − 1 の範囲における非剰余の和を引いたものはゼロであり、両方の和が q(q1)4 と等しいことを意味する。

ディリクレは素数 q ≡ 3 (mod 4) の場合も証明した。

L(1)=π(2(2q))qn=1q12(nq)>0.

これは、1, 2, …, テンプレート:Sfrac の範囲で、平方剰余が非剰余よりも多いことを意味する。

たとえば11を法とすると、6未満の剰余は4つ (1, 3, 4, 5) だが、非剰余は1つだけ (2) である。

これらの2つの定理に関する興味深い点は、これまでに知られているすべての証明が解析に基づくということである。どちらの定理についても、単純な証明あるいは直接の証明は発表されていない[19]

平方剰余の相互法則

pq が奇素数の場合、

「『pq を法とする平方剰余』と『qp を法とする平方剰余』が同値であること」は「pq の少なくとも1つが4を法として1に合同である」と同値である。

つまり、

(pq)(qp)=(1)p12q12

である。(pq)ルジャンドル記号である。

したがって、aa を割り切らない奇素数 p に対して、以下のようになる。

a ap を法として平方剰余になる同値条件 a ap を法として平方剰余になる同値条件
1 (すべての素数p −1 p ≡1 (mod 4)
2 p ≡1, 7 (mod 8) −2 p ≡1, 3 (mod 8)
3 p ≡1, 11 (mod 12) −3 p ≡1 (mod 3)
4 (すべての素数p −4 p ≡1 (mod 4)
5 p ≡1, 4 (mod 5) −5 p ≡1, 3, 7, 9 (mod 20)
6 p ≡1, 5, 19, 23 (mod 24) −6 p ≡1, 5, 7, 11 (mod 24)
7 p ≡1, 3, 9, 19, 25, 27 (mod 28) −7 p ≡1, 2, 4 (mod 7)
8 p ≡1, 7 (mod 8) −8 p ≡1, 3 (mod 8)
9 (すべての素数p −9 p ≡1 (mod 4)
10 p ≡1, 3, 9, 13, 27, 31, 37, 39, 43 (mod 40) −10 p ≡1, 7, 9, 11, 13, 19, 23, 37 (mod 40)
11 p ≡1, 5, 7, 9, 19, 26, 35, 37, 39, 43 (mod 44) −11 p ≡1, 3, 4, 5, 9 (mod 11)
12 p ≡1, 11 (mod 12) −12 p ≡1 (mod 3)

テンプレート:See also

剰余と非剰余のペア

素数 p を法として、テンプレート:Math2 かつ テンプレート:Math2、または テンプレート:Mathテンプレート:Math 等となるペア テンプレート:Math2 の数はほぼ同じである。より正確には[20][21]p を奇素数として、i, j = 0, 1 によって以下の集合を定義し

Aij={k{1,2,,p2}:(kp)=(1)i(k+1p)=(1)j},

以下のように αテンプレート:Sub を定義する。

αij=|Aij|.

つまり、以下のようになる。

αテンプレート:Sub は剰余に続く剰余の数
αテンプレート:Sub は非剰余に続く剰余の数
αテンプレート:Sub は剰余に続く非剰余の数
αテンプレート:Sub は非剰余に続く非剰余の数

すると、p ≡ 1 (mod4) の場合、

α00=p54,α01=α10=α11=p14

であり、p ≡ 3 (mod4) の場合、

α01=p+14,α00=α10=α11=p34.

である。

例:(太字は剰余)

mod 17

1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16
Aテンプレート:Sub = {1,8,15},
Aテンプレート:Sub = {2,4,9,13},
Aテンプレート:Sub = {3,7,12,14},
Aテンプレート:Sub = {5,6,10,11}.

mod 19

1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18
Aテンプレート:Sub = {4、5、6、16},
Aテンプレート:Sub = {1,7,9,11,17},
Aテンプレート:Sub = {3,8,10,15},
Aテンプレート:Sub = {2,12,13,14}.

ガウス (1828)[22]は、p ≡ 1 (mod 4) ならば xテンプレート:Sup ≡ 2 (mod p) という命題が p = aテンプレート:Sup + 64 bテンプレート:Sup と同値であることを証明し、この種の数え上げを導入した。

ポリア=ヴィノグラドフの不等式 (Pólya-;Vinogradov inequality)

連続値 a に対する (ap) の値はコイントスのような確率変数で擬似的に表現できる[23]。具体的には、ポリアテンプレート:仮リンク (Vinogradov)[24]が、1918年に(独立して)q をとする非主(non-principal)ディリクレ指標 χ(n) と任意の整数 M, N に対して、ランダウの記号を用いて以下のように表現できることを証明した。

|n=M+1M+Nχ(n)|=O(qlogq)

ここで

χ(n)=(nq)

とすると、長さ N の任意の区間における q を法とする平方剰余の数が以下のように表せる。

12N+O(qlogq)

以下の式の証明は容易[25]である。

|n=M+1M+N(nq)|<qlogq

実際[26]

|n=M+1M+N(nq)|<4π2qlogq+0.41q+0.61

となる。

モンゴメリー(Montgomery)とテンプレート:仮リンク(Vaughan)は1977年にこれを改良し、一般化されたリーマン予想が真である場合、以下の式が成り立つことを示した。

|n=M+1M+Nχ(n)|=O(qloglogq)

この結果から本質的に改良されたわけではないが、シューアは1918年に

maxN|n=1N(nq)|>12πq

を示し、テンプレート:仮リンク(Paley)は1932年に

maxN|n=1N(dn)|>17dloglogd

を満たす d > 0 が無限に存在することを示した。

最小二次非剰余

p を法とする最小平方剰余は明らかに1である。最小二次非剰余の大きさ n(p) の問題は難しいが、常に素数である。上記ポリア=ヴィノグラードフの不等式は O(plogp) を与える。無条件での最良推定値は、任意の テンプレート:Math2 に対して n(p) ≪ pテンプレート:Sup というものであり、テンプレート:仮リンク (character sum) に関するバージェス (Burgess) の推定から得られた。一般化されたリーマン予想の仮定下では、アンケニー (Ankeny) が n(p) ≪ (log p)テンプレート:Sup を得た[27]。リニック (Linnik) は、n(p) > Xテンプレート:Sup となる X より小さい p の数は、ε に依存する定数によって制限されることを示した[28]

奇素数 p を法とする最小二次非剰余は次の通り。

2, 2, 3, 2, 2, 3, 2, 5, 2, 3, 2, 3, 2, 5, 2, 2, 2, 2, 7, 5, 3, 2, 3, 5, 23, 2, 2, 3, 3, 2, 3, 2, 2, 3, 2, 2, 5, 2, 2, 2, 7, 5, 2, 3, 2, 3, 2, 2, 37, 7, 2, 3, 5, 2, 3, 2, 3, 2, 2, 2, 11, 5, 2, 2, 5, 2, 2, 3, 7, 3, 2, 2, …テンプレート:OEIS

二次超過

p を奇素数とする。二次超過 (Quadratic excess) E(p) は、範囲 (0, テンプレート:Sfrac) の平方剰余の数から 範囲 (テンプレート:Sfrac, p) の平方剰余の数を引いたものである(テンプレート:OEIS)。p ≡ 1 mod 4 となる p では、−1 が平方剰余であり、剰余は テンプレート:Math2 に対して対称であるので過剰はゼロである。p ≡ 3 mod 4 となる p では、超過 E は常に正である[29]

平方根を見つけることの複雑さ

つまり、数値 a と法 n が与えられたときに、以下のタスクがどれほど難しいか、ということである。

  1. xテンプレート:Supa (mod n) の解 x が存在するかどうかの判定
  2. 存在すると仮定して、その具体的な計算

ここでは、法が素数と合成数の場合で重要な違いが明らかになる。素数 p を法として、平方剰余 a は 1 + (a|p) 個の根を持つ(つまり、a N p の場合は根なし、a ≡ 0 (mod p) の場合は1個、a R p で (a, p) = 1 の場合は2個。)

一般に、もし法が合成数 n であれば、n を異なる素数のべき乗の積として表現したときに、その最初のものを法として根の数が nテンプレート:Sub 個、次のものを法として根の数が nテンプレート:Sub 個…と続けていくと、n を法として nテンプレート:Subnテンプレート:Sub… 個の根が存在する。

素数のべき乗を法とする解を組み合わせて n を法とする解を作る理論的な方法は、中国の剰余定理と呼ばれ、効率的なアルゴリズムで実装できる[30]

例えば:

xテンプレート:Sup ≡ 6 (mod 15) を解く。
xテンプレート:Sup ≡ 6 (mod 3) は1つの解 x = 0, xテンプレート:Sup ≡ 6 (mod 5) が2つの解 x = 1, 4 を持つ。
したがって、15を法として2つの解 x = 6, 9 が存在する。
xテンプレート:Sup ≡ 4 (mod 15) を解く。
xテンプレート:Sup ≡ 4 (mod 3) は2つの解 x = 1, 2, xテンプレート:Sup ≡ 4 (mod 5) が2つの解 x = 2, 3 を持つ。
したがって、15を法として4つの解 x = 2, 7, 8, 13 が存在する。
xテンプレート:Sup ≡ 7 (mod 15) を解く。
xテンプレート:Sup ≡ 7 (mod 3) は2つの解 x = 1, 2 を持ち、xテンプレート:Sup ≡ 7 (mod 5) は解が存在しない。
したがって、15を法として解が存在しない。

素数または素数べき乗の法

まず、法 n が素数である場合、ルジャンドル記号 (an)ユークリッドの互除法のバリエーション[31]またはオイラーの規準を使用して、すばやく計算できる。-1の場合、解は存在しない。

次に (an)=1 と仮定すると、n ≡ 3 (mod 4) の場合 ラグランジュは、解が以下の式によって与えられることを発見した。

x±a(n+1)/4(modn)

そしてルジャンドルは、n ≡ 5 (mod 8) の場合の同様の解を発見した[32]

x{±a(n+3)/8(modn) if a is a quartic residue modulo n±a(n+3)/82(n1)/4(modn) if a is a quartic non-residue modulo n

しかし、素数 n ≡ 1 (mod 8) に対しては、既知の公式が存在しない。テンプレート:仮リンク[33](1891年)とテンプレート:仮リンク[34]は、それぞれすべての素数の法に使える効率的なアルゴリズムを発見した。どちらのアルゴリズムも n を法とする平方非剰余を見つける必要があり、そのための効率的な既知の決定論的アルゴリズムは存在しない。しかし、1 から n の間の数の半分は非剰余であるため、非剰余が見つかるまで、ランダムに数 x を選んでルジャンドル記号 (xn) を計算すると、すぐに非剰余が求まる。このアルゴリズムをわずかに変形したものがテンプレート:仮リンクである。

n素数のべき乗 n = pテンプレート:Sup である場合、解は p を法として見つかるので、ヘンゼルの補題またはガウスのアルゴリズムを使用して n を法とする解に「持ち上げて」得られる[8]

合成数の法

n が素数のべき乗に素因数分解される場合、解は上記の通りである。

n≢2(mod4)テンプレート:仮リンク(Kronecker symbol)が(an)=1 であれば、解は存在しない。n ≡ 2 (mod 4) で (an/2)=1 である場合も、解は存在しない。「 n≢2(mod4) かつ (an)=1」または「 n ≡ 2 (mod 4) かつ (an/2)=1」 ならば、解が存在する場合としない場合がある。

n の完全な素因数分解が不明な場合、「(an)=1 かつ n≢2(mod4)」または「n ≡ 2 (mod 4) かつ (an/2)=1」ならば、問題は n素因数分解と等価であることが分かっている(つまり、どちらかの問題の効率的に解ければ、もう一方を効率的に解くことができる)。

上記の議論は、n の素因数を知ることでどのくらい根を効率的に見つけることができるかを示している。合成数を法とする平方根を見つけるための効率的なアルゴリズムがあったとしよう。テンプレート:仮リンク (congruence of squares) の記事では、テンプレート:Math2 である二つの数 x, y の求め方について説明しており、テンプレート:Math2 であれば n は十分効率的に素因数分解される。ここで乱数を生成し、n を法として乱数を二乗し、効率的な平方根アルゴリズムで根を見つける。これを、最初に二乗した値(または n を法とする負の数)と等しくない数を返すまで繰り返した後に、平方合同で説明したアルゴリズムを用いる。素因数分解アルゴリズムの効率性は、この根探索器の特性そのものに依存するが(たとえば、すべての根を返すか?最小の根だけを返すか?ランダムな根を返すか?)、これは効率的である[35]

n を法として a が平方剰余であるか非剰余であるか( テンプレート:Math2 または テンプレート:Math2 と表される)の判定は、ルジャンドル記号を計算することで、素数 n に対して効率的に行うことができる。ただし、n が合成数の場合はテンプレート:仮リンク (quadratic residuosity problem) となり、これは素因数分解ほどテンプレート:仮リンクかは分かっていないが、かなり難しいと考えられている。

一方、ある上限値 c より小さい x の解があるかどうかを判定する場合、この問題はNP完全である[36]。ただし、これは c をパラメータとするテンプレート:仮リンク問題である。

一般に、合成数 n を法として a が平方剰余であるかどうかを判定するには、次の定理を使用できる: [37]

テンプレート:Math2とし、テンプレート:Math2とする。テンプレート:Math2 が解けることと以下の条件は同値である:

注:この定理を使うに当たって本質的には n の素因数分解が既知である必要がある。また、テンプレート:Math2 の場合、合同関係は テンプレート:Math2 に還元することができるが、(m が平方数でない限り)これは平方剰余の問題の範疇を超える。

平方剰余の数

n = 1, 2, 3, … に対する n を法とする平方剰余の数のリストは、以下の通りである。

1, 2, 2, 2, 3, 4, 4, 3, 4, 6, 6, 4, 7, 8, 6, 4, 9, 8, 10, 6, 8, 12, 12, 6, 11, 14, 11, 8, 15, 12, 16, 7, 12, 18, 12, 8, 19, 20, 14, 9, 21, 16, 22, 12, 12, 24, 24, 8, 22, 22, …(テンプレート:OEIS

n を法とする平方数の数を数える式は、スタングル (Stangl) によって与えられる[38]

平方剰余の応用

音響

サウンドディフューザーは、原始根や平方剰余などの数論的概念に基づいている[39]

グラフ理論

テンプレート:仮リンク (Paley graph) は、各素数 p ≡ 1 (mod 4) がテンプレート:仮リンク(conference graph)の無限族を形成する稠密な無向グラフであり、これによって対称テンプレート:仮リンク (conference matrix) の無限族が導かれる。

ペイリー双グラフ (Paley digraph) はペイリーグラフを有向グラフとしたもので、素数は p ≡ 3 (mod 4) を用い、反対称カンファレンス行列が導かれる。

これらのグラフの作成には、平方剰余が用いられる。

暗号

大きな合成数 n を法とする数値の平方根を見つけることは、素因数分解(これはテンプレート:仮リンクと広く信じられている)に相当するという事実は、Rabin暗号紛失転送プロトコルなどの暗号化スキームの構築に使用されている。テンプレート:仮リンクは、テンプレート:仮リンクの基礎を成す。

離散対数も暗号化で用いられる同様の問題である。

素数判定

オイラーの規準は、p が素数であるルジャンドル記号 (a|p) の公式である。p が合成数の場合、公式は (a|p) を正しく計算できる場合もできない場合もある。与えられた数 n が素数であるか合成数であるかについてのソロベイ-シュトラッセン素数判定法は、ランダムな a を選び、ユークリッドの互除法の修正[40]とオイラーの基準を使用して (a|n) を計算する[41]。結果が一致しない場合、n は合成数である。一致する場合、n は合成数または素数である。合成数 n に対して、2, 3, …, n − 1 の範囲中、少なくとも半分の a では「n は合成数」と判定されるが、素数 n に対しては何も出力しない。多くの異なる a を試しても n が合成数と判定されなければ、n確率的素数と呼ばれる。

ミラー–ラビン素数判定法も同じ原理に基づく。この判定法は決定論的なバージョンがあるが、これが正しく判定できるかの証明は一般化されたリーマン仮説 (GRH) 依存する。この判定法の出力は、「n は完全に合成数」または「n は素数かGRHは偽である」のいずれかである。合成数 n に対して出力が後者の場合、GRHは偽になり、数学の多くの分野に影響を及ぼす可能性がある。

素因数分解

Disquisitiones Arithmeticae[42]§VIで、ガウスは平方剰余と平方剰余の相互法則を使用する2つの素因数分解アルゴリズムについて説明している。

最新の素因数分解アルゴリズムのいくつか(テンプレート:仮リンク (Dixon's algorithm)、テンプレート:仮リンク (continued fraction method)、二次ふるい法 (quadratic sieve)、テンプレート:仮リンク (number field sieve) など)は、素因数分解につながるテンプレート:仮リンクを探す中で、(素因数分解される数を法とする)小さい平方剰余を生成する。数体ふるいは、既知の最も高速な汎用素因数分解アルゴリズムである。

平方剰余の表

次の表(テンプレート:OEIS)は、法 1から75までの平方剰余のリストである(テンプレート:Colorは、n と互いに素ではないことを意味する)。(n と互いに素な平方剰余については テンプレート:Oeis を、非ゼロな平方剰余については テンプレート:Oeis を参照せよ。)

n n の平方剰余 n n の平方剰余 n n の平方剰余
1 0 26 テンプレート:Color, 1, 3, テンプレート:Color, 9, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, 17, テンプレート:Color, 23, 25 51 テンプレート:Color, 1, 4, テンプレート:Color, 13, テンプレート:Color, 16, テンプレート:Color, 19, テンプレート:Color, 25, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, 43, 49
2 テンプレート:Color, 1 27 テンプレート:Color, 1, 4, 7, テンプレート:Color, 10, 13, 16, 19, 22, 25 52 テンプレート:Color, 1, テンプレート:Color, 9, テンプレート:Color, テンプレート:Color, テンプレート:Color, 17, 25, 29, テンプレート:Color, テンプレート:Color, テンプレート:Color, 49
3 テンプレート:Color, 1 28 テンプレート:Color, 1, テンプレート:Color, テンプレート:Color, 9, テンプレート:Color, テンプレート:Color, 25 53 テンプレート:Color, 1, 4, 6, 7, 9, 10, 11, 13, 15, 16, 17, 24, 25, 28, 29, 36, 37, 38, 40, 42, 43, 44, 46, 47, 49, 52
4 テンプレート:Color, 1 29 テンプレート:Color, 1, 4, 5, 6, 7, 9, 13, 16, 20, 22, 23, 24, 25, 28 54 テンプレート:Color, 1, テンプレート:Color, 7, テンプレート:Color, テンプレート:Color, 13, テンプレート:Color, 19, テンプレート:Color, 25, テンプレート:Color, テンプレート:Color, 31, テンプレート:Color, テンプレート:Color, 37, テンプレート:Color, 43, テンプレート:Color, 49, テンプレート:Color
5 テンプレート:Color, 1, 4 30 テンプレート:Color, 1, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, 19, テンプレート:Color, テンプレート:Color, テンプレート:Color 55 テンプレート:Color, 1, 4, テンプレート:Color, 9, テンプレート:Color, 14, テンプレート:Color, 16, テンプレート:Color, テンプレート:Color, 26, 31, 34, 36, テンプレート:Color, テンプレート:Color, 49
6 テンプレート:Color, 1, テンプレート:Color, テンプレート:Color 31 テンプレート:Color, 1, 2, 4, 5, 7, 8, 9, 10, 14, 16, 18, 19, 20, 25, 28 56 テンプレート:Color, 1, テンプレート:Color, テンプレート:Color, 9, テンプレート:Color, 25, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color
7 テンプレート:Color, 1, 2, 4 32 テンプレート:Color, 1, テンプレート:Color, 9, テンプレート:Color, 17, 25 57 テンプレート:Color, 1, 4, テンプレート:Color, 7, テンプレート:Color, 16, テンプレート:Color, テンプレート:Color, 25, 28, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, 43, テンプレート:Color, 49, テンプレート:Color, 55
8 テンプレート:Color, 1, テンプレート:Color 33 テンプレート:Color, 1, テンプレート:Color, 4, テンプレート:Color, テンプレート:Color, テンプレート:Color, 16, テンプレート:Color, 25, テンプレート:Color, 31 58 テンプレート:Color, 1, テンプレート:Color, 5, テンプレート:Color, 7, 9, 13, テンプレート:Color, テンプレート:Color, テンプレート:Color, 23, テンプレート:Color, 25, テンプレート:Color, テンプレート:Color, テンプレート:Color, 33, テンプレート:Color, 35, テンプレート:Color, テンプレート:Color, テンプレート:Color, 45, 49, 51, テンプレート:Color, 53, テンプレート:Color, 57
9 テンプレート:Color, 1, 4, 7 34 テンプレート:Color, 1, テンプレート:Color, テンプレート:Color, テンプレート:Color, 9, 13, 15, テンプレート:Color, テンプレート:Color, テンプレート:Color, 19, 21, 25, テンプレート:Color, テンプレート:Color, テンプレート:Color, 33 59 テンプレート:Color, 1, 3, 4, 5, 7, 9, 12, 15, 16, 17, 19, 20, 21, 22, 25, 26, 27, 28, 29, 35, 36, 41, 45, 46, 48, 49, 51, 53, 57
10 テンプレート:Color, 1, テンプレート:Color, テンプレート:Color, テンプレート:Color, 9 35 テンプレート:Color, 1, 4, 9, 11, テンプレート:Color, テンプレート:Color, 16, テンプレート:Color, テンプレート:Color, 29, テンプレート:Color 60 テンプレート:Color, 1, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, 49
11 テンプレート:Color, 1, 3, 4, 5, 9 36 テンプレート:Color, 1, テンプレート:Color, テンプレート:Color, 13, テンプレート:Color, 25, テンプレート:Color 61 テンプレート:Color, 1, 3, 4, 5, 9, 12, 13, 14, 15, 16, 19, 20, 22, 25, 27, 34, 36, 39, 41, 42, 45, 46, 47, 48, 49, 52, 56, 57, 58, 60
12 テンプレート:Color, 1, テンプレート:Color, テンプレート:Color 37 テンプレート:Color, 1, 3, 4, 7, 9, 10, 11, 12, 16, 21, 25, 26, 27, 28, 30, 33, 34, 36 62 テンプレート:Color, 1, テンプレート:Color, テンプレート:Color, 5, 7, テンプレート:Color, 9, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, 19, テンプレート:Color, 25, テンプレート:Color, テンプレート:Color, テンプレート:Color, 33, 35, テンプレート:Color, テンプレート:Color, 39, テンプレート:Color, 41, 45, 47, 49, テンプレート:Color, 51, テンプレート:Color, 59
13 テンプレート:Color, 1, 3, 4, 9, 10, 12 38 テンプレート:Color, 1, テンプレート:Color, 5, テンプレート:Color, 7, 9, 11, テンプレート:Color, 17, テンプレート:Color, テンプレート:Color, 23, テンプレート:Color, 25, テンプレート:Color, テンプレート:Color, テンプレート:Color, 35, テンプレート:Color 63 テンプレート:Color, 1, 4, テンプレート:Color, テンプレート:Color, 16, テンプレート:Color, 22, 25, テンプレート:Color, テンプレート:Color, 37, 43, 46, テンプレート:Color, 58
14 テンプレート:Color, 1, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, 9, 11 39 テンプレート:Color, 1, テンプレート:Color, 4, テンプレート:Color, 10, テンプレート:Color, テンプレート:Color, 16, 22, 25, テンプレート:Color, テンプレート:Color, テンプレート:Color 64 テンプレート:Color, 1, テンプレート:Color, 9, テンプレート:Color, 17, 25, 33, テンプレート:Color, 41, 49, 57
15 テンプレート:Color, 1, 4, テンプレート:Color, テンプレート:Color, テンプレート:Color 40 テンプレート:Color, 1, テンプレート:Color, 9, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color 65 テンプレート:Color, 1, 4, 9, テンプレート:Color, 14, 16, テンプレート:Color, テンプレート:Color, 29, テンプレート:Color, テンプレート:Color, 36, テンプレート:Color, テンプレート:Color, 49, 51, テンプレート:Color, 56, 61, 64
16 テンプレート:Color, 1, テンプレート:Color, 9 41 テンプレート:Color, 1, 2, 4, 5, 8, 9, 10, 16, 18, 20, 21, 23, 25, 31, 32, 33, 36, 37, 39, 40 66 テンプレート:Color, 1, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, 25, テンプレート:Color, 31, テンプレート:Color, テンプレート:Color, テンプレート:Color, 37, テンプレート:Color, テンプレート:Color, テンプレート:Color, 49, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color
17 テンプレート:Color, 1, 2, 4, 8, 9, 13, 15, 16 42 テンプレート:Color, 1, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, 25, テンプレート:Color, テンプレート:Color, テンプレート:Color, 37, テンプレート:Color 67 テンプレート:Color, 1, 4, 6, 9, 10, 14, 15, 16, 17, 19, 21, 22, 23, 24, 25, 26, 29, 33, 35, 36, 37, 39, 40, 47, 49, 54, 55, 56, 59, 60, 62, 64, 65
18 テンプレート:Color, 1, テンプレート:Color, 7, テンプレート:Color, テンプレート:Color, 13, テンプレート:Color 43 テンプレート:Color, 1, 4, 6, 9, 10, 11, 13, 14, 15, 16, 17, 21, 23, 24, 25, 31, 35, 36, 38, 40, 41 68 テンプレート:Color, 1, テンプレート:Color, テンプレート:Color, 9, 13, テンプレート:Color, テンプレート:Color, 21, 25, テンプレート:Color, 33, テンプレート:Color, 49, テンプレート:Color, 53, テンプレート:Color, テンプレート:Color
19 テンプレート:Color, 1, 4, 5, 6, 7, 9, 11, 16, 17 44 テンプレート:Color, 1, テンプレート:Color, 5, 9, テンプレート:Color, テンプレート:Color, テンプレート:Color, 25, テンプレート:Color, テンプレート:Color, 37 69 テンプレート:Color, 1, テンプレート:Color, 4, テンプレート:Color, テンプレート:Color, テンプレート:Color, 13, 16, テンプレート:Color, テンプレート:Color, 25, テンプレート:Color, 31, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, 49, 52, テンプレート:Color, 55, 58, 64
20 テンプレート:Color, 1, テンプレート:Color, テンプレート:Color, 9, テンプレート:Color 45 テンプレート:Color, 1, 4, テンプレート:Color, テンプレート:Color, 16, 19, テンプレート:Color, 31, 34, テンプレート:Color, テンプレート:Color 70 テンプレート:Color, 1, テンプレート:Color, 9, 11, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, 29, テンプレート:Color, テンプレート:Color, テンプレート:Color, 39, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, 51, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color
21 テンプレート:Color, 1, 4, テンプレート:Color, テンプレート:Color, テンプレート:Color, 16, テンプレート:Color 46 テンプレート:Color, 1, テンプレート:Color, 3, テンプレート:Color, テンプレート:Color, テンプレート:Color, 9, テンプレート:Color, 13, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, 25, テンプレート:Color, 27, 29, 31, テンプレート:Color, 35, テンプレート:Color, 39, 41 71 テンプレート:Color, 1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 15, 16, 18, 19, 20, 24, 25, 27, 29, 30, 32, 36, 37, 38, 40, 43, 45, 48, 49, 50, 54, 57, 58, 60, 64
22 テンプレート:Color, 1, 3, テンプレート:Color, 5, 9, テンプレート:Color, テンプレート:Color, テンプレート:Color, 15, テンプレート:Color, テンプレート:Color 47 テンプレート:Color, 1, 2, 3, 4, 6, 7, 8, 9, 12, 14, 16, 17, 18, 21, 24, 25, 27, 28, 32, 34, 36, 37, 42 72 テンプレート:Color, 1, テンプレート:Color, テンプレート:Color, テンプレート:Color, 25, テンプレート:Color, テンプレート:Color, テンプレート:Color, 49, テンプレート:Color, テンプレート:Color
23 テンプレート:Color, 1, 2, 3, 4, 6, 8, 9, 12, 13, 16, 18 48 テンプレート:Color, 1, テンプレート:Color, テンプレート:Color, テンプレート:Color, 25, テンプレート:Color, テンプレート:Color 73 テンプレート:Color, 1, 2, 3, 4, 6, 8, 9, 12, 16, 18, 19, 23, 24, 25, 27, 32, 35, 36, 37, 38, 41, 46, 48, 49, 50, 54, 55, 57, 61, 64, 65, 67, 69, 70, 71, 72
24 テンプレート:Color, 1, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color 49 テンプレート:Color, 1, 2, 4, 8, 9, 11, 15, 16, 18, 22, 23, 25, 29, 30, 32, 36, 37, 39, 43, 44, 46 74 テンプレート:Color, 1, 3, テンプレート:Color, 7, 9, テンプレート:Color, 11, テンプレート:Color, テンプレート:Color, 21, 25, テンプレート:Color, 27, テンプレート:Color, テンプレート:Color, 33, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, テンプレート:Color, 41, テンプレート:Color, テンプレート:Color, 47, テンプレート:Color, 49, 53, テンプレート:Color, テンプレート:Color, 63, テンプレート:Color, 65, 67, テンプレート:Color, 71, 73
25 テンプレート:Color, 1, 4, 6, 9, 11, 14, 16, 19, 21, 24 50 テンプレート:Color, 1, テンプレート:Color, テンプレート:Color, 9, 11, テンプレート:Color, テンプレート:Color, 19, 21, テンプレート:Color, テンプレート:Color, テンプレート:Color, 29, 31, テンプレート:Color, テンプレート:Color, 39, 41, テンプレート:Color, テンプレート:Color, 49 75 テンプレート:Color, 1, 4, テンプレート:Color, テンプレート:Color, 16, 19, テンプレート:Color, テンプレート:Color, テンプレート:Color, 31, 34, テンプレート:Color, テンプレート:Color, 46, 49, テンプレート:Color, テンプレート:Color, 61, 64, テンプレート:Color, テンプレート:Color
平方剰余
x 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
xテンプレート:Sup 1 4 9 16 25 36 49 64 81 100 121 144 169 196 225 256 289 324 361 400 441 484 529 576 625
mod 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
mod 2 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
mod 3 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1
mod 4 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
mod 5 1 4 4 1 0 1 4 4 1 0 1 4 4 1 0 1 4 4 1 0 1 4 4 1 0
mod 6 1 4 3 4 1 0 1 4 3 4 1 0 1 4 3 4 1 0 1 4 3 4 1 0 1
mod 7 1 4 2 2 4 1 0 1 4 2 2 4 1 0 1 4 2 2 4 1 0 1 4 2 2
mod 8 1 4 1 0 1 4 1 0 1 4 1 0 1 4 1 0 1 4 1 0 1 4 1 0 1
mod 9 1 4 0 7 7 0 4 1 0 1 4 0 7 7 0 4 1 0 1 4 0 7 7 0 4
mod 10 1 4 9 6 5 6 9 4 1 0 1 4 9 6 5 6 9 4 1 0 1 4 9 6 5
mod 11 1 4 9 5 3 3 5 9 4 1 0 1 4 9 5 3 3 5 9 4 1 0 1 4 9
mod 12 1 4 9 4 1 0 1 4 9 4 1 0 1 4 9 4 1 0 1 4 9 4 1 0 1
mod 13 1 4 9 3 12 10 10 12 3 9 4 1 0 1 4 9 3 12 10 10 12 3 9 4 1
mod 14 1 4 9 2 11 8 7 8 11 2 9 4 1 0 1 4 9 2 11 8 7 8 11 2 9
mod 15 1 4 9 1 10 6 4 4 6 10 1 9 4 1 0 1 4 9 1 10 6 4 4 6 10
mod 16 1 4 9 0 9 4 1 0 1 4 9 0 9 4 1 0 1 4 9 0 9 4 1 0 1
mod 17 1 4 9 16 8 2 15 13 13 15 2 8 16 9 4 1 0 1 4 9 16 8 2 15 13
mod 18 1 4 9 16 7 0 13 10 9 10 13 0 7 16 9 4 1 0 1 4 9 16 7 0 13
mod 19 1 4 9 16 6 17 11 7 5 5 7 11 17 6 16 9 4 1 0 1 4 9 16 6 17
mod 20 1 4 9 16 5 16 9 4 1 0 1 4 9 16 5 16 9 4 1 0 1 4 9 16 5
mod 21 1 4 9 16 4 15 7 1 18 16 16 18 1 7 15 4 16 9 4 1 0 1 4 9 16
mod 22 1 4 9 16 3 14 5 20 15 12 11 12 15 20 5 14 3 16 9 4 1 0 1 4 9
mod 23 1 4 9 16 2 13 3 18 12 8 6 6 8 12 18 3 13 2 16 9 4 1 0 1 4
mod 24 1 4 9 16 1 12 1 16 9 4 1 0 1 4 9 16 1 12 1 16 9 4 1 0 1
mod 25 1 4 9 16 0 11 24 14 6 0 21 19 19 21 0 6 14 24 11 0 16 9 4 1 0

関連項目

脚注

テンプレート:Reflist

参考文献

Disquisitiones Arithmeticaeは、ガウスの古典ラテン語から英語ドイツ語に翻訳されている。ドイツ語版には、数論に関するガウスのすべての論文が含まれている(平方剰余のすべての証明、ガウス和の符号の決定、四次剰余の相互法則の研究、および未発表のノート)。

外部リンク

  1. Lemmemeyer, Ch.1
  2. Lemmermeyer, pp.6-8, p.16 ff
  3. Gauss, DA, art.94
  4. 4.0 4.1 Gauss, DA, art.96
  5. 5.0 5.1 Gauss, DA, art.98
  6. Gauss, DA, art 111
  7. Gauss, DA, art.103
  8. 8.0 8.1 Gauss, DA, art.101
  9. Gauss, DA, art.102
  10. e.g., テンプレート:Harvnb
  11. Gauss, DA, art.131
  12. e.g. Hardy and Wright use it
  13. Gauss, DA, art 230 ff.
  14. This extension of the domain is necessary for defining L functions.
  15. See Legendre symbol#Properties of the Legendre symbol for examples
  16. Lemmermeyer, pp.111-end
  17. テンプレート:Harvnb. These are classical results.
  18. テンプレート:Harvnb, (conjectured by Jacobi, proved by Dirichlet)
  19. テンプレート:Harvnb
  20. Lemmermeyer, p.29 ex.1.22; cf pp.26-27, Ch.10
  21. Crandall & Pomerance, ex 2.38, pp.106-108
  22. Gauss, Theorie der biquadratischen Reste, Erste Abhandlung (pp.511-533 of the Untersuchungen über hohere Arithmetik)
  23. Crandall & Pomerance, ex 2.38, pp.106-108 discuss the similarities and differences. For example, tossing n coins, it is possible (though unlikely) to get n/2 heads followed by that many tails. V-P inequality rules that out for residues.
  24. テンプレート:Harvnb, (proof of P-V, (in fact big-O can be replaced by 2); journal references for Paley, Montgomery, and Schur)
  25. Planet Math: Proof of Pólya-Vinogradov Inequality in external links. The proof is a page long and only requires elementary facts about Gaussian sums
  26. Pomerance & Crandall, ex 2.38 pp.106-108. result from T. Cochrane, "On a trigonometric inequality of Vinogradov", J. Number Theory, 27:9-16, 1987
  27. テンプレート:Cite book
  28. テンプレート:Cite book
  29. テンプレート:Cite book
  30. テンプレート:Harvnb; it requires O(logテンプレート:Sup m) steps where m is the number of primes dividing n.
  31. テンプレート:Harvnb; computing (an) requires O(log a log n) steps
  32. Lemmermeyer, p.29
  33. テンプレート:Harvnb; the algorithm requires O(logテンプレート:Supn) steps.
  34. テンプレート:Harvnb; the algorithm requires O(logテンプレート:Sup n) steps and is also nondetermisitic.
  35. Crandall & Pomerance, ex.6.5 & 6.6, p.273
  36. テンプレート:Harvnb
  37. テンプレート:Cite book
  38. テンプレート:Citation
  39. テンプレート:Cite web
  40. テンプレート:Harvnb
  41. テンプレート:Harvnb; Euler's criterion requires O(logテンプレート:Sup n) steps
  42. Gauss, DA, arts 329-334