§A4.8オイラー関数 φ とその乗法性

最終更新

オイラー関数φ(n)\varphi(n)とは、11以上nn以下の整数のうち、nnと互いに素なものの個数のことです。 たとえばφ(1)=1\varphi(1)=1です。また、11以上66以下で66と互いに素な整数は1,51,5の2個なので、φ(6)=2\varphi(6)=2です。

1 オイラー関数

定義 1.1 (オイラー関数). 正の整数nnに対して、11以上nn以下の整数のうち、nnと互いに素なものの個数をφ(n)\varphi(n)と書く。関数φ\varphiをオイラー関数 (Euler totient function) という。

例 1.2.gcd⁡(1,1)=1\gcd(1,1)=1なので、φ(1)=1\varphi(1)=1である。11以上66以下で66と互いに素な整数は1,51,5なので、φ(6)=2\varphi(6)=2である。

2 素数べきでの値

命題 2.1.ppを素数、kkを正の整数とすると、

φ(pk)=pk−pk−1=pk−1(p−1)\varphi(p^k)=p^k-p^{k-1}=p^{k-1}(p-1)

が成り立つ。特に、φ(p)=p−1\varphi(p)=p-1である。

証明.§A4.2 定理 2.2により、pkp^kの素因数はppだけである。したがって、整数がpkp^kと互いに素でないことと、その整数がppの倍数であることは同値である。11以上pkp^k以下のppの倍数はp,2p,…,pk−1pp,2p,\ldots,p^{k-1}pのpk−1p^{k-1}個なので、

φ(pk)=pk−pk−1\varphi(p^k)=p^k-p^{k-1}

となる。k=1k=1とすると、φ(p)=p−1\varphi(p)=p-1を得る。▨

3 互いに素な二数についての乗法性

命題 3.1.m,nm,nを互いに素な正の整数とすると、

φ(mn)=φ(m)φ(n)\varphi(mn)=\varphi(m)\varphi(n)

が成り立つ。

証明.m=1m=1またはn=1n=1の場合は、φ(1)=1\varphi(1)=1から等式が従う。以下ではm,n≥2m,n\ge2とする。§A4.6 補題 2.1により、法mnmnの剰余類と、法mmの剰余類と法nnの剰余類の組は一対一に対応する。整数xxがmnmnと互いに素であることは、xxがm,nm,nの両方と互いに素であることと同値である。実際、§A4.2 定理 2.2により、mnmnの素因数はmmの素因数とnnの素因数を合わせたものである。また、x≡r(modm)x\equiv r\pmod mならばx,rx,rとmmの公約数は一致するので、mmと互いに素かどうかは剰余類によって定まる。法nnでも同じことが成り立つ。

したがって、mnmnと互いに素な剰余類は、mmと互いに素な剰余類とnnと互いに素な剰余類の組に一対一に対応する。それぞれの個数を数えると、φ(mn)=φ(m)φ(n)\varphi(mn)=\varphi(m)\varphi(n)となる。▨

注意 3.2.m,nm,nを正の整数、xxを整数とする。xxがmnmnと互いに素であることと、xxがm,nm,nの両方と互いに素であることの同値性には、m,nm,nが互いに素であるという仮定は要らない。乗法性の証明では、剰余類と二つの剰余類の組との一対一対応に、その仮定を用いている。

4 素因数分解による計算公式

命題 4.1.n≥2n\ge2を整数とし、相異なる素数p1,…,prp_1,\ldots,p_rと正の整数k1,…,krk_1,\ldots,k_rによってn=p1k1⋯prkrn=p_1^{k_1}\cdots p_r^{k_r}と素因数分解する。このとき

φ(n)=∏i=1rpiki−1(pi−1)=n∏p∣n(1−1p)\varphi(n)=\prod_{i=1}^r p_i^{k_i-1}(p_i-1) =n\prod_{p\mid n}\left(1-\frac1p\right)

が成り立つ。最後の積は、nnの相異なる素因数ppにわたる積である。

証明. 相異なる素数のべきは互いに素なので、命題 3.1を繰り返し用いると

