インテジャーズ

INTEGERS

数、特に整数に関する記事。

高木関数

今、目の前に高木貞治博士の論文集があります。高木貞治博士が28歳ぐらいのときに出版された論文

T. Takagi, A simple example of a continuous function without derivative, Proc. Phys. Math. Japan, (1903) Vol. 1, pp. 176-177.

は一ページ半に満たないものですが(Proceeding)、最初にそのような当時の感覚では病的な関数を発見したWeierstrassの例(1872年)に比べて、至る所微分不可能な連続関数の簡単な例を与えた有名な論文です。この高木関数とか高木曲線として有名な関数を、できるだけ博士が論文中で使用している記号のまま紹介したいと思います。
f:id:integers:20170103004248p:plain

Dirichlet関数(高数美物語アジマティクスインテジャーズ)は至る所不連続な関数で有名な関数であり、それは当然至る所微分不可能ですが、Weierstrassの例や高木博士の例はある意味一段階レベルアップした病的な関数です。超有名ではありますが、Dirichlet関数のように大学の授業で必ず習うというわけではないです。あと、フラクタルになっています。

論文に沿った紹介

[0, 1]区間の実数t

\displaystyle t=\sum^n\frac{c_n}{2^n}

2進展開する(ただし、c_n0または1)。各正整数nに対して\tau_n\tau'_n

\begin{align} \tau_n &= \frac{c_n}{2^n}+\frac{c_{n+1}}{2^{n+1}}+\frac{c_{n+2}}{2^{n+2}}+\cdots \\ \tau'_n &= \frac{1}{2^{n-1}}-\tau_n\end{align}

と定める(これはtに依存して定まるが、t2進展開が二通りある場合であってもその展開の仕方には依らない)。そうして、\gamma_n

\displaystyle \gamma_n = \begin{cases}\tau_n & (c_n=0)\\ \tau'_n & (c_n=1)\end{cases}

によって定める(これもtのみに依存する)。このとき、[0, 1]区間上の関数 f(t)

\displaystyle f(t) = \sum_{1, \infty}^n\gamma_n

によって定義する*1(これが高木関数と呼ばれているもの)。

\pi_nおよび\nu_nをそれぞれc_1, c_2, \dots, c_nにおける0の個数および1の個数とし(\pi_n+\nu_n=n)、a_n

\displaystyle a_n = \begin{cases}\nu_n & (c_n=0)\\ \pi_n & (c_n=1)\end{cases}

と定めると、

\displaystyle f(t) = \sum\frac{a_n}{2^n}

と書けることが容易にわかる()。f(t)[0, 1]上定義される連続関数である()。これが、至るところ微分不可能であることは特別な\Delta tに対する\displaystyle \frac{\Delta f}{\Delta t}を計算することによって証明できる:

まず、c_n=0, \ \displaystyle \Delta t = \frac{1}{2^n}の場合は

\displaystyle \frac{\Delta f}{\Delta t} = \pi_n-\nu_n-2^{n+1}\tau_{n+1}

が成り立つ()。また、c_{n-1}=0, \ c_n=0, \ \displaystyle \Delta t = \frac{1}{2^n}の場合は

\displaystyle \frac{\Delta f}{\Delta t} = \pi_n-\nu_n

である()。

従って、c_n=0, \ c_{n+1}=0のときは、\displaystyle \Delta t=\frac{1}{2^n}のときの\displaystyle \frac{\Delta f}{\Delta t}の値と\displaystyle \Delta t=\frac{1}{2^{n+1}}のときの\displaystyle \frac{\Delta f}{\Delta t}の値の差は1-2^{n+1}\tau_{n+2}で与えられる()。

また、c_n=0, \ c_{n+1}=1のときは、\displaystyle \Delta t=\frac{1}{2^n}のときの\displaystyle \frac{\Delta f}{\Delta t}の値と\displaystyle \Delta t=\frac{1}{2^{n+1}}のときの\displaystyle \frac{\Delta f}{\Delta t}の値の差は2^{n+1}\tau_{n+2}で与えられる()。

nはいくらでも大きくできるので、これより微分不可能性が従う()。

補足

①(高木の公式)の補足
\overline{c_n}=1-c_nと書くことにします。c_n=0のときは、j \leq nなるjに対して

\displaystyle \gamma_j = \tau'_j = \frac{\overline{c_j}}{2^j}+\cdots +\frac{\overline{c_n}}{2^n}+\cdots

であるときにa_nに寄与します(\overline{c_n}=1)。こうなるのはc_j=1のときなので、a_nc_1, \dots, c_{n}までの1の個数\nu_nに等しいことがわかります。

c_n=1のときは、j \leq nなるjに対して

