次に紹介するのは、かのレオンハルト・オイラーによる証明。 これはかなり毛色が異なる。
証明
素数が有限の 個しか存在しないと仮定し、それらを
とする。
各素数
に対し、等比数列の和の公式より
である。右辺を のすべてについて掛け合わせた値
を考えると、これは有限の値の有限個の積であるから、 は有限の値である。
一方、左辺の等比数列の和の方を使って表すと
である。これを展開すると、各項は の0乗以上を掛け合わせたものとなり、そのすべての組み合わせが現れる。すなわち
ただしこれは、0以上の整数値をとる数列 のすべての組み合わせにわたって和をとることを意味する。
任意の自然数は素数の積として表せる(証明は後述。ここで1は素数の0乗の積と見なす)ことと、素数は のみであること(この証明での仮定)から、任意の自然数は
(各
は0以上の整数)と表せる。したがって、任意の自然数
について、上記の
の総和表現の中に
が現れる。よって
右辺は調和級数であり、無限大に発散する(証明は後述)。したがって は無限大に発散する。これは
が有限の値であることと矛盾する。
以上より、素数が有限個しか存在しないという仮定が誤りであり、素数は無限に存在する。(証明終)
無限数列の積を使うので直感的に理解するのが少し難しいし、これで厳密に示せているのか不安になるが、素因数分解や調和級数と結びつけているのはおもしろい。
これを背理法を使わずに証明するにはどうするか? 単に、 個の素数
をとったときに
は有限の値になるから調和級数と同じにはならず、すべての自然数を分母にするには任意の
より大きな個数の素数が必要になることを言えばいいだけか。
上記の証明で、「任意の自然数が素数の積として表せること」と、「調和級数が無限大に発散すること」を使っている。これらの証明を書いておく。
任意の自然数が素数の積として表せることの証明(Wikipediaより)
素数の積として表せない自然数が存在するとし、そのような最小の数を とする。1は素数の0乗として表せ、素数はそれ自身で素数の積になっているので、
は合成数である。したがってある自然数
によって
と表せる。
は
より小さいので、ともに素数の積で表せる。するとそれらの積である
も素数の積で表せることになり矛盾する。
以上よりこのような
は存在せず、任意の自然数は素数の積として表せる。
※リンク先のWikipediaは算術の基本定理のページであり、この定理では各自然数に対して素数の積(素因数分解)が1通りしかないことも証明しているが、素数が無限に存在することの証明にはそこまでは必要ない。
これを背理法を使わずに証明するには? たとえば数学的帰納法で以下のようにやればいいと思う。
任意の自然数が素数の積として表せることを証明する。
(1) のときは明らかに成り立つ。
(2) で成り立つとする。
が素数なら、それ自身が素数の積であるから
でも成り立つ。
が合成数なら、
は
より小さい自然数の積で表すことができ、仮定よりそれらは素数の積で表せるから、
も素数の積で表すことができる。
したがって、
でも成り立つ。
以上より、任意の自然数 は素数の積として表せる。
調和級数が無限大に発散することの証明
調和級数の分母の自然数を2の累乗で区切って表せば
最後の総和は無限大に発散するから、調和級数も無限大に発散する。