φ(n)=∏i=1rφ(piki)\varphi(n)=\prod_{i=1}^r\varphi(p_i^{k_i})

を得る。命題 2.1によって各因子をpiki−1(pi−1)=piki(1−1/pi)p_i^{k_i-1}(p_i-1)=p_i^{k_i}(1-1/p_i)と書くと、二つの表示が従う。▨

例 4.2.360=23⋅32⋅5360=2^3\cdot3^2\cdot5なので、命題 4.1より

φ(360)=360⋅12⋅23⋅45=96\varphi(360)=360\cdot\frac12\cdot\frac23\cdot\frac45=96

である。

例 4.3.71007^{100}を360360で割った余りを求める。gcd⁡(7,360)=1\gcd(7,360)=1かつφ(360)=96\varphi(360)=96なので、§A4.7 定理 2.2より796≡1(mod360)7^{96}\equiv1\pmod{360}である。100=96+4100=96+4より

7100≡74=2401=6⋅360+241≡241(mod360)7^{100}\equiv7^4=2401=6\cdot360+241\equiv241\pmod{360}

であり、求める余りは241241である。

問題 4.4.φ(n)=8\varphi(n)=8を満たす正の整数nnをすべて求めよ。

解答.

φ(1)=1\varphi(1)=1なのでn>1n>1である。命題 4.1より、nnの素因数ppに対してp−1p-1はφ(n)=8\varphi(n)=8を割り切る。88の正の約数は1,2,4,81,2,4,8なので、ppの候補は2,3,5,92,3,5,9である。ppは素数だから、p=2,3,5p=2,3,5に限られる。

33または55の指数が22以上なら、同じ公式によりφ(n)\varphi(n)がそれぞれ33または55の倍数となり、φ(n)=8\varphi(n)=8に反する。したがって

n=2a3b5c,a≥0,b,c∈{0,1}n=2^a3^b5^c,\qquad a\ge0,\quad b,c\in\{0,1\}

と書くことができる。a=0a=0またはa=1a=1のときはφ(2a)=1\varphi(2^a)=1なので、乗法性によりφ(n)=2b+2c\varphi(n)=2^{b+2c}である。b+2c=3b+2c=3を満たすのはb=c=1b=c=1の場合だけであり、n=15,30n=15,30を得る。

a≥2a\ge2のときはφ(n)=2a−1+b+2c\varphi(n)=2^{a-1+b+2c}なので、a−1+b+2c=3a-1+b+2c=3となる。(b,c)=(0,0),(1,0),(0,1)(b,c)=(0,0),(1,0),(0,1)の場合は、それぞれa=4,3,2a=4,3,2となり、n=16,24,20n=16,24,20を得る。(b,c)=(1,1)(b,c)=(1,1)の場合はa=1a=1となるので、a≥2a\ge2に反する。五つの整数はいずれも公式によりφ(n)=8\varphi(n)=8を満たす。よって解は

n=15,16,20,24,30n=15,16,20,24,30

である。▨

5 約数にわたるオイラー関数の和

命題 5.1. 正の整数nnに対して、

∑d∣nφ(d)=n\sum_{d\mid n}\varphi(d)=n

が成り立つ。和はnnの正の約数ddにわたる和である。

証明.1≤k≤n1\le k\le nを満たす整数kkに対し、g=gcd⁡(k,n)g=\gcd(k,n)とおく。k/nk/nを約分した既約分数は(k/g)/(n/g)(k/g)/(n/g)であり、その分母d=n/gd=n/gはnnの正の約数である。

逆に、nnの正の約数ddと、1≤u≤d1\le u\le dかつgcd⁡(u,d)=1\gcd(u,d)=1を満たす整数uuを取る。k=(n/d)uk=(n/d)uとおくと1≤k≤n1\le k\le nであり、gcd⁡(k,n)=n/d\gcd(k,n)=n/dなので、k/nk/nを約分するとu/du/dを得る。したがって、約分後の分母がddである分数はちょうどφ(d)\varphi(d)個である。もとのnn個の分数を約分後の分母によって分けて数えると、∑d∣nφ(d)=n\sum_{d\mid n}\varphi(d)=nとなる。▨

