Poulet Number

Poulet Number의 정의는 다음과 같습니다.

합성수 $n$이 $$ 2^{n - 1} \equiv 1 \pmod{n} $$ 을 만족하면, $n$을 Poulet Number라 한다.
Poulet Number의 다른 말로 Sarrus Number, psp(2), 한국어로는 "밑을 2로 하는 페르마 유사소수" 등...의 명칭이 쓰이나 아직 제대로 정립 되진 못한 듯 합니다.
(이 후로는 편의상 "풀렛 수"로 쓰겠습니다.)
페르마의 소정리 가 "모든 소수 $p$에 대하여 $a$가 $p$와 서로소이면 $a^{p - 1} \equiv 1 \pmod{p}$이다." 인 점과 비교해보면, 풀렛 수는 $a = 2$일 때 페르마의 소정리를 통과해버리는 합성수들의 집합임을 알 수 있습니다.


합성수 $n$이 $n$과 서로소인 모든 $a$에 대해 $a^{n - 1} \equiv 1 \pmod{n}$을 만족시키면 $n$을 카마이클 수 라고 합니다. 풀렛 수가 일반화 된 것이 카마이클 수라고 볼 수 있습니다.
이 풀렛 수 들이나 카마이클 수 들이 유한했다면 인류가 소수 판별을 할 때 $2^{n - 1} \equiv 1 \pmod{n}$ 인지만 검사하고, 유한한 예외 집단에 들어가는지 검사만 하면 될 일이었습니다.
하지만 풀렛 수 들도, 카마이클 수 들도 무한하다는게 증명되어있어 밀러-라빈 소수 판별법 같은 복잡한 소수 판별법을 써야합니다.
풀렛 수에 대해 알려져 있는 특징들은 다음과 같습니다.

풀렛 수 관련 주요 특징들

1. $n$이 풀렛 수라면 $2^{n} - 1$도 풀렛 수이다.
2. $5$ 이상의 모든 소수 $p$에 대하여 $\frac{4^{p} - 1}{3}$과 $\frac{4^{p} + 1}{5}$는 풀렛 수이다.
3. $x$ 이하의 풀렛 수의 개수를 $P_{2}(x)$라 할 때, 충분히 큰 수인 $x_{0}$보다 큰 모든 $x$에 대하여 $e^{{\left(\ln{x}\right)}^{\frac{5}{12}}} < P_{2}(x) < x e^{-\frac{\ln{x} \ln{\ln{\ln{x}}}}{2 \ln{\ln{x}}}}$이다. ($e$는 자연로그의 밑 $e$ , $\ln x$는 자연로그함수 )
4. $n > 19$이면 $n$보다 크고 $n^{2}$보다 작은 풀렛 수가 무조건 존재한다. (Rotkiewicz Theorem)
5. 임의의 양수 $\epsilon$에 대해 $z > 4^{ \left( e^{ \frac{5}{2} + \frac{2}{\epsilon}} \right)}$이면 $z$보다 크고 $z^{1 + \epsilon}$보다 작은 풀렛 수가 무조건 존재한다.

3번 성질을 조금 간단하게 풀면 넉넉하게 $\ln{x} < P_{2}(x) < \frac{x}{\ln{x}}$ 정도라고 생각하시면 편합니다. 3번의 범위는 약간 더 좁은 (= 좀 더 정확한) 범위입니다.
소수 정리 에 의해 $x$ 이하의 소수의 개수는 $\frac{x}{\ln x}$개 임이 알려져있으므로 소수의 개수보다 적은 것을 알 수 있습니다.
또한, 3번 성질에서 $x_{k}$를 잘 잡으면 $x_{k} < x$인 모든 $x$에 대해 ${(\ln{x})}^{k} < P_{2}(x) < \frac{x}{{(\ln{x})}^{k}}$임을 보일 수 있습니다. 따라서 점근적으로는 소수의 개수보다 훨씬 적은 것을 알 수 있습니다.
이는 $P_{2}(x) < x e^{-\frac{\ln{x} \ln{\ln{\ln{x}}}}{2 \ln{\ln{x}}}}$인 $x_{0}$가 존재하고, $e^{-\frac{\ln{x} \ln{\ln{\ln{x}}}}{2 \ln{\ln{x}}}} < \frac{1}{{(\ln{x})}^{k}}$인 $x_{k}$를 잡을 수 있어서 생기는 일입니다.
그렇게 되면 $P_{2}(x) < \frac{1}{{(\ln{x})}^{k}}$는 $\max(x_{0}, x_{k})$에서 성립합니다.


이 개념을 코딩 문제 풀 때 몇 번 쓴 적이 있는데, 그 중 하나는 백준 25821번 - Palindromic Primes 을 풀 때였습니다. (펠린드롬이면서 풀렛 수인 경우가 범위내에서 1번 뿐이어서 예외를 전처리하면 빠른 소수판별이 가능합니다.)