キャリー付き乗算
の数列を持ち、x の出力列(右のレジスタ)の周期は4となる。
0 , 3 , 4 , 1 , 0 , 3 , 4 , 1 , 0 , 3 , 4 , 1 , ... {\displaystyle 0,3,4,1,0,3,4,1,0,3,4,1,\ldots }
x 0 = 1 {\displaystyle x_{0}=1} , c 0 = 3 {\displaystyle c_{0}=3} から始めると、MWC 列
x n = ( 7 x n − 1 + c n − 1 ) mod 10 , c n = ⌊ 7 x n − 1 + c n − 1 10 ⌋ , {\displaystyle x_{n}=(7x_{n-1}+c_{n-1})\,{\bmod {\,}}10,\ c_{n}=\left\lfloor {\frac {7x_{n-1}+c_{n-1}}{10}}\right\rfloor ,}
は連結レジスタ上で
31 , 10 , 01 , 07 , 49 , 67 , 55 , 40 , 04 , 28 , 58 , 61 , 13 , 22 , 16 , 43 , 25 , 37 , 52 , 19 , 64 , 34 , 31 , 10 , 01 , 07 , . . . {\displaystyle 31,10,01,07,49,67,55,40,04,28,58,61,13,22,16,43,25,37,52,19,64,34,\,31,10,01,07,...}
x n = ( b − 1 ) − ( a x n − r + c n − 1 ) mod b , c n = ⌊ a x n − r + c n − 1 b ⌋ {\displaystyle x_{n}=(b-1)-(ax_{n-r}+c_{n-1})\,{\bmod {\,}}b,\ c_{n}=\left\lfloor {\frac {ax_{n-r}+c_{n-1}}{b}}\right\rfloor }
つまり、新しい x を作る際に、補数 (b − 1) − x を使うのである。
CMWC 生成器により作られる数列 x の周期は ab + 1 を法とする剰余の乗法群における b の位数になり、x を逆順にしたものは、ある 0 < j < ab において j/(ab + 1) の基数 b での小数部と一致する。
lag-r CMWC を使うと、r が 512, 1024, 2048 と大きくなっても、簡単に周期を求める事ができる。(r を 2 の累乗にすると、r 個の最新の x を保持する配列内の要素へのアクセスが若干簡単に(そして速く)なる。)
以下に、いくつかの例を示す。
b=2 の時、lag-1024 CMWC