例 5.2.66の正の約数は1,2,3,61,2,3,6なので、

φ(1)+φ(2)+φ(3)+φ(6)=1+1+2+2=6\varphi(1)+\varphi(2)+\varphi(3)+\varphi(6)=1+1+2+2=6

となる。

6 例題

レベル1 — オイラー関数

次のオイラー関数の値を求めよ。

解法の型φ(n)=n(1−1p)(1−1q)\varphi(n)=n\left(1-\dfrac1p\right)\left(1-\dfrac1q\right)(nnの異なる素因数p,qp,qについて)

例 6.1.

φ(18)\varphi(18)

答66

注意18=2⋅3218=2\cdot3^{2}なのでφ(18)=18(1−12)(1−13)=6\varphi(18)=18\left(1-\dfrac1{2}\right)\left(1-\dfrac1{3}\right)=6

例 6.2.

φ(99)\varphi(99)

答6060

注意99=32⋅1199=3^{2}\cdot11なのでφ(99)=99(1−13)(1−111)=60\varphi(99)=99\left(1-\dfrac1{3}\right)\left(1-\dfrac1{11}\right)=60

例 6.3.

φ(21)\varphi(21)

答1212

注意21=7⋅321=7\cdot3なのでφ(21)=21(1−17)(1−13)=12\varphi(21)=21\left(1-\dfrac1{7}\right)\left(1-\dfrac1{3}\right)=12

例 6.4.

φ(55)\varphi(55)

答4040

注意55=5⋅1155=5\cdot11なのでφ(55)=55(1−15)(1−111)=40\varphi(55)=55\left(1-\dfrac1{5}\right)\left(1-\dfrac1{11}\right)=40

例 6.5.

φ(33)\varphi(33)

答2020

注意33=11⋅333=11\cdot3なのでφ(33)=33(1−111)(1−13)=20\varphi(33)=33\left(1-\dfrac1{11}\right)\left(1-\dfrac1{3}\right)=20

例 6.6.

φ(63)\varphi(63)

答3636

注意63=7⋅3263=7\cdot3^{2}なのでφ(63)=63(1−17)(1−13)=36\varphi(63)=63\left(1-\dfrac1{7}\right)\left(1-\dfrac1{3}\right)=36

例 6.7.

φ(363)\varphi(363)

答220220

注意363=112⋅3363=11^{2}\cdot3なのでφ(363)=363(1−111)(1−13)=220\varphi(363)=363\left(1-\dfrac1{11}\right)\left(1-\dfrac1{3}\right)=220

例 6.8.

φ(20)\varphi(20)

答88

注意20=5⋅2220=5\cdot2^{2}なのでφ(20)=20(1−15)(1−12)=8\varphi(20)=20\left(1-\dfrac1{5}\right)\left(1-\dfrac1{2}\right)=8

例 6.9.

φ(35)\varphi(35)

答2424

注意35=5⋅735=5\cdot7なのでφ(35)=35(1−15)(1−17)=24\varphi(35)=35\left(1-\dfrac1{5}\right)\left(1-\dfrac1{7}\right)=24

例 6.10.

φ(6)\varphi(6)

答22

注意6=2⋅36=2\cdot3なのでφ(6)=6(1−12)(1−13)=2\varphi(6)=6\left(1-\dfrac1{2}\right)\left(1-\dfrac1{3}\right)=2

7 演習

レベル1 — オイラー関数

次のオイラー関数の値を求めよ。

解法の型φ(n)=n(1−1p)(1−1q)\varphi(n)=n\left(1-\dfrac1p\right)\left(1-\dfrac1q\right)(nnの異なる素因数p,qp,qについて)

問題 7.1.

φ(12)\varphi(12)
解答.

答44

注意12=3⋅2212=3\cdot2^{2}なのでφ(12)=12(1−13)(1−12)=4\varphi(12)=12\left(1-\dfrac1{3}\right)\left(1-\dfrac1{2}\right)=4▨

問題 7.2.

φ(22)\varphi(22)
解答.

答1010

