MTToolBox
0.2.10
|
可約ジェネレータの状態遷移関数のパラメータを探索する。 [詳解]
#include <AlgorithmReducibleRecursionSearch.hpp>
公開メンバ関数 | |
AlgorithmReducibleRecursionSearch (ReducibleGenerator< U, V > &generator, AbstractGenerator< V > &bg) | |
コンストラクタ [詳解] | |
bool | start (int try_count) |
状態遷移パラメータの探索を開始する [詳解] | |
const std::string | getParamString () |
疑似乱数生成器のパラメータを表す文字列を返す このメソッドは start() が true を返した場合にのみ呼び出すべきである。 [詳解] | |
const NTL::GF2X & | getCharacteristicPolynomial () |
最小多項式を返す このメソッドは start() が true を返した場合にのみ呼び出すべきである。 [詳解] | |
const NTL::GF2X & | getIrreducibleFactor () const |
特性多項式のメルセンヌ指数次の大きな既約因子を返す このメソッドは start() が true を返した場合にのみ呼び出すべきである。 [詳解] | |
long | getCount () const |
このインスタンスが作られてからstart() が終了するまでに試行した回数を返す。 [詳解] | |
可約ジェネレータの状態遷移関数のパラメータを探索する。
GF(2)線形疑似乱数生成器の状態遷移関数の特性多項式が既約なメルセ ンヌ指数次の因子をもつをもつようなパラメータを探索する。
コンストラクタに与えるgenerator はこのクラスのstart()メソッドを 呼び出すと変更される。そしてstart()がtrueを返したなら、変更後の generatorはその状態遷移関数が既約な特性多項式を持つように変更さ れているはずである。従って変更後のgeneratorからパラメータを取得 することによって状態遷移関数が既約となるパラメータを取得できる。
U | 疑似乱数生成器の出力する値の型、符号なし型であること。 |
V | パラメータ生成用疑似乱数生成器の出力する値の型 |
|
inline |
コンストラクタ
このコンストラクタでは、状態空間の大きさがメルセンヌ指数より 少し大きい2のべき乗の場合を想定している。
bg はgenerator とは異なるインスタンスである必要がある。 通常の場合、bg にはMersenneTwisterのインスタンスを与えるとよい。 TinyMT では、規則的に減少する数列を使用している。
generator | generator はこのクラスのメソッドによって変更される。 |
bg | パラメータ探索に使用する疑似乱数生成器 |
|
inline |
最小多項式を返す このメソッドは start() が true を返した場合にのみ呼び出すべきである。
一般には最小多項式は初期状態と出力関数に依存するが、GF(2)線 形疑似乱数生成器の最大周期を与えるような最小多項式は一つであ る。
|
inline |
このインスタンスが作られてからstart() が終了するまでに試行した回数を返す。
|
inline |
特性多項式のメルセンヌ指数次の大きな既約因子を返す このメソッドは start() が true を返した場合にのみ呼び出すべきである。
|
inline |
疑似乱数生成器のパラメータを表す文字列を返す このメソッドは start() が true を返した場合にのみ呼び出すべきである。
|
inline |
状態遷移パラメータの探索を開始する
try_count | 試行回数の上限 |