個人的な好みですが、微分可能だけど導関数は不連続な関数(など)のようなお茶目な関数にグッときます。いやぁ、などといった滑らかな関数も魅力的なんですけどねぇ、他の関数からチヤホヤされていそうなのでわがままな人が多いのかなぁ…って私は何を書いているのだ。
さて、今回は私がとても好きな関数であるトマエ関数を紹介したいと思います。
トマエ関数とは
トマエ関数(Thomae's function,ドイツの数学者Carl Johannes Thomaeに因む)とは、実数に対して
\begin{equation*}T(x)=
\begin{cases}
\frac{1}{q} & (x=\frac{p}{q}\in\mathbb{Q},\;p, q\;\text{は互いに素な整数},q>0)\\
0 & (x\in\mathbb{R}\setminus\mathbb{Q})
\end{cases}\end{equation*}
例えば、
\begin{align*}
T\left(\frac{1}{2}\right) &=\frac{1}{2}\\
T\left(\frac{1}{3}\right) =T\left(\frac{2}{3}\right) &=\frac{1}{3}\\
T\left(\frac{1}{4}\right) =T\left(\frac{3}{4}\right) &=\frac{1}{4}\\
T\left(\frac{1}{5}\right) =T\left(\frac{2}{5}\right)=T\left(\frac{3}{5}\right)=T\left(\frac{4}{5}\right) &=\frac{1}{5}
\end{align*}
「あれ?が抜けてる?」
と思ったかもしれませんが、と約分できるので要りません。むしろとしてしまうと、かつとなってしまい、の行き先が1つに定まりません。こういう状態を引き起こさないために、有理数の場合は「は互いに素な整数」としてという表示に限定する必要があります。また、といった表示がありえるので「」の方に固定して考えます。
と考えてとします。もっと細かいことを言うと、「0と1は互いに素」、「0とは互いに素でない」が言えるので「と考えて『よい』」ことが分かります。
グラフの概形はこんな感じです(の範囲)。
軸付近がブゥワーーってなっていますが、線対称でキレイなグラフですね。先ほど確認したように、よく見ればの点はに、との点はに写されているのが分かると思います。
またその見た目から、
- ポップコーン関数(Popcorn function)
- 雨滴関数(Raindrop function)
- 可算雲関数(Countable cloud function)
- バビロンの星(Stars over Babylon)
などの名前が付いてるらしいです。
個人的には、最近話題になった「トルコのステーキレストランの料理人が振りかける塩」にも見えます。
【Thomae's function】無理数の点で連続、有理数の点で不連続という不思議な関数。「ポップコーン関数」「雨滴関数」「トルコのステーキレストランの料理人が振りかける塩関数」などの名前が付いている。 pic.twitter.com/f9Xm8OfyIN
— コロちゃんぬ (@corollary2525) 2017年5月19日
トマエ関数の性質
トマエ関数にとても惹かれる理由は何といっても次の性質です。
有理数で不連続なのはポツンと浮いているので明らかだと思います。しかし、無理数で連続なのは意外だったのではと思います。私が大学1年生のとき、微分積分の教科書の演習問題の中でこの関数にはじめて出会いました。話を聞いてみると無理数で連続であることを知って今までの連続のイメージとは違う所に心を奪われました。
トマエ関数が無理数で連続であることの感覚的な説明をしましょう。ある無理数に注目しそれを含む区間を狭めていくと、その区間に潜む有理数たちの分母はどんどん大きくなってしまいます。したがって、無理数の付近でのトマエ関数のとる値は、散らばってはいますが0に近い値なのです。これに似た状況にある関数として、例えば
\begin{equation*}f(x)=
\begin{cases}
x^2 & (x\in\mathbb{Q})\\
0 & (x\in\mathbb{R}\setminus\mathbb{Q})
\end{cases}\end{equation*}があります。
有理数はによって放物線上に散らばりますが、原点で連続です。
トマエ関数はこういうタイプの連続がすべての無理数で起きている、と私は理解しています。
さらにトマエ関数には次のような性質がありますが、どれもグッときます。
ここまでの性質はすべてWikipediaに詳しく載っています。
Thomae's function - Wikipedia
しかし、トマエ関数のことが好きな私にとってはこのまま記事を終わらせたくありません。ちょっとしたことでもいいから、Wikipediaに載ってない事実を見つけたかったのです。そして、トマエ関数のことをしばらく考えていたら、トマエ関数の連続関数の二重極限による表示を発見したのでご紹介します。
トマエ関数の連続関数の二重極限による表示
すべての点で不連続な関数として有名なディリクレ関数があります。
\begin{equation*}D(x)=
\begin{cases}
1 & (x\in\mathbb{Q})\\
0 & (x\in\mathbb{R}\setminus\mathbb{Q})
\end{cases}\end{equation*}この関数は次の表示をもつことが知られています:
\begin{equation*}
D(x) = \lim_{n \to \infty}\lim_{k \to \infty}(\cos (n!\pi x))^{2k}.
\end{equation*}場合分けで定義された関数が一本の式で表示できるのは驚きですね。この式の解説は鯵坂もっちょさんによる以下の記事がとても分かりやすいです。
www.ajimatics.com
そこで、私はこの表示を使ってトマエ関数も一本の式で表示できるのでは?と思いました。そこでいろいろ考えてみた結果がこちらです:
\begin{equation*}
T(x) = \lim_{n \to \infty}\lim_{k \to \infty}\dfrac{\gcd(\operatorname{round}(n!x), n!)}{n!}(\cos (n!\pi x))^{2k}
\end{equation*}
ディリクレ関数の二重極限の中にを掛けることで有理数をに写す関数を作ることができました!極限の中身を
\begin{equation*}
T_{n,k}(x):=\dfrac{\gcd(\operatorname{round}(n!x), n!)}{n!}(\cos (n!\pi x))^{2k}
\end{equation*}
毎度おなじみDesmosの方もご確認ください。
トマエ関数
注意: にするとグラフが鋭すぎて上手く表示されません。また、Desmosのはデフォルトでが備わっています。
これで連続関数がトマエ関数に収束していくようにみえたと思います。まずは、からが生み出される鍵となる次の命題を証明します。
\begin{equation*}
\lim_{n\to\infty}\dfrac{\gcd(\operatorname{round}(n!x), n!)}{n!}=\dfrac{1}{q}.
\end{equation*}
証明 とする(とは互いに素な整数で).とするのでとしてよい.このとき,
\begin{align*}
n! &=n\cdot(n-1)\cdots(q+1)\cdot q\cdot(q-1)!\\
n!x &=n\cdot(n-1)\cdots(q+1)\cdot p\cdot(q-1)!
\end{align*}
\begin{equation*}
\gcd(n!x,n!)=n\cdot(n-1)\cdots(q+1)\cdot(q-1)!=\dfrac{n!}{q}.
\end{equation*}
\begin{equation*}
\lim_{n\to\infty}\dfrac{\gcd(\operatorname{round}(n!x), n!)}{n!}=\dfrac{1}{q}
\end{equation*}が示された.■
\begin{equation*}
g(x)=\lim_{n\to\infty}\dfrac{\gcd(\operatorname{round}(n!x), n!)}{n!}
\end{equation*}とおいたとき、にうっかり(とは互いに素では自然数)を代入してしまってもちゃんとを返してくれます!これはとして先ほどの同じ議論をすることで証明ができます。
そして、二重極限表示が正しいことを示します。
\begin{equation*}
T(x) = \lim_{n \to \infty}\lim_{k \to \infty}\dfrac{\gcd(\operatorname{round}(n!x), n!)}{n!}(\cos (n!\pi x))^{2k}
\end{equation*}
証明 とおく.を示せばよい.
まずはのとき(とは互いに素な整数で)を考える.に対しては命題1よりであり,であるから(どちらの値もに依らない定数!).よってが十分大きければであるから
\begin{equation*}
\lim_{n\to\infty}T_n(x)=\dfrac{1}{q}
\end{equation*}が成り立つ.
が無理数のときはなので
\begin{align*}
\left|\dfrac{\gcd(\operatorname{round}(n!x), n!)}{n!}(\cos (n!\pi x))^{2k}\right| &\le(\cos (n!\pi x))^{2k}\\
&\longrightarrow0\quad(k\to\infty)
\end{align*}
\begin{equation*}
\lim_{n \to \infty}T_n(x)=0
\end{equation*}が成り立つ.■
最後に、任意のに対してが連続であることを一言述べて終わります。任意のに対しては上定数なのででが連続であることを示せば十分ですが、であることから
\begin{equation*}\lim_{x\to x_m-0}T_{n,k}(x)=\lim_{x\to x_m+0}T_{n,k}(x)=0\end{equation*}が直ちに従います。
以上より、トマエ関数が連続関数の二重極限表示というお茶目な一面をみせてくれました。愛くるしいなぁトマエは。
トマエ関数の連続関数の一重極限による表示
前節までの多くは先日行われた第10回日曜数学会で発表させていただきました。そして、その発表の生放送を見てくださったせきゅーんさんのご指摘により、トマエ関数は一重極限表示できることが分かりました!!
\begin{equation*}
T(x) = \lim_{n \to \infty}\dfrac{\gcd(\operatorname{round}(n!x), n!)}{n!}(\cos(n!\pi x))^{2k}.
\end{equation*}
についての極限はいらなかったんだ…。なんと、詳しい解説をせきゅーんさんが書いてくれましたので、こちらをぜひご参照ください:
付録 by せきゅーん
スペースを頂いて若干補足させていただきます。関数はのみを扱います。本文でも解説されているようにディリクレ関数は二重極限表示を用いて表示することができ、コロちゃんぬさんはそれを元にトマエ関数の二重極限表示を与えました。ここで、もっちょさんの記事に影響されてせきゅーんが書いた記事を思い出します:
連続関数の各点収束関数として表示することができる関数(一重極限表示を持つ関数)のことをベール級関数といい、ベール級関数の各点収束関数として表示することができる関数(二重極限表示を持つ関数)のことをベール級関数といいます。この言葉を用いるとディリクレ関数はベール級関数ですが、上の記事においてディリクレ関数がベール級関数ではないことの証明を解説しています。
つまり、ディリクレ関数は二重極限表示が最善であって一重極限表示は持たないのです!
証明は「ベール級関数は一般に連続関数ではないが、連続である点が稠密に分布する必要がある」ということを示すことによって、至る所不連続なディリクレ関数はベール級関数ではないことがわかるという論法でした。
以上のことを踏まえると、コロちゃんぬさんによる二重極限表示によってトマエ関数はベール級関数であることがわかりますが、本文で述べているようにトマエ関数は任意の無理数で連続であるため、ディリクレ関数とは違って「ベール級関数でもおかしくないのでは?」という疑問が生じます。実は不連続点のなす集合が高々可算であるような関数はベール級関数であることが一般的に知られています。トマエ関数の不連続点のなす集合はなので可算であり、一般論によりベール級関数であることが確定します。つまり、一重極限表示を持つはずです。
ところで、本文中のアニメーションを見るとを固定しているにも関わらずはでトマエ関数に収束するような気がしてきます。これが気のせいではないということを示すのが上記命題の主張です。中身の関数であるが連続関数である事は既に解説されているので、トマエ関数のベール級関数としての具体的な表示を与えたことになります。
命題の証明 が有理数のときにに依存せず収束することは命題2の証明で既に解説されているため, が無理数のときのみ考察対象となる. 実数全体を長さの区間で分割することによって, 毎に整数が存在しては開区間
\begin{equation*}
I_n:=\left(\frac{2m_n-1}{2n!}, \frac{2m_n+1}{2n!}\right)
\end{equation*}
に属する(は無理数なので区間の端になることはない). また, 細分されていくので
\begin{equation*}
I_1 \supsetneq I_2 \supsetneq I_3 \supsetneq \cdots
\end{equation*}
となっている(は一意的に定まることに注意). の既約分数表示を(とは互いに素で, 整数を用いてと書ける)とする. このとき,
\begin{equation*}
m_n-\frac{1}{2} < n!x < m_n+\frac{1}{2}
\end{equation*}
なのでであり,
\begin{equation*}
\dfrac{\gcd(\operatorname{round}(n!x), n!)}{n!}=\dfrac{\gcd(m_n, n!)}{n!}=\dfrac{\gcd(p_na, q_na)}{q_na}=\frac{a}{q_na}=\frac{1}{q_n}
\end{equation*}
\begin{equation*}
\begin{split}
T_{n, k}(x) &= \dfrac{\gcd(\operatorname{round}(n!x), n!)}{n!}(\cos(n!\pi x))^{2k} \leq \dfrac{\gcd(\operatorname{round}(n!x), n!)}{n!} = \frac{1}{q_n} \\ &\longrightarrow 0 \quad (n \to \infty)
\end{split}
\end{equation*}
まとめ
書き手がコロちゃんぬに代わります。せきゅーんさんありがとうございました。
私はWikipediaに載ってない性質を見つけたいという一心でトマエ関数を連続関数の二重極限で表示することができました。そして、せきゅーんさんのご指摘によって一重極限表示できる(ベール級関数である)ことが分かりました(すごい)。また、「付録」として解説をつけたいとせきゅーんさんの方からお声をいただき、このような形でコラボさせていただきました。重ねてお礼申し上げます。
せきゅーんさんの解説にもある通り、一般に不連続点が高々可算であればベール級関数であることが知られているため、トマエ関数は一重極限表示をもつことを保証されます。しかし、あくまで一重極限表示の「存在」を保証するだけなので、「具体的な表示」が求まるとは限りません。なので、トマエ関数を「具体的に」一重極限表示を求めた研究や文献が既に発表されていてもおかしくありません。しかし、現在Google検索やMathOverflow(数学者が答えてくれる質問サイト)で頑張って探しているのですが見つからないんですよね(別名が多いので検索が大変)。もしかして一番乗りなんでしょうか?一番乗りなら調子に乗って論文書いちゃいますよ(ブログで公開してしまったけど)?本当は既出だが英語の論文でないから引っかからないんでしょうか?トマエ関数に関する先行研究についてご存知の方がいましたら教えていただけると幸いです。
Counterexamples in Analysisという本を購入して調べたところ、「連続関数の一様連続でない極限が連続でない例」の一つとしてトマエ関数が紹介されていました。
実はWikipediaに載ってないトマエ関数の性質(応用例)がもう一個あります(どんだけ好きやねん)。しかし、残念ながらこれはMathOverflowに載っていました。これは次回の記事で紹介する予定です。
限りなくどうでもいい一言
普段は一重だけど、アイプチ等を使わずに目をキリッとさせて
「ほら見て!二重!」
ってする女、めっちゃお茶目。
thank Q for rEaDing.φ(・▽・ )