\displaystyle \gamma_j=\tau_j = \frac{c_j}{2^j}+\cdots +\frac{c_n}{2^n}+\cdots

であるときにa_nに寄与します。こうなるのはc_j=0のときなので、a_nc_1, \dots, c_nまでの0の個数\pi_nに等しいことがわかります。

距離関数を使った表示
高木関数をT(t)と書くことにしましょう。一般的な関数を表す記号である f(t)よりは固有名詞っぽくなります。実数tに対して、ttに一番近い整数の距離を\langle \! \langle t \rangle \! \rangleと書くことにします(これはLagariasさんが使っている記号です。文献によって記号が異なります*2 )。t \in [0, 1]に対しては\displaystyle \gamma_n=\frac{\langle \! \langle 2^{n-1}t \rangle \! \rangle}{2^{n-1}}が成り立ち、

\displaystyle T(t) = \sum_{n=1}^{\infty}\frac{\langle \! \langle 2^{n-1}t \rangle \! \rangle}{2^{n-1}}= \sum_{n=0}^{\infty}\frac{\langle \! \langle 2^{n}t \rangle \! \rangle}{2^{n}} ー⑦

と簡潔に表されることがわかります。これは明らかに一様収束する級数ですが、

\displaystyle [0, 1] = \bigcup_{k=0}^{2^{n+1}-1}\left[ \frac{k}{2^{n+1}}, \frac{k+1}{2^{n+1}}\right]

と分割すると、\displaystyle t \in \left[ \frac{k}{2^{n+1}}, \frac{k+1}{2^{n+1}}\right]に対して

\displaystyle \frac{\langle \! \langle 2^{n}t \rangle \! \rangle}{2^{n}} = \begin{cases}t-\frac{k}{2^{n+1}} & (k\in 2\mathbb{Z}) \\ \frac{k+1}{2^{n+1}}-t & (k+1 \in 2\mathbb{Z}) \end{cases} ー⑧

と書けるので、\displaystyle \frac{\langle \! \langle 2^{n}t \rangle \! \rangle}{2^{n}}はギザギザした[0, 1]上連続な関数であり、従って f(t)も連続であることがわかります(これで②の理由がわかりました)。

高木関数のアニメーションを載せているサイトを見つけたのでリンクを貼っておきます:高木関数

有理性
高木関数は有理数を有理数に写す関数です。つまり、tが有理数ならばT(t)も有理数になります。実際、tが有理数ならば2^ntの既約分数表示における分母の取り得る値はnを動かしたときに有界なので、\langle \! \langle 2^nt\rangle \! \rangleは周期的になります。よって、⑦の表示と等比級数の和の公式からT(t)が有理数になることがわかります。

高木関数の値域
T(t)の値の取り得る範囲は[0, 2/3]です。T(t) \geq 0, T(0)=T(1)=0, t \in (0, 1)に対してT(t) > 0であることは定義からすぐわかります。x \geq 0に対して

\displaystyle \langle \! \langle x \rangle \! \rangle + \frac{1}{2} \langle \! \langle 2x \rangle \! \rangle \leq \frac{1}{2}

であることはxの小数部分について丁寧に4通りに場合分けすれば示せるので、⑦において和を二つずつペアにしてこの不等式を適用すると

\displaystyle T(t) \leq \frac{1}{2}+\frac{1}{2^3}+\frac{1}{2^5}+\cdots = \frac{2}{3}

と評価できます。任意の非負整数nに対して\langle \! \langle 2^n\frac{1}{3} \rangle \! \rangle=\frac{1}{3}なので、T(\frac{1}{3})=\frac{2}{3}です。

③の補足
tを明示する場合は\tau_n(t)のように表示することにします(明示しなければtの場合)。c_n=0, \ \displaystyle \Delta t = \frac{1}{2^n}とします。

k \geq n+1のときは\tau_k(t) = \tau_k(t+\Delta t)なので、\gamma_k(t) = \gamma_k(t+\Delta t)

c_n=0なので、\gamma_n(t)=\tau_n(t) = \tau_n

c_n(t+\Delta t) = 1なので

\displaystyle \gamma_n(t+\Delta t) = \tau'_n(t+\Delta t) = \frac{1}{2^{n-1}}-\tau_n(t+\Delta t) = \frac{1}{2^{n-1}}-\left( \frac{1}{2^n}+\tau_n(t) \right) = \frac{1}{2^n}-\tau_n

k \leq n-1のときは\displaystyle \tau_k(t+\Delta t)  = \frac{1}{2^n}+\tau_k(t)なので、

c_k=0ならば