注意22=2⋅1122=2\cdot11なのでφ(22)=22(1−12)(1−111)=10\varphi(22)=22\left(1-\dfrac1{2}\right)\left(1-\dfrac1{11}\right)=10▨

問題 7.3.

φ(484)\varphi(484)
解答.

答220220

注意484=112⋅22484=11^{2}\cdot2^{2}なのでφ(484)=484(1−111)(1−12)=220\varphi(484)=484\left(1-\dfrac1{11}\right)\left(1-\dfrac1{2}\right)=220▨

問題 7.4.

φ(242)\varphi(242)
解答.

答110110

注意242=112⋅2242=11^{2}\cdot2なのでφ(242)=242(1−111)(1−12)=110\varphi(242)=242\left(1-\dfrac1{11}\right)\left(1-\dfrac1{2}\right)=110▨

問題 7.5.

φ(20)\varphi(20)
解答.

答88

注意20=5⋅2220=5\cdot2^{2}なのでφ(20)=20(1−15)(1−12)=8\varphi(20)=20\left(1-\dfrac1{5}\right)\left(1-\dfrac1{2}\right)=8▨

問題 7.6.

φ(36)\varphi(36)
解答.

答1212

注意36=22⋅3236=2^{2}\cdot3^{2}なのでφ(36)=36(1−12)(1−13)=12\varphi(36)=36\left(1-\dfrac1{2}\right)\left(1-\dfrac1{3}\right)=12▨

問題 7.7.

φ(14)\varphi(14)
解答.

答66

注意14=2⋅714=2\cdot7なのでφ(14)=14(1−12)(1−17)=6\varphi(14)=14\left(1-\dfrac1{2}\right)\left(1-\dfrac1{7}\right)=6▨

問題 7.8.

φ(175)\varphi(175)
解答.

答120120

注意175=7⋅52175=7\cdot5^{2}なのでφ(175)=175(1−17)(1−15)=120\varphi(175)=175\left(1-\dfrac1{7}\right)\left(1-\dfrac1{5}\right)=120▨

問題 7.9.

φ(55)\varphi(55)
解答.

答4040

注意55=5⋅1155=5\cdot11なのでφ(55)=55(1−15)(1−111)=40\varphi(55)=55\left(1-\dfrac1{5}\right)\left(1-\dfrac1{11}\right)=40▨

問題 7.10.

φ(10)\varphi(10)
解答.

答44

注意10=5⋅210=5\cdot2なのでφ(10)=10(1−15)(1−12)=4\varphi(10)=10\left(1-\dfrac1{5}\right)\left(1-\dfrac1{2}\right)=4▨

問題 7.11.

φ(33)\varphi(33)
解答.

答2020

注意33=3⋅1133=3\cdot11なのでφ(33)=33(1−13)(1−111)=20\varphi(33)=33\left(1-\dfrac1{3}\right)\left(1-\dfrac1{11}\right)=20▨

問題 7.12.

φ(63)\varphi(63)
解答.

答3636

注意63=7⋅3263=7\cdot3^{2}なのでφ(63)=63(1−17)(1−13)=36\varphi(63)=63\left(1-\dfrac1{7}\right)\left(1-\dfrac1{3}\right)=36▨

問題 7.13.

φ(245)\varphi(245)
解答.

答168168

注意245=72⋅5245=7^{2}\cdot5なのでφ(245)=245(1−17)(1−15)=168\varphi(245)=245\left(1-\dfrac1{7}\right)\left(1-\dfrac1{5}\right)=168▨

問題 7.14.

φ(18)\varphi(18)
解答.

答66

注意18=32⋅218=3^{2}\cdot2なのでφ(18)=18(1−13)(1−12)=6\varphi(18)=18\left(1-\dfrac1{3}\right)\left(1-\dfrac1{2}\right)=6▨

問題 7.15.

φ(441)\varphi(441)
解答.

答252252

注意441=32⋅72441=3^{2}\cdot7^{2}なのでφ(441)=441(1−13)(1−17)=252\varphi(441)=441\left(1-\dfrac1{3}\right)\left(1-\dfrac1{7}\right)=252▨

前提記事