「リーマンゼータ関数と調律」の版間の差分
Tessyrrh1016 (トーク | 投稿記録) en:The Riemann zeta function and tuning (10:08, 12 August 2024) から翻訳して作成。まだ途中。 |
Tessyrrh1016 (トーク | 投稿記録) タグ: モバイル編集 モバイルウェブ編集 |
||
| (同じ利用者による、間の1版が非表示) | |||
| 13行目: | 13行目: | ||
==Gene Ward Smithによるオリジナルの導出== | ==Gene Ward Smithによるオリジナルの導出== | ||
===導出の準備=== | ===導出の準備=== | ||
''x'' をオクターブの等分割を表す変数であるとする。例えば、''x'' = 80 の場合、''x'' は 15 ¢ のステップサイズと純正なオクターブを持つ{{en仮リンク|80平均律|80edo}}であることを表す。''x'' は連続値でも良く、分数または「非オクターブ」の分割も表すことができるとする。例えば{{en仮リンク|ボーレン・ピアース・スケール|Bohlen-Pierce scale}}(3/1 の13等分、13EDT)は、「オクターブ」の約 8.202 等分であり(ただし、オクターブ自体はこのチューニングには現れない)、したがって、''x'' = 8.202 の値で表される。 | ''x'' をオクターブの等分割を表す変数であるとする。例えば、''x'' = 80 の場合、''x'' は 15 [[セント|¢]] のステップサイズと純正なオクターブを持つ{{en仮リンク|80平均律|80edo}}であることを表す。''x'' は連続値でも良く、分数または「非オクターブ」の分割も表すことができるとする。例えば{{en仮リンク|ボーレン・ピアース・スケール|Bohlen-Pierce scale}}(3/1 の13等分、13EDT)は、「オクターブ」の約 8.202 等分であり(ただし、オクターブ自体はこのチューニングには現れない)、したがって、''x'' = 8.202 の値で表される。 | ||
ここで ||''x''|| を、''x'' と ''x'' に最も近い整数との差を表すものとする。例えば、 ||8.202|| は 8.202 と最も近い整数である 8 との差であるため、0.202 となる。||7.95|| は 7.95 と最も近い整数である 8 との差なので 0.05 となる。数学的には、||''x''|| は床関数 <math>\lfloor \rfloor</math> を用いて関数 <math>\left| x - \left\lfloor x + | ここで ||''x''|| を、''x'' と ''x'' に最も近い整数との差を表すものとする。例えば、 ||8.202|| は 8.202 と最も近い整数である 8 との差であるため、0.202 となる。||7.95|| は 7.95 と最も近い整数である 8 との差なので 0.05 となる。数学的には、||''x''|| は床関数 <math>\lfloor \rfloor</math> を用いて関数 <math>\left| x - \left\lfloor x + 1/2 \right\rfloor \right|</math> と表せる。 | ||
どのような ''x'' の値に対しても、''p''-リミット{{en仮リンク|一般化パテントヴァル|Patent val}}(英: Generalized patent val)を構成できる。具体的には、''p'' 以下の素数 ''q'' について、log<sub>2</sub>(''q'') × ''x'' を最も近い整数に丸めたものが、''q'' に対応する値となる。つまり <math>\left\lfloor x \log_2{q} + | どのような ''x'' の値に対しても、''p''-リミット{{en仮リンク|一般化パテントヴァル|Patent val}}(英: Generalized patent val)を構成できる。具体的には、''p'' 以下の素数 ''q'' について、log<sub>2</sub>(''q'') × ''x'' を最も近い整数に丸めたものが、''q'' に対応する値となる。つまり <math>\left\lfloor x \log_2{q} + 1/2 \right\rfloor</math> である。 | ||
ここで、以下の関数を考える。<math>\mathbb{P}</math> を素数全体の集合とする。 | ここで、以下の関数を考える。<math>\mathbb{P}</math> を素数全体の集合とする。 | ||
| 31行目: | 31行目: | ||
''s'' が1より大きい場合これは収束する。ただしいくつかの調整が必要になる場合がある。まず調律が[[一貫性|一貫的]]であるのに十分なほど誤差が小さい場合、素数の2乗の誤差は素数の誤差の2倍になり、3乗の誤差は3倍になり、誤差が一貫的でなくなるまで続く。重み付けに対数が使用され、誤差測定値が一貫している場合、対数重み付けによってこの効果が打ち消されるため、素数べき乗が暗黙的にTenney–Euclidean測定値に含まれていると考えることができる。各素数べき乗 ''p''<sup>''n''</sup> に 1/''n'' をかけることで、それらを含めることができる。これを実行した結果を記述するためのやや独特だが便利な方法は、フォン・マンゴルト関数{{wikilink|フォン・マンゴルト関数}}を使用したものである。これは、素数べき乗 ''p''<sup>''n''</sup> では ln ''p'' に等しく、その他の場合は 0 となる正の整数上に定義される数論的関数{{Wikilink|数論的関数}}である。これは大文字のラムダを使用して Λ(n) と記述され、これを使って、誤差関数に素数べき乗を次のように含めることができる。 | ''s'' が1より大きい場合これは収束する。ただしいくつかの調整が必要になる場合がある。まず調律が[[一貫性|一貫的]]であるのに十分なほど誤差が小さい場合、素数の2乗の誤差は素数の誤差の2倍になり、3乗の誤差は3倍になり、誤差が一貫的でなくなるまで続く。重み付けに対数が使用され、誤差測定値が一貫している場合、対数重み付けによってこの効果が打ち消されるため、素数べき乗が暗黙的にTenney–Euclidean測定値に含まれていると考えることができる。各素数べき乗 ''p''<sup>''n''</sup> に 1/''n'' をかけることで、それらを含めることができる。これを実行した結果を記述するためのやや独特だが便利な方法は、フォン・マンゴルト関数{{wikilink|フォン・マンゴルト関数}}を使用したものである。これは、素数べき乗 ''p''<sup>''n''</sup> では ln ''p'' に等しく、その他の場合は 0 となる正の整数上に定義される数論的関数{{Wikilink|数論的関数}}である。これは大文字のラムダを使用して Λ(n) と記述され、これを使って、誤差関数に素数べき乗を次のように含めることができる。 | ||
: <math>\displaystyle \xi_\infty(x) = \sum_{n = | : <math>\displaystyle \xi_\infty(x) = \sum_{n = 2}^{\infty} \frac{\Lambda(n)}{\ln n} \frac{||x \log_2 n||^2}{n^s}</math> | ||
ここで、和は形式的にはすべての正の整数に対して取られるが、実際は素数とその累乗以外は0である。 | ここで、和は形式的にはすべての正の整数に対して取られるが、実際は素数とその累乗以外は0である。 | ||
| 37行目: | 37行目: | ||
上記の定義のもう一つの帰結として、滑らかな関数が望ましいのに不連続な導関数を持つ関数になるという点に異論があるかもしれない(詳細は[[Wikipedia:微分#連続性と可微分性]]を参照)。関数 ||''x''||<sup>2</sup> は ''x'' の整数値付近で二次増加し、周期1で周期的である。同じ特性を持つ別の関数で 1 − cos(2π''x'') がある。これは滑らかであり、実際は整関数{{wikilink|整関数}}である。そこで、任意の ''s'' > 1 について以下のように定義する。 | 上記の定義のもう一つの帰結として、滑らかな関数が望ましいのに不連続な導関数を持つ関数になるという点に異論があるかもしれない(詳細は[[Wikipedia:微分#連続性と可微分性]]を参照)。関数 ||''x''||<sup>2</sup> は ''x'' の整数値付近で二次増加し、周期1で周期的である。同じ特性を持つ別の関数で 1 − cos(2π''x'') がある。これは滑らかであり、実際は整関数{{wikilink|整関数}}である。そこで、任意の ''s'' > 1 について以下のように定義する。 | ||
: <math>\displaystyle E_s(x) = \sum_{n = | : <math>\displaystyle E_s(x) = \sum_{n = 2}^{\infty} \frac{\Lambda(n)}{\ln n} \frac{1 - \cos(2 \pi x \log_2 n)}{n^s}</math> | ||
任意の固定された ''s'' > 1 に対し、この関数はすべての ''x'' に対して定義された実解析関数{{wikilink|解析関数}}を与える。つまり、望んだ全ての滑らかさの特性を備えている。 | 任意の固定された ''s'' > 1 に対し、この関数はすべての ''x'' に対して定義された実解析関数{{wikilink|解析関数}}を与える。つまり、望んだ全ての滑らかさの特性を備えている。 | ||
| 43行目: | 43行目: | ||
この定義を整理すると、本質的に同じ関数が得られる。 | この定義を整理すると、本質的に同じ関数が得られる。 | ||
: <math>\displaystyle F_s(x) = \sum_{n = | : <math>\displaystyle F_s(x) = \sum_{n = 2}^{\infty} \frac{\Lambda(n)}{\ln n} \frac{\cos(2 \pi x \log_2 n)}{n^s}</math> | ||
この新しい関数は元の関数との間で <math>F_s(x) = F_s(0) - E_s(x)</math> という関係式が成り立ち、つまりこの関数は <math>E_s(x)</math> の符号を反転しそれを垂直方向に平行移動したものである。これで誤差が小さい場合、極小値になるのではなく極大値になるようになる。さらに興味深いのはこれが既知の数学関数であり、リーマンゼータ関数{{Wikilink|リーマンゼータ関数}}の対数の実部で表現できるという事実である。 | この新しい関数は元の関数との間で <math>F_s(x) = F_s(0) - E_s(x)</math> という関係式が成り立ち、つまりこの関数は <math>E_s(x)</math> の符号を反転しそれを垂直方向に平行移動したものである。これで誤差が小さい場合、極小値になるのではなく極大値になるようになる。さらに興味深いのはこれが既知の数学関数であり、リーマンゼータ関数{{Wikilink|リーマンゼータ関数}}の対数の実部で表現できるという事実である。 | ||