\displaystyle \gamma_k(t+\Delta t) = \tau_k(t+\Delta t) = \frac{1}{2^n}+\tau_k(t) = \frac{1}{2^n}+\gamma_k(t)

c_k=1ならば

\begin{align} \gamma_k(t+\Delta t) &= \tau'_k(t+\Delta t) = \frac{1}{2^{k-1}}-\tau_k(t+\Delta t) = \frac{1}{2^{k-1}}-\frac{1}{2^n}-\tau_k(t) \\ &=\tau'_k(t) -\frac{1}{2^n} = \gamma_k(t) - \frac{1}{2^n}\end{align}

以上より

\displaystyle \Delta f = f(t+\Delta t)-f(t) = \frac{\pi_{n-1}}{2^n}-\frac{\nu_{n-1}}{2^n}+\frac{1}{2^n}-2\tau_n

\pi_n=\pi_{n-1}+1, \ \nu_n=\nu_{n-1}, \ \tau_{n+1}=\tau_nなので③が得られました。

④の補足
これは計算が合わないというか、③を考えるとおかしいのですが、c_n=1の誤植です。c_{n-1}=0, \ c_n=1, \ \displaystyle \Delta t = \frac{1}{2^n}とします。このときもk \leq nのときを考えれば十分です。c_{n-1}(t+\Delta t) = 1c_n(t+\Delta t) = 0に注意します。

\displaystyle \gamma_n(t) = \tau'_n(t) = \frac{1}{2^{n-1}}-\tau_n(t), \ \displaystyle \gamma_n(t+\Delta t) = \tau_n(t+\Delta t) = \tau_n(t)-\frac{1}{2^n}なので、

\displaystyle \Delta \gamma_n = 2\tau_n-\frac{3}{2^n}

\gamma_{n-1}(t) = \tau_{n-1}(t) = \tau_n

\displaystyle \gamma_{n-1}(t+\Delta t) = \frac{1}{2^{n-2}}-\tau_{n-1}(t+\Delta t) = \frac{1}{2^{n-2}}-\left( \frac{1}{2^{n-1}}+\tau_n(t)-\frac{1}{2^n} \right) = \frac{3}{2^n}-\tau_n

k \leq n-2ならば

\displaystyle \tau_k(t+\Delta t) = \tau_k(t) -\frac{1}{2^n}+\frac{1}{2^{n-1}} = \tau_k(t) + \frac{1}{2^n}

以上より

\displaystyle \Delta f = \frac{\pi_{n-2}}{2^n}-\frac{\nu_{n-2}}{2^n} +\left( \frac{3}{2^n}-2\tau_n\right) + \left( 2\tau_n-\frac{3}{2^n} \right)

\pi_n = \pi_{n-2}+1, \ \nu_n = \nu_{n-2}+1より④が得られました。

⑤の補足
c_n=0, \ c_{n+1}=0のときは③から

\left. \frac{\Delta f}{\Delta t} \right|_{\Delta t = \frac{1}{2^{n+1}}} - \left. \frac{\Delta f}{\Delta t} \right|_{\Delta t = \frac{1}{2^{n}}} = (\pi_{n+1}-\nu_{n+1}-2^{n+2}\tau_{n+2}) - (\pi_n-\nu_n-2^{n+1}\tau_{n+1})

\pi_{n+1}=\pi_n+1, \ \nu_{n+1}=\nu_n, \ \tau_{n+2}=\tau_{n+1}なので、これは1-2^{n+1}\tau_{n+2}に等しいことがわかります。

c_n=0c_{n+1}=1のときは③、④から

\left. \frac{\Delta f}{\Delta t} \right|_{\Delta t = \frac{1}{2^{n+1}}} - \left. \frac{\Delta f}{\Delta t} \right|_{\Delta t = \frac{1}{2^{n}}} = (\pi_{n+1}-\nu_{n+1})-(\pi_n-\nu_n-2^{n+1}\tau_{n+1})

\pi_{n+1}=\pi_n\nu_{n+1}=\nu_n+1\displaystyle \tau_{n+2} = \tau_{n+1}-\frac{1}{2^{n+1}}なので、これは2^{n+1}\tau_{n+2}に等しいです。以上で⑤が確認できました。

⑥の補足
微分係数\displaystyle \lim_{\Delta t \to 0}\frac{\Delta f}{\Delta t}が存在すれば、

\displaystyle \left. \frac{\Delta f}{\Delta t} \right|_{\Delta t = \frac{1}{2^{n+1}}} - \left. \frac{\Delta f}{\Delta t} \right|_{\Delta t = \frac{1}{2^{n}}}

