オイラー積(オイラーせき、英: Euler product)はディリクレ級数を素数に関する総乗の形で表した無限積である。ディリクレ級数の一種のリーマンのゼータ関数についてこの無限積が成り立つことを証明した18世紀の数学者レオンハルト・オイラーの名前にちなむ。ディリクレ級数は以下の式の左辺で定義され、右辺がオイラー積表示である。
a(n) は n に関する乗法的関数、p は全ての素数にわたり、変数 s は複素数である。このような表示が成り立つためには a(n) が完全乗法的関数、すなわち、 a(1) = 1, a(mn) = a(m) a(n) を全ての自然数 m, n について満たさなければならない。一般に複素数 s の実部 Re(s) に対して ならば上記の級数(または無限積)が絶対収束するようなある実数の定数 C が存在することが知られている。
a(n) = 1 とおいたとき
となる。これがリーマンゼータ関数のオイラー積表示である。すなわち
これはRe(s) > 1 のとき収束する。
リーマンゼータ関数のオイラー積は1737年にオイラーによって発見された。まずゼータ関数 ζ(s) は s の実部が1より大きいとき、次のように定義される。
ここで両辺に最小の素数2の-s乗 1/2s をかけると
となり、辺々引くと
この両辺に今度は2の次の素数3の-s乗 1/3s をかけると
となり、再び辺々引くと
以下同様に次々と素数の-s乗を両辺にかけて前の式から引くという操作を続けると右辺の 1/1s 以外の項は(素因数分解の一意性によって)消えるので
したがってゼータ関数は以下の形で表現される。
上記の式に形式的に s=1 を代入すると
ここで左辺は調和級数であり、正の無限大に発散するので右辺も同様に発散すると考えられる。このことから素数の個数は有限ではないことが導かれる。なぜならもし素数が有限個なら右辺はある有限の値に収束するからである。
ゼータ関数については上記のように
である。いっぽうリウヴィル関数 λ(n) については
メビウス関数 μ(n) では
や左辺の分子の絶対値をとった
という無限積が知られている。