Loading article…

ファンデルコルプット数列は、単位区間上の最も単純な 1 次元の低乖離数列の例です 。1935 年にオランダの数学者JG ファンデルコルプットによって初めて記述されました。これは、自然数(1、2、3、…) の数列の基数n表現を逆にすることで構築されます。
正の整数の -進表現は、 数が表現される基数であり 、つまりの-進展開における -番目の桁です。ファンデルコルプット数列の -番目 の数は、
例
たとえば、10 進数のファンデルコルプット数列を得るには、まず 1 から 9 までの数字を 10 分の 1 ずつ ( ) 割り、次に分母を 100 に変更して 100 分の 1 ずつ ( ) 割り始めます。分子に関しては、10 から 99 までのすべての 2 桁の数字から始めますが、桁の順序は逆になります。その結果、分子は最後の桁でグループ化されます。まず、1 で終わる 2 桁の分子はすべて、次の分子は 01、11、21、31、41、51、61、71、81、91 です。次に、2 で終わる分子は 02、12、22、32、42、52、62、72、82、92 です。その後は、3 で終わる分子は 03、13、23 などです。
したがって、シーケンスは 10 進数表現で次のように始まります。
- 0.1、0.2、0.3、0.4、0.5、0.6、0.7、0.8、0.9、0.01、0.11、0.21、0.31、0.41、0.51、0.61、0.71、0.81、0.91、0.02、0.12、 0.22、0.32、…、
同じことは2進数体系でも可能で、2進数のファンデルコルプット数列は
- 0.1 2、0.01 2、0.11 2 、0.001 2 、 0.101 2、0.011 2 、0.111 2 、 0.0001 2、0.1001 2 、0.0101 2、0.1101 2、0.0011 2、0.1011 2、0.0111 2、0.1111 2、…
あるいは、同等に、
ファンデルコルプット列の要素(任意の基数)は、単位区間内で密な集合を形成します。つまり、 内の任意の実数に対して、その数に収束するファンデルコルプット列の部分列が存在します。また、それらは単位区間内で 等分布しています。
C実装
double corput ( int n 、int base ){ double q = 0 、bk = ( double ) 1 / base ;
n > 0の場合{ q += ( n %基数) * bk ; n /=基数; bk / =基数; }
q を返します。
参照
- ビット反転順列 – 2進数を反転する順列
- 低矛盾シーケンスの構成 – 数学的シーケンスの種類
- ハルトン数列 – 統計学で使用される数値数列の一種。ファンデルコルプ数列を高次元に自然に一般化したもの。
参考文献
- van der Corput、JG (1935)、「Verreilungsfunktionen (Erste Mittailung)」(PDF)、Proceedings of the Koninklijke Akademie van Wetenschappen te Amsterdam (ドイツ語)、38 : 813–821、Zbl 0012.34705
- カイパーズ、L. Niederreiter, H. (2005) [1974]、配列の均一分布、Dover Publications、p. 129,158、ISBN 0-486-45019-8、ZBL 0281.10001
外部リンク
- MathWorldの Van der Corput シーケンス
