소수 판별법과 에라토스테네스의 체Permalink

소수 판별법Permalink

aa가 합성수라면 a=bc(1<b,c<a)a=bc(1 < b,c < a) 꼴이여야 한다.

wlog)  bcwlog) ~~ b \le c 일 때, b2bc=ab^2 \le bc = a 이므로 bab \le \sqrt{a} 이다.

산술의 기본정리에 의해 bb11개 이상의 소인수 pp를 갖고, pbp \le b이기 때문에 pbpap \mid b \Rightarrow p \mid a

따라서 aapap \le \sqrt{a}를 만족하는 소인수 pp를 항상 갖는다.

이는 nn이 소수인지를 판단하거나 약수를 구함에 있어 항상 n\sqrt{n}까지의 수만 본다면 된다는 이점을 주고 PS에서 필수 지식이다.

에라토스테네스의 체Permalink

앞서 살펴본 소수 판별법을 사용하여 2nM2 \le n \le M 인 정수 nn 들에 대해 nn이 소수인지 모두 판별하고 싶을 때, piMp_i \le \sqrt{M}인 소수들 pip_i에 대해 2pixM2p_i \le x \le Mxx들은 소수가 아니라고 체크하는 방법을 사용한다.

소수의 분포Permalink

무한히 많은 소수가 존재한다 by 유클리드

증명Permalink

소수의 집합이 유한하다고 하자.

{p1,p2,p3,,pn} \{p_1, p_2, p_3, \cdots, p_n\}

P=p1p2pn+1P=p_1p_2\cdots p_n+1 이라 하자.

산술의 기본 정리에 의해 pPp \mid Ppp가 존재한다. (pp는 소수)

pp1p2pnp \mid p_1 p_2 \cdots p_n 이고 pPp \mid P 이므로, pPp1p2pn=1p \mid P-p_1p_2 \cdots p_n=1

이는 p1p \le 1 이 되어 모든 소수는 22이상이 되야해서 모순이다.

소수는 무한하다. \square

소수가 무한함을 보이는 수열Permalink

다음과 같은 수열을 보자.

n1=2n2=n1+1n3=n1n2+1nk=n1n2nk1+1 \begin{aligned} n_1&=2\\ n_2&=n_1+1\\ n_3&=n_1n_2+1\\ \vdots\\ n_k&=n_1n_2\cdots n_{k-1}+1 \end{aligned}

여기서 nin_i 끼리는 서로소이다.

d=gcd(ni,nk)  (i<k)d=gcd(n_i, n_k)~~(i < k) 라 하자.

dnid \mid n_i 이므로 dn1n2nink1d \mid n_1n_2\cdots n_i \cdots n_{k-1}이다.

dnkd \mid n_k이므로, dnkn1n2nink1=1d \mid n_k-n_1n_2\cdots n_i \cdots n_{k-1}=1 이 되어서

gcd(ni,nk)=1gcd(n_i, n_k)=1 이다.

이러한 순서대로 무한개의 수열이 만들어지기 때문에 소수는 무한하다. \square

베르트랑 공준Permalink

베르트랑. 22보다 큰 정수 nn2n2n사이에는 적어도 하나의 소수가 존재한다.

이 추측은 PS에서 가끔 어케풀지? 싶은 문제의 시간복잡도를 증명해내는데 쓰이기도 한다.

이 추측은 완벽히 증명되지 못했지만, 쳬비셰프에 의해 이 추측이 사용되어

pn<2n  (n2) p_n < 2^n~~(n \ge 2)

임이 보여졌다.

귀납적으로 보자.

p2=3<22p_2=3 < 2^2

베르트랑의 추측으로 2n<p<2n+12^n < p < 2^{n+1}인 소수가 존재하고,

이로부터 pn+1<2n+1p_{n+1} < 2^{n+1} 의 소수가 존재함이 보인다.

Comments