数論(number theory) (整数論 とも)は、数について研究する分野。
代数学に限らず、解析学・幾何学にも関わりがあるため、
代数的整数論
解析的整数論
数論幾何学
といった分野がある
代数的整数論¶
「代数的整数」を研究する分野。(代数的に整数論を扱うわけではない)
例
はの解 → 代数的整数
は1次方程式の解 → 代数的整数
ガウス整数¶
整数と虚数単位を用いたという形の複素数は、2次方程式
の解になっている → 代数的整数である
このような複素数を ガウス整数 と呼ぶ。整数はすべてとした場合のガウス整数であるため、 ガウス整数は整数の拡張 である。
解析的整数論¶
解析的整数論は、複素解析やフーリエ解析などの解析的な手法で整数論を研究する分野。(「解析的整数」があるわけではない)
素数定理¶
実際、非常にゆっくりであるが1に収束していっていることがわかる
def pi(n: int) -> int:
"""エラトステネスの篩をもとに、n以下の素数の個数を数える"""
# 1. 長さn+1の配列を用意し、0番目と1番目の要素にFalseを、2番目以降すべてにTrueを入れる(0,1は素数でないため)
is_primes = [True] * (n + 1)
is_primes[0] = is_primes[1] = False
# 2. 2からsqrt(n)までの数について、その数が素数なら、その倍数はFalse(素数でない)とする
for i in range(2, int(n**0.5) + 1):
if is_primes[i]:
for j in range(i * i, n + 1, i):
is_primes[j] = False
return sum(is_primes)import numpy as np
results = []
for k in range(1, 7):
n = 10 ** k
n_prime = pi(n)
x = n/np.log(n)
results.append({"n": n, "π(x)": n_prime, "x/log(x)": round(x, 1), "π(x)/{x/log(x)}": round(n_prime/x, 3)})
import pandas as pd
pd.DataFrame(results)Loading...
ゼータ関数¶
偶数のに対してはある程度きれいな形の無理数で表せることが知られているが、奇数のに対しては一般に無理数であるかどうかもわからない。が無理数であることは1978年にAperyによって証明された。
になるようなのことを、ゼータ関数の 零点 (れいてん)という。負の偶数がゼータ関数の零点であることは知られていた(自明な零点という)が、これら以外の零点(非自明な零点)にどのようなものがあるのかは長年の問いだった。見つかったものはすべて実部がだった、つまり
という形だった。これはリーマン予想という難問であり、現在も未解決のまま残っている。
数論幾何学¶
代数幾何学を用いて整数論を研究する分野。
フェルマーの最終定理¶
有名な難問。
admoniton - Unknown Directive
admoniton - Unknown Directive$n$ を 3 以上の自然数とする。このとき、 $$ x^n+y^n=z^n $$ を満たす自然数 $(x, y, z)$ は存在しない。
フェルマーが17世紀に本のページの隅に命題だけ残したもの。1995年にワイルズが証明。