1 素数と合成数
2以上の整数pが素数であるとは、正の約数が1とpだけであることをいいます。2以上の整数で素数でないものを合成数といいます。たとえば2,3,5,7,11,13は素数であり、4,6,8,9は合成数です。整数を素数の積として表すことを素因数分解といい、その積に現れる素数を素因子といいます。
2 素因数分解の存在と一意性
素因数分解の一意性には、次のユークリッドの補題を用います。
補題 2.1.pを素数、a,bを整数とする。p∣abならば、p∣aまたはp∣bが成り立つ。
証明.p∤aとする。pの正の約数は1,pだけであるので、gcd(p,a)=1である。§A4.3 補題 1.1により、px+ay=1を満たす整数x,yが存在する。両辺にbを掛けるとpbx+aby=bとなる。p∣abであるので左辺の各項はpで割り切れ、p∣bが成り立つ。▨
定理 2.2.2以上の整数は、素数の積として表すことができる。この表示は、因子の順序を除いて一意である。
証明.n≥2とし、nより小さい2以上の整数はすべて素数の積として表されると仮定する。nが素数ならば、n自身が求める表示である。nが合成数ならば、n=abを満たす整数a,bを2≤a,b<nとなるように取ることができる。帰納法の仮定によりa,bはともに素数の積として表されるので、nも同じ形で表される。n=2の場合は素数の場合に含まれるので、帰納法によって存在が従う。
n=p1⋯pr=q1⋯qsを二つの素数の積による表示とし、r,s≥1とする。補題 2.1を繰り返し用いると、p1はいずれかのqjを割り切る。qjは素数でありp1>1であるので、p1=qjである。因子の順序を入れ替え、両辺からこの共通因子を一つずつ除く。残った積にも同じ議論を繰り返すことができる。一方の因子だけが先に尽きると、1が素数の空でない積に等しくなるが、そのような積は2以上である。したがって両辺の因子は同時に尽き、二つの表示は順序を除いて一致する。▨
定理 2.2を算術の基本定理といいます。
例 2.3.60=22×3×5である。算術の基本定理により、60の素数の積による表示には、2が二つ、3と5が一つずつ現れる。
3 エラトステネスのふるい
整数N≥2に対し、N以下の素数を列挙する方法を、エラトステネスのふるいといいます。
- 2からNまでの整数を並べる。
- まだ消しておらず素数として確定していない最小の数をpとする。p2>Nなら終了する。p2≤Nならpを素数として確定し、pの倍数のうちp自身を除く数をすべて消す。
- 未確定の数が残っていれば項目 (2)を繰り返し、残っていなければ終了する。
終了時に消されずに残った数が、N以下の素数です。定理 2.2により、合成数m≤Nの最小の素因子qについてm=qk、k≥qと書くことができるので、q2≤m≤Nです。したがってN以下の素数の倍数を消せば合成数はすべて消され、p2>Nで終了してよいことになります。
4 約数の個数と総和
命題 4.1.k≥1とし、相異なる素数p1,…,pkと正の整数e1,…,ekによって、N=p1e1⋯pkekと表されているとする。Nの正の約数は、0≤fi≤eiを満たす整数fiを用いてp1f1⋯pkfkと一意に表される。正の約数の個数と総和は、それぞれ
i=1∏k(ei+1),i=1∏k(1+pi+⋯+piei)である。
証明.dがNの正の約数なら、正の整数mを用いてN=dmと書くことができる。定理 2.2により、dに現れる素数はpiのいずれかであり、その指数はeiを超えない。逆に0≤fi≤eiなら、p1e1−f1⋯pkek−fkを掛けるとNになるので、p1f1⋯pkfkはNの約数である。指数の異なる組から同じ約数が得られることは、素因数分解の一意性によって起こらない。各fiにはei+1通りの選び方があるので、約数の個数は選び方の個数の積である。総和の式の積を分配法則で展開すると、各因子からpifiを一つずつ選んだ積が一度ずつ現れる。各項は正の約数と一対一に対応するので、この展開の値が約数の総和である。▨
例 4.2.360=23×32×5なので、正の約数の個数は(3+1)(2+1)(1+1)=24、総和は(1+2+4+8)(1+3+9)(1+5)=15×13×6=1170である。1の正の約数は1だけなので、約数の個数と総和はいずれも1である。
5 最大公約数と最小公倍数
二つの正の整数に共通する正の倍数のうち、最小のものを最小公倍数と呼びます。
命題 5.1.A,Bを正の整数とする。p1,…,pkをAまたはBの素因子を重複なく並べたものとし、0以上の整数ai,biを用いてA=∏i=1kpiai、B=∏i=1kpibiと表す。現れない素数の指数は0とする。A=B=1のときはk=0とし、因子のない積は1とする。最大公約数dと最小公倍数Lは
d=i=1∏kpimin(ai,bi),L=i=1∏kpimax(ai,bi)であり、dL=ABが成り立つ。
証明.A,Bの一方が1なら、最大公約数は1、最小公倍数は他方の数であり、表示された式が成り立つ。A,B≥2とする。命題 4.1により、公約数に現れるpiの指数はai,biの両方以下である。したがって、すべての正の公約数は表示されたdを割り切り、d自身も公約数である。よってdは最大公約数である。定理 2.2により、正の公倍数には各piが少なくともmax(ai,bi)個現れる。したがって、すべての正の公倍数は表示されたLの倍数であり、L自身も公倍数なので最小である。min(ai,bi)+max(ai,bi)=ai+biであるので、dL=ABが成り立つ。▨
問題 5.2. 最大公約数が12、最小公倍数が180である正の整数の組(A,B)を、A≤Bのもとですべて求めよ。
解答.
A=12u、B=12vと書くと、u,vは正の整数であり、u≤vである。u,vに1より大きい公約数hがあれば、12hがA,Bの公約数となるので、gcd(u,v)=1である。命題 5.1によりAB=12×180なので、uv=15となる。u≤vを満たす正の因数の組は(1,15)と(3,5)だけで、いずれも互いに素である。したがって候補は(12,180)と(36,60)である。素因数分解から両方の組の最大公約数は12であり、積は12×180なので、同じ命題により最小公倍数は180である。よって求める組は(12,180)と(36,60)で尽くされる。▨
6 素数の無限性
証明. 素数が有限個しかないと仮定し、すべての素数をp1,p2,…,pnとする。2は素数であるのでn≥1である。N=p1p2⋯pn+1とおく。Nは各piで割ると1余るので、どのpiによっても割り切れない。一方、N≥2であるので、定理 2.2によりNの素因子qが存在する。qは素数であるのに、列挙したどのpiとも異なる。これはp1,…,pnがすべての素数であるという仮定に矛盾する。したがって素数は無限に存在する。▨
例 6.2. 素数の積に1を加えた数が素数になるとは限らない。たとえば、
2×3×5×7×11×13+1=30031=59×509は合成数である。
閑話休題:連続する合成数と双子素数 任意の整数N≥2に対して、N!=1×2×⋯×Nとおく。N!+2, N!+3, …, N!+NはN−1個の連続した合成数である。実際、2≤k≤NならN!+kはkで割り切れ、N!+k>k>1であるので合成数である。Nを大きく取ることにより、連続した合成数の列を任意の長さにすることができる。
(3,5),(11,13),(41,43)のように差が2の素数の組を双子素数と呼ぶ。双子素数が無限に存在するかという問題は、百年以上未解決である。
2013年に張益唐(チャン・イタン)は、差が7000万以下の素数の組が無限に存在することを証明した。その後、数学者たちの共同オンライン作業であるポリマス・プロジェクトによって上限が縮められ、差が246以下の素数の組が無限に存在するという結果も得られた。差がちょうど2の双子素数が無限に存在するという予想は、依然として未解決である。