void mtX_init_by_scalar(mtX_state_t* state, mtlite_result_type seed)
メルセンヌ・ツイスタの状態stateをスカラ値seedを用いて初期化する。
void mtX_init_by_array(mtX_state_t* state, const mtlite_result_type key[], unsigned int key_size)
メルセンヌ・ツイスタの状態stateを配列keyを用いて初期化する。key_sizeは配列の大きさである。
void mtX_init_by_iv(mtX_state_t* state, const mtlite_result_type iv[])
メルセンヌ・ツイスタの状態stateを初期ベクトルivのコピーで初期化する。ivはstate内の状態ベクトルと同一の大きさの配列であること。
スカラ値による初期化では単一のスカラ値を、配列による初期化では複数のスカラ値を入力として演算を行い、状態を初期化する。初期ベクトルによる初期化では、状態ベクトルと同一の大きさを持つ配列から値をコピーすることで初期化を行う。いずれの初期化方式についても、入力が同一であれば初期化後の状態が同一であることが保証される。
スカラ値による初期化は、単一のスカラ値だけで初期化を行えるため扱いが容易だが、選択可能な初期状態空間の大きさが232通りに制限される。選択可能な初期状態の数を232通りよりも大きくしたいときは、配列または初期ベクトルを用いて初期化する必要がある。初期ベクトルによる初期化では、任意の初期状態を選択することができる。
通常はすべての初期化関数がライブラリに組み込まれるが、configure実行時に--enable-initializationを指定した場合は選択したものだけが組み込まれる。