nを大きくするといくらでも小さくなっていく必要があります。例えばt2進展開に\cdots 000 \cdotsという部分が無数にあったとしましょう。このとき、000の部分を\displaystyle \frac{c_n}{2^n}+\frac{c_{n+1}}{2^{n+1}}+\frac{c_{n+2}}{2^{n+2}}とすれば、⑤より

\displaystyle \left. \frac{\Delta f}{\Delta t} \right|_{\Delta t = \frac{1}{2^{n+1}}} - \left. \frac{\Delta f}{\Delta t} \right|_{\Delta t = \frac{1}{2^{n}}} = 1-2^{n+1}\tau_{n+2} \geq \frac{1}{2}

なので微分係数を持ち得ないことがわかります。t2進展開の様子で幾つかの場合分けをすることにより⑤を使ってf(t)は至る所微分不可能であることを確認できます。ただ、私の確認した方法が高木博士の意図した方法である自信が全くないので、ここでは別の導出方法を解説することにします。

至るところ微分不可能であることのBillingsleyによる証明
t \in [0, 1)*3は正整数n毎に或る整数0 \leq k \leq 2^n-1が存在して

\displaystyle \frac{k}{2^n} \leq t < \frac{k+1}{2^n}

と挟むことができる。u_n=\frac{k}{2^n}v_n=\frac{k+1}{2^n}とおこう。このとき、

\displaystyle \frac{T(v_n)-T(u_n)}{v_n-u_n} = \sum_{j=0}^{n-1}\frac{\frac{\langle \! \langle 2^jv_n \rangle \! \rangle}{2^j}-\frac{\langle \! \langle 2^ju_n \rangle \! \rangle}{2^j}}{v_n-u_n}

であり*4、この和の中身は傾きを表しているが、それは⑧からわかるように\pm 1である。従って、tを固定したときに

\displaystyle \lim_{n \to \infty}\frac{T(v_n)-T(u_n)}{v_n-u_n}

は存在しない。ところが、高木関数のtでの微分係数が存在すれば、上記極限が存在して同じ値に収束するはずである(このことは簡単な\varepsilon-\delta論法で示せる)。すなわち、高木関数は至る所微分不可能である。 Q.E.D.

関数等式

定理 高木関数は次のような関数等式を満たす:
T(t) = T(1-t), \quad \displaystyle 2T\left( \frac{t}{2} \right) = T(t)+t
また、高木関数はこれらの関数等式を満たすような[0, 1]上定義された連続関数として特徴づけられる。

証明. 任意の非負整数nに対して\langle \! \langle 2^nt \rangle \! \rangle = \langle \! \langle 2^n(1-t) \rangle \! \rangleであることから最初の関数等式がわかる。二つ目の関数等式は、\langle \! \langle \frac{t}{2} \rangle \! \rangle = \frac{t}{2}であることに注意すれば、

\displaystyle 2T\left( \frac{t}{2} \right) = 2\left\langle \! \left\langle \frac{t}{2} \right\rangle \! \right\rangle + 2\left( \sum_{n=1}^{\infty}\frac{\langle \! \langle 2^n\frac{t}{2} \rangle \! \rangle}{2^n}\right) = t+T(t)

と示される。これらの関数等式から、[0, 1]区間に含まれる全ての2進有理数の値を決めることができるので、[0, 1]に含まれる2進有理数全体は[0, 1]で稠密であることと連続性からT(t)は一意に決定されることがわかる。 Q.E.D.

リーマン予想

次のような定理があることを知りました。証明はフォローしていないので紹介に留めます。

Kanemitsu-Yoshimoto (2000) Nを正の整数として、\mathcal{F}_Nを既約分数表示した際の分母がN以下であるような[0, 1]区間内の有理数全体集合とする。このとき、Riemann予想は次の高木関数を用いて表される漸近公式が任意の正の実数\varepsilon > 0に対して成立することと同値である:
\displaystyle \sum_{\rho \in \mathcal{F}_N}T(\rho)-\#\mathcal{F}_N\int_0^1T(t)dt = O(N^{\frac{1}{2}+\varepsilon}), \quad (N \to \infty)

*1:論文中で著者が定義したものであっても"We define ~"と書く慣習がありますが、この論文では"I define f(t) by"と書かれています。

*2:\mathrm{dist}(t, \mathbb{Z})は意味がわかりやすくて良い記号ですが、表記が長くなってしまいます。

*3:t=1での微分不可能性は次の節のT(t)=T(1-t)からわかるようにt=0における微分不可能性と同値。

*4:j \geq nに対して\displaystyle \frac{\langle \! \langle 2^jv_n \rangle \! \rangle}{2^j}=\frac{\langle \! \langle 2^ju_n \rangle \! \rangle}{2^j}=0であることに注意。