現実と数学の区別が付かない

数学ネタのブログです

離散フーリエ変換と中国剰余定理

今日紹介するのは離散フーリエ変換は中国剰余定理としても理解できるというお話です。この見方をすると,合成積が離散フーリエ変換で積に化ける理由がよく分かります。

離散フーリエ変換

N を正整数とし,\zeta_N=e^{\frac{2\pi i}{N}}1 の原始N乗根をします。

長さ N複素数\vec{a}=(a_0,\dots,a_{N-1})\vec{A}=(A_0,\dots,A_{N-1}) \begin{align}A_p= \sum_{k=0}^{N-1} a_k \cdot \zeta_N^{-kp}\end{align}を対応させるものを離散フーリエ変換と呼び,\mathcal{F}:\mathbb{C}^N \to \mathbb{C}^N で表します。

また,\vec{A}=(A_1,\dots,A_{N-1})\vec{a}=(a_0,\dots,a_{N-1}) \begin{align}a_p= \frac{1}{N}\sum_{k=0}^{N-1} A_k \cdot \zeta_N^{kp}\end{align}に対応させるものを逆離散フーリエ変換と呼び,\mathcal{F}^{-1}:\mathbb{C}^N \to \mathbb{C}^N で表します。

\mathcal{F} は線形同型写像で,\mathcal{F}^{-1} が逆写像になっていることが知られています。つまり,\vec{A}=\mathcal{F}(\vec{a}) のとき  \vec{a}=\mathcal{F}^{-1}(\vec{A}) が成り立ちます。

離散フーリエ変換 - Wikipedia

離散フーリエ変換フーリエ変換の離散版として,解析的な文脈で語られるのが普通ですが,今日は代数的な視点から見てみようと思います。

多項式環での中国剰余定理

複素数体 \mathbb{C} 上の1変数多項式環 \mathbb{C}[T]f(T) \in \mathbb{C}[T] で生成されるイデアル \langle f(T)\rangle で割った剰余環を  \cfrac{\mathbb{C}[T]}{\langle f(T)\rangle} で表すことにします。\mathbb{C}[T] における中国剰余定理は次の形になります。

中国剰余定理
f(t)\in \mathbb{C}[T] が \begin{align}f(T)=f_0(T)\cdots f_{N-1}(T)\end{align}と因数分解できており,f_k(T) はどの2つを取っても互いに素なとき,自然な全射 \cfrac{\mathbb{C}[T]}{\langle f(T)\rangle} \to\cfrac{\mathbb{C}[T]}{\langle f_k(T)\rangle} をまとめた写像\begin{align}\frac{\mathbb{C}[T]}{\langle f(T)\rangle}\to
\prod_{k=0}^{N-1} \frac{\mathbb{C}[T]}{\langle f_k(T)\rangle}\end{align}は \mathbb{C}-代数としての同型となる。

特に  a_0,\dots,a_{N-1} \in\mathbb{C} が相異なる複素数で,\begin{align}f(T)=\prod_{k=0}^{N-1} (T-a_k)\end{align}のときを考えると, \cfrac{\mathbb{C}[T]}{\langle T-a_k\rangle} \cong \mathbb{C} であり, g(T) \equiv g(a_k) \mod \langle T-a_k\rangle なので,この場合の中国剰余定理の同型写像は \begin{eqnarray*}\frac{\mathbb{C}[T]}{\langle \prod_{k=0}^{N-1} (T-a_k)\rangle} &\to&\mathbb{C}^N \cong \prod_{k=0}^{N-1} \frac{\mathbb{C}[T]}{\langle T-a_k\rangle}, \\[2mm]
g(T) &\mapsto& (g(a_0),~g(a_2),~\dots,~g(a_{N-1}))\end{eqnarray*}となります。

この同型により,任意の  (b_0,\dots, b_{N-1})\in \mathbb{C}^N に対し,次数が高々 N-1多項式 g(T) g(a_k)=b_k~~(0\le k \le N-1) が成り立つものが唯一存在することが分かります。これを利用したのが最近一部ネットで話題の月の日数を与える多項式です。

togetter.com
tsujimotter.hatenablog.com

離散フーリエ変換と中国剰余定理

離散フーリエ変換の代数的解釈

f(T)=T^N-1 の場合を考えましょう。\zeta_N=e^{\frac{2\pi i}{N}} の逆数 \zeta_N^{-1}1 の原始N乗根なので\begin{align}T^N-1=\prod_{k=0}^{N-1}(T-\zeta_N^{-k})\end{align}と因数分解できます。よって中国剰余定理より\begin{eqnarray*}\varphi:\frac{\mathbb{C}[T]}{\langle T^N-1\rangle} &\to&\mathbb{C}^N \\[2mm]
g(T) &\mapsto& (g(1),~g(\zeta_N^{-1}),~\dots,~g(\zeta_N^{-p}),\dots,~g(\zeta_N^{-(N-1)}))\end{eqnarray*}は環同型となります。

この定義域である環 \cfrac{\mathbb{C}[T]}{\langle T^N-1\rangle} は,ベクトル空間としては  1,T,T^2,\dots,T^{N-1} を基底とする N次元 \mathbb{C}-ベクトル空間です。この基底を並べたベクトルを \vec{T}=(1,T,T^2,\dots,T^{N-1}) とおいて, \vec{a}=(a_0,\dots,a_{N-1})\in \mathbb{C}^N\cfrac{\mathbb{C}[T]}{\langle T^N-1\rangle} の元 \begin{align}\vec{a}\cdot \vec{T}=a_0+a_1T+a_2T^2+\dots a_{N-1}T^{N-1}\end{align}と同一視することができます ( \cdot内積)。

離散フーリエ変換の定義を思い出すと,\begin{align}\varphi(\vec{a}\cdot \vec{T})=\mathcal{F}(\vec{a})\end{align}が成り立つことが分かります。つまり,\vec{a}\leftrightarrow \vec{a}\cdot \vec{T} という同一視を通し,環同型 \varphi は離散フーリエ変換 \mathcal{F} そのものと思うことができます。

逆離散フーリエ変換の代数的解釈

\varphi は同型なので逆写像  \varphi^{-1} が存在します。  \varphi^{-1} がどうなるのか見てみましょう。

 \mathbb{C}^N の標準的な基底を e_0,\dots,e_{N-1} とします。e_pp 番目の成分が 1 でそれ以外の成分が 0 のベクトルです。

0\le p\le N-1 に対し \begin{align}\varphi\left(\frac{1}{N}\sum_{k=0}^{N-1} \zeta_N^{kp} T^k\right)=e_p\end{align}となります。\varphi^{-1}\mathbb{C}-代数の準同型なので \vec{A}=(A_1,\dots, A_{N-1}) に対し \begin{eqnarray*}\varphi^{-1}(\vec{A})&=&\varphi^{-1}\left(\sum_{p=0}^{N-1} A_p e_p\right)=\sum_{p=0}^{N-1} A_p \varphi^{-1}(e_p) =\sum_{p=0}^{N-1}A_p\cdot\frac{1}{N}\sum_{k=0}^{N-1} \zeta_N^{kp} T^k\\
&=&\sum_{k=0}^{N-1}\left( \frac{1}{N}\sum_{\ell=0}^{N-1}A_p \zeta_N^{kp}\right)T^k=\mathcal{F}^{-1}(\vec{A})\cdot \vec{T}\end{eqnarray*}となり,\varphi^{-1} は逆離散フーリエ変換と本質的に同じものであることが分かります。

合成積

さて \varphi:\frac{\mathbb{C}[T]}{\langle T^N-1\rangle} \to\mathbb{C}^N は単なるベクトル空間としての同型ではなくて環同型です。 \frac{\mathbb{C}[T]}{\langle T^N-1\rangle}\mathbb{C}^N の演算を比較すると,足し算はどちらもベクトルの足し算と同じ構造で似たようなものですが,掛け算の方はかなり違って見えます。

 \mathbb{C}^N は環の直積なので積の構造は単純です。 (A_0,\dots,A_{N-1}), (B_0,\dots,B_{N-1}) \in \mathbb{C}^N の積は成分ごとの積と定義され\begin{align}(A_0,\dots,A_{N-1})(B_0,\dots,B_{N-1})=(A_0B_0,\dots, A_{N-1}B_{N-1})\end{align}となります。

一方で \displaystyle f(T)=\vec{a}\cdot \vec{T}=\sum_{p=0}^{N-1} a_pT^p\displaystyle g(T)=\vec{b}\cdot \vec{T}=\sum_{q=0}^{N-1} b_qT^q \frac{\mathbb{C}[T]}{\langle T^N-1\rangle} での積は\begin{align}f(T)g(T)=\sum_{k=0}^{N-1}\left(\sum_{p+q \equiv k ~\mathrm{mod}~ N} a_pb_q\right)T^k \end{align}となります。

ここで, \vec{b}=(b_0,b_1,\dots,b_{N-1}) の添え字を \mathbb{Z}/N\mathbb{Z}=\{0,1,\dots,N-1\} と解釈します。つまり,任意の整数 m に対して b_{p+mN}=b_p です (数列  b_p を周期 N の繰り返しになるように添え字を  \mathbb{Z} 全体に拡張したと解釈してもいいです)。すると,先ほどの積は \begin{align}f(T)g(T)=\sum_{k=0}^{N-1}\left(\sum_{p=0}^{N-1} a_pb_{k-p}\right)T^k \end{align}と書けます。

この係数を並べたベクトルは合成積と呼ばれます。

合成積
\vec{a}=(a_0,\dots,a_{N-1})\vec{b}=(b_0,\dots,b_{N-1}) に対し,  \vec{c}=(c_0,\dots,c_{N-1})\begin{align}c_k=\sum_{p=0}^{N-1} a_pb_{k-p}\end{align} を  \vec{a}\vec{b}合成積と呼び,\vec{a}*\vec{b} と書く。

 \mathbb{C}^N はベクトルの和を加法,合成積を乗法とした可換環になります。一見変わった環のような感じがしますが  \frac{\mathbb{C}[T]}{\langle T^N-1\rangle} を考えていることと同じです。

中国剰余定理の同型  \varphi を使うと,合成積の離散フーリエ変換がどうなるかすぐ分かります。

合成積の離散フーリエ変換\begin{align}\mathcal{F}(\vec{a}*\vec{b})=\mathcal{F}(\vec{a})\mathcal{F}(\vec{b})\end{align}

ここで  \mathcal{F}(\vec{a})\mathcal{F}(\vec{b}) は直積環  \mathbb{C}^N での積です (つまり成分ごとに積を取る)。以前と同じように \vec{T}=(1,T,T^2,\dots,T^{N-1}) で,黒点  \cdot内積の記号とします。

証明
合成積の定義より (\vec{a}*\vec{b})\cdot\vec{T}=(\vec{a}\cdot\vec{T})(\vec{b}\cdot\vec{T}) \frac{\mathbb{C}[T]}{\langle T^N-1\rangle} で成り立つ。\varphi は環準同型だったので, \varphi((\vec{a}*\vec{b})\cdot\vec{T})=\varphi(\vec{a}\cdot\vec{T})\varphi(\vec{b}\cdot\vec{T}) となる。

 \varphi(\vec{a}\cdot\vec{T})=\mathcal{F}(\vec{a}) だったので,これは  \mathcal{F}(\vec{a}*\vec{b})=\mathcal{F}(\vec{a})\mathcal{F}(\vec{b}) を意味している。

証明終

数値的半群環のイデアルの生成元の数

k を体とし,正整数 a_1,a_2\dots,a_nで定まる k[t] の部分環  k[t^{a_1},t^{a_2},\dots, t^{a_n}],または k[[t]]の部分環  k[[t^{a_1},t^{a_2},\dots, t^{a_n}]]数値的半群と呼びます。

MathPower にも出ていた可換環botこと龍孫江さんの今日の記事で次の定理が示されていました。

定理
 k[[t^2,t^3]] のあらゆるイデアルは,高々2個の要素で生成される.
blog.livedoor.jp
この「高々2個」の2は k[[t^2,t^3]]の生成元  t^2の指数2と関係がありそうですよね。この定理を一般化した次の定理を示すことができます。

定理
 a_1 < a_2 < \dots < a_n を正整数とする。
 k[t^{a_1},t^{a_2}\dots, t^{a_n}] k[[t^{a_1},t^{a_2}\dots, t^{a_n}]] のあらゆるイデアルは,高々a_1個の要素で生成される.

証明
まず, R=k[t^{a_1},t^{a_2}\dots, t^{a_n}] に対して示す。

k[t^{a_1}]Rの部分環でPID。 R を含む環 k[t] は階数 a_1 の自由 k[t^{a_1}]-加群になっている。Rイデアルk[t] の部分k[t^{a_1}]-加群で,ねじれ部分がないので,階数が高々a_1の自由k[t^{a_1}]-加群になり,特に高々a_1個の要素で生成されている。k[t^{a_1}]-加群としての生成系は当然,R-加群としての生成系でもあるので,Rの任意のイデアルは高々a_1個の要素で生成される。

 R=k[[t^{a_1},t^{a_2}\dots, t^{a_n}]]に対しても,R の部分環 k[[t^{a_1}]]を取って,全く同様に証明できる。
証明終

この証明は単に生成元の数がだけa_1以下ということだけを示していて,具体的にどのような元で生成されるかは教えてくれません。可換環botこと龍孫江さんの証明はイデアルの生成元を具体的に生成元がどのようになるのかを与える構成的な証明です。

留数定理とリーマン・ゼータ関数

この記事は留数定理については学習済みであることを前提にしています。

今日はリーマン・ゼータ関数\begin{align}\displaystyle\zeta(s)=\sum_{n=1}^\infty \cfrac{1}{n^s}\end{align}の s が正の偶数のときの値  \zeta(2k) を留数定理を使って計算します。

 \zeta(2k) はベルヌーイ数というものを使って表すことができるのですが,留数定理を用いることによって,なぜベルヌーイ数が出てくるのか,その理由もはっきりします。

留数定理

留数定理を復習しておきましょう。f(z) z=c でのローラン展開 \begin{align}\displaystyle f(z)=\sum_{n=-N}^\infty a_n (z-c)^n\end{align}を持つとき, \mathrm{Res}(f;c)=a_{-1} f(z) z=c における留数と呼びます。

留数定理
有界領域 D 内の単純閉曲線 C が囲む領域 D' を考える。f(z)D' 内に孤立特異点  c_1, c_2,\dots, c_m を持ち,それ以外の D の点で正則であるならば\begin{align}\displaystyle \oint_C f(z) dz=2\pi i \sum_{j=1}^m \mathrm{Res}(f;c_j). \end{align}

ベルヌーイ数

ベルヌーイ数
 \cfrac{z}{e^z-1} は原点の近傍で正則で,そのテーラー展開 \begin{align}\cfrac{z}{e^z-1}=\sum_{n=0}^\infty \cfrac{B_n}{n!}z^n\end{align}で定まる B_nベルヌーイ数と呼ぶ。

 B_n=\cfrac{d^n}{dz^n} \cfrac{z}{e^z-1} \bigg|_{z=0} であり,B_n有理数となります。また,  B_n n3 以上の奇数のとき  0 になることが知られています。

 \zeta(2k) の値

ベルヌーイ数を用いて,ゼータ関数 \zeta(s) の正の偶数での値を表すことができます。

定理 (オイラー 1748)
 k を正整数とする。
\begin{align}\zeta(2k)=\cfrac{1}{2}\cdot \cfrac{ ( - 1 )^{k - 1 } (2\pi)^{2k} B_{2k} }{(2k)!}\end{align}

証明
f(z)=\cfrac{z}{e^z-1} とし,\begin{align}g(z)=\cfrac{f(2\pi i z)}{z^{2k+1}}=\cfrac{2\pi i}{z^{2k}}\cdot\cfrac{1}{e^{2\pi i z}-1}\end{align}とおく。 N を正整数とし,  \Gamma_N を図のような,1辺が  2N+1 である正方形の積分経路とする。

f:id:egory_cat:20181015090458p:plain:w500

 g(z)\Gamma_N に囲まれる領域における特異点 -N\le n \le N となる整数  n で, 0 は位数  2k+1 の極で, n\neq 0 は位数 1 の極になっている。 z=0 における留数は,\begin{align}g(z)=\cfrac{1}{z^{2k+1}} \sum_{n=0}^\infty \cfrac{B_n}{n!}(2\pi i z)^n=\sum_{n=0}^\infty \cfrac{(2\pi i)^nB_n}{n!}z^{n-2k-1}\end{align}なので,\begin{align}\mathrm{Res}(g(z); 0) = \cfrac{(2\pi i)^{2k}B_{2k}}{(2k)!}=\cfrac{(-1)^k(2\pi)^{2k}B_{2k}}{(2k)!} \end{align}となる。また,その他の留数は  n>0 とすると
\begin{eqnarray*}
\mathrm{Res}(g(z); n) &=& \lim_{z\to n} g(z)(z-n)=\lim_{z\to n} \cfrac{2\pi i}{z^{2k}}\cdot\cfrac{z-n}{e^{2\pi i z}-1}=\cfrac{2\pi i}{(n^{2k})}
\left( \cfrac{d e^{2\pi i z}}{dz}\bigg|_{z=n}\right)^{-1}=\cfrac{1}{n^{2k}}\\
\mathrm{Res}(g(z); -n) &=& \lim_{z\to -n} g(z)(z+n)=\lim_{z\to -n} \cfrac{2\pi i}{z^{2k}}\cdot\cfrac{z+n}{e^{2\pi i z}-1}=\cfrac{2\pi i}{(n^{2k})}
\left( \cfrac{d e^{2\pi i z}}{dz}\bigg|_{z=-n}\right)^{-1}=\cfrac{1}{n^{2k}}\\
\end{eqnarray*}となる。よって留数定理より\begin{align}\cfrac{1}{2\pi i}\oint_{\Gamma_N} g(z)dz=\sum_{n=-N}^N \mathrm{Res}(g;n) =\cfrac{(-1)^k(2\pi)^{2k}B_{2k}}{(2k)!}+2\sum_{n=1}^N \cfrac{1}{n^{2k}}\end{align}となる。

ここで  \displaystyle \lim_{N\to \infty}\cfrac{1}{2\pi i}\oint_{\Gamma_N} g(z)dz=0 が示されれば,上式で  N\to \infty として目的の等式 \begin{align}\sum_{n=1}^\infty \cfrac{1}{n^{2k}}=\cfrac{1}{2}\cdot \cfrac{( - 1 )^{k - 1 } (2\pi)^{2k}B_{2k} }{(2k)!}\end{align}が得られる。

以下で  \displaystyle \lim_{N\to \infty}\cfrac{1}{2\pi i}\oint_{\Gamma_N} g(z)dz=0 を示す。

\bullet~\Gamma_N 上の点  z=\pm(N+1/2)+yi に対し,\begin{align}|g(z)|=\cfrac{2\pi}{|z|^{2k}}\cdot\cfrac{1}{|e^{-2\pi y\pm(N+1/2)\cdot 2\pi i }-1|}
=\cfrac{2\pi}{|z|^{2k}}\cdot\cfrac{1}{e^{-2\pi y}+1}< \cfrac{2\pi}{N^{2k}}\end{align}\bullet~\Gamma_N 上の点  z=x+(N+1/2)i に対し,\begin{align}|g(z)|=\cfrac{2\pi}{|z|^{2k}}\cdot\cfrac{1}{|e^{-2\pi(N+1/2) + 2\pi i x }-1|}<\cfrac{2\pi}{N^{2k}} \cdot\cfrac{1}{1 - e^{ - 2\pi(N+1/2)}} \le \cfrac{2\pi}{N^{2k}} \cdot\cfrac{1}{1 - e^{ - \pi}}\end{align}\bullet~\Gamma_N 上の点  z=x-(N+1/2)i に対し,\begin{align}|g(z)|=\cfrac{2\pi}{|z|^{2k}}\cdot\cfrac{1}{|e^{2\pi(N+1/2) + 2\pi i x }-1|}
\cfrac{2\pi}{N^{2k}} \cdot\cfrac{1}{e^{2\pi(N+1/2)-1}} \le \cfrac{2\pi}{N^{2k}} \cdot\cfrac{1}{e^{\pi}-1} \end{align}以上より, N に依存しないある定数  M を用いて,\Gamma_N 上で  |g(z)|<\cfrac{M}{N^{2k}} と上から評価できる。よって \begin{align}\left| \cfrac{1}{2\pi i}\oint_{\Gamma_N} g(z)dz\right| \le \cfrac{1}{2\pi}\cdot |g(z)|\cdot \mathrm{length} (\Gamma_N) <\cfrac{ 4M(2N+1)}{2\pi N^{2k}}\to 0 ~(N\to\infty)\end{align}となるので  \displaystyle \lim_{N\to \infty}\cfrac{1}{2\pi i}\oint_{\Gamma_N} g(z)dz=0 である。

証明終

他にもいろいろな証明方法があるようですが,ベルヌーイ数が出てくる理由が分かりやすいので,お気に入りの証明です。