CN103135961A - 基于具有两个奇素因子的模数生成乘同余随机数的方法 - Google Patents

基于具有两个奇素因子的模数生成乘同余随机数的方法 Download PDF

Info

Publication number
CN103135961A
CN103135961A CN2012102495669A CN201210249566A CN103135961A CN 103135961 A CN103135961 A CN 103135961A CN 2012102495669 A CN2012102495669 A CN 2012102495669A CN 201210249566 A CN201210249566 A CN 201210249566A CN 103135961 A CN103135961 A CN 103135961A
Authority
CN
China
Prior art keywords
modulus
integer
mod
multiplier
odd
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN2012102495669A
Other languages
English (en)
Inventor
中泽宏
中泽直也
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to CN2012102495669A priority Critical patent/CN103135961A/zh
Publication of CN103135961A publication Critical patent/CN103135961A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/582Pseudo-random number generators
    • G06F7/586Pseudo-random number generators using an integer algorithm, e.g. using linear congruential method

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)

Abstract

用于获得均匀分布且独立的随机数的方法通过下述方式获得:1、获得两个截然不同的奇质数p1、p2,并获得整数指数i1≥1和整数指数i2≥1,该两个奇质数给出奇数整数q1=(p1-1)/2以及偶数整数q2=(p2-1)/2,
Figure DDA00001902365200011
Figure DDA00001902365200012
互质,2、形成模数
Figure DDA00001902365200013
3、获得降低的剩余类群中的生成器z1
Figure DDA00001902365200014
以及降低的剩余类群中的生成器z2
Figure DDA00001902365200015
并且给出同余关系
Figure DDA00001902365200016
Figure DDA00001902365200017
或者同余关系
Figure DDA00001902365200018
任一所述同余关系确定了唯一模所述d的乘数z;以及4、获得与所述
Figure DDA000019023652000110
互质的初始值n。该方法通过同余关系r1≡nmod(d),rj+1≡zrjmod(d),0<rj<d,
Figure DDA000019023652000111
递归地生成整数序列
Figure DDA000019023652000112
并且给出{v1=r1/d,v2=r2/d,...}作为针对均匀分布且独立的随机数的输出,其中对于l=2和l=3,第l度频谱测试的被查明的性能

Description

基于具有两个奇素因子的模数生成乘同余随机数的方法
技术领域
本发明涉及在计算机上获得均匀分布且独立的随机数的方法。特别地,该方法涉及乘同余生成器,包括:
1、称为模数的正整数d,
2、与d互质(即与d不共享公共的素因子)的称为乘数的正整数z,以及
3、与d互质的称为初始值或种子的正整数n,
该生成器通过递归同余关系生成一整数序列{r1,r2,r3,...}:
r1≡nmod(d),rj+1≡zrjmod(d),0<rj<d,j=1,2,3...,
并通过实现以下算法来给出位于区间(0,1)内的有理数输出序列{v1,v2v3,…}:
vj:=rj/d    j=1,2,3...。
与将奇质数用作模数d(即d=p)或者将2的幂用作模数d(即d2i,其中i是大的指数)的现有技术不同,本发明基于对组分d的可构想候选的调查以及特别基于对根据频谱测试的新计算获得的数的新观点来将(其中,i1,i2=1,2,...)形式的包括截然不同的奇质数p1、p2的两个幂的模数选作用于长周期和用于所生成的数的独立性的最恰当的模数。通过开发诸如天河-1A之类的高速计算机,对于量级为273或更高量级的长周期而言,当前存在着对随机数生成器的迫切需求。通过对选择奇质数以及设计相关联的乘数的适当指示,本发明将致力于向任何计算机和任何操作系统可行地配备具有足够长的周期和经测试的统计高质量的、具有均匀分布且独立的随机数的生成器。
背景技术
计算机上的随机数序列需要具有再现性和可传输性来调试仿真程序。再现性是相同的随机数序列可以由用户要求来生成的性质。可传输性指的是一个和同一序列的随机数的生成传输到任何计算机或计算机语言。
由于仿真所需的大量的随机数从来不需要存储在存储器中,所以剩下的唯一可能的方式是用于顺序地生成随机数的计算过程。再现性和可传输性的要求将该过程局限于整数算法,该整数算法本质上在任何计算机上和任何计算机语言中没有截断误差和舍入误差。因此计算机上的均匀分布随机数序列排他地由某些算法实现为位于[0,z}范围内的整数序列{x1,x2,...},其中z为大的但有限的整数,并且应当在每次使用时通过除法变换{u1=x1/z,u2=x2/z,...}变换成位于[0,1}范围内的有理数输出序列{uj|j=1,2,...}。
对于任意正整数z和T而言,由[0,z}内的任意零或正整数构成的任意序列{x1,x2,...,xT}可以连接起来形成周期为T的z基数值序列:
x=x0.x1x2…xTx1x2…xT…=x0+x1/z+x2/z2+x3/z3+…
其中被添加以便以后方便的任意整数x0作为x的整数部分。排除整数{x1,x2,...,xT}都为零或都为
Figure BDA00001902365100021
的不感兴趣的情况,所述x是(x0,x0+1)内的有理数,并且具有以下表达式:
x=(x0zT+x1zT-1+x2zT-2+…+xT)/(zT-1)=n/d
其中,n/d表示不可约分数,其中x0d<n<(x0+1)d。由于d除以zT-1,所以z与d互质。这样,[0,z}内的任意长度为T的整数序列{x1,x2,...,xT}(其可以是计算机上的任意随机数生成器的输出或者从离散精度为1/z的自然或物理均匀分布随机数获得的长度为T的序列)就具有与数值序列的小数部分的周期的明显的对应性以使z基于任意选择的整数部分x0,从而表示区间(x0,x0+1)内的不可约分数n/d,其中z和n都与d互质。
不可约分数n/d(其中,n>0)的z基除法过程以等式和不等式表示:
r1=n-x0d,rj+1=zrj-xjd,0<rj<d,j=1,2,3,...,
其中,{rj|j=1,2,...}是除不尽的除法(因为n、z都与d互质)的余数。用zd来除等式r2,r3,...,则得到:
0<rj/d-xj/z=rj/d-uj=(rj+1/d)(1/z)<1/z,uj:=xj/z,j=1,2,3,...。因此,不管[0,1)内的数字{u1=x1/z,u2=x2/z,u3=x3/z,…}是通过一些计算方法创建还是从任意物理随机数获得,其都被具有不可约分数n/d的z基除法过程的余数所形成的序列{v1=r1/d,v2=r2/d,v3=r3/d,…}的数字近似在一致误差界限1/z内,如果允许分母d是与基数z互质的任意正整数。
z基除法n/d的余数序列{r1,r2,r3,...}看起来具有下面的表达式:
{rj≡nzj-1mod(d)|0<rj<d,j=1,2,...}
如果d是奇质数或者2的大幂2i,则序列{v1=r1/d,v2=r2/d,…}精确地为模数为d的乘同余数随机数序列,其由乘数z生成并针对初始值(或种子)n。所提到的近似仅是除法过程中我们的普通经验的再次声明,即小的余数会给出小的下一商数。然而,该意识给予了一抓住具有乘同余生成器的清晰结构的均匀分布且独立的随机数序列的不稳定概念的宝贵机会,如果仅它们的模数被允许混合。本发明基于这个观点,并且致力于找到复合模数(compositemodulus)d和关联的乘数z的计算优化形式。
通过分解成素因子,复合模数d的最通用形式为:
d = p 1 i 1 p 2 i 2 &CenterDot; &CenterDot; &CenterDot; p s i s , ik≥1,1≤k≤s
我们提出采用由两个奇素因子形成的
Figure BDA00001902365100032
作为技术上最希望的形式,包括由Nakazawa和Nakazawa(2008)提出的最简单的d=p1p2的情况。整个问题的核心是深远的孙子定理(即中国的余数定理),其在下面被总结为定理2以便后续使用方便。我们确认一个推论。
推论1令整数d>0作为模数,并且x,x′,y,y′是满足下述情况的整数:
x≡x′mod(d)和y≡y′mod(d)。则:
x+y≡x'+y≡x+y'≡x'+y',
x-y≡x'-y≡x-y'≡x'-y'
xy≡x'y≡xy'≡x'y'
保持了真模数(true modulus)d。即,任意加法和乘法算术运算中的整数都可以用其等值形式任意替换,从而保存了等值关系。
(证明)假设y≡y′mod(d)暗示y′=y+Ad,其中A为整数。因此
x+y′x+y+Ad≡x+ymod(d)
保持真。其他关系,诸如xy′xy+xAd≡xymod(d)将是显而易见的。
定理2令d1、d2是互质的整数并定义d:=d1d2
(A)存在着d1的逆d2 -1模d2以及d1的d1 -1模d2,即整数d2 -1、d1 -1给出:
d 2 - 1 d 2 &equiv; 1 mod ( d 1 ) , d 1 - 1 d 1 &equiv; 1 mod ( d 2 )
(B)存在着整数U1和U2,其单独由d1和d2确定并且其唯一模d并具有属性:
Uk≡δklmod(d1),1≤k,l≤2
这里以及下文中,符号1≤k、l≤2将暗示1≤k≤2和I≤l≤2。
(C)令z1、z2是任意整数。对于同余关系:
z≡z1mod(d1),z≡z2mod(d2)
存在着唯一模d的解z。z的显形式是:
z≡z1U1+z2U2mod(d)
其中整数U1和U2是(B)中的U1和U2
(D)令整数x、y是同余关系的解:
x≡x1mod(d1),x≡x2mod(d2),
y≡y1mod(d1),y≡y2mod(d2)。
通过采用(B)的U1和U2,以下同余关系保持真:
x+y≡(x1+y1)U1+(x2+y2)U2mod(d),
x-y≡(x1-y1)U1+(x2-y2)U2mod(d),
xy≡(x1y1)U1+(x2y2)U2mod(d),
(证明)(A)由于d1、d2互质,欧几里得算法确保了整数D1、D2的存在,使得下述等式保持真:
GCD(d1,d2)=1=D1d1+D2d2
定义整数d2 -1:=D2+Ad1,其中A为任意整数,这暗示着d2 -1:≡D2mod(d1)。从而保持:
d 2 - 1 d 2 = D 2 d 2 + A d 1 d 2 = 1 - ( D 1 - A d 2 ) d 1 &equiv; 1 mod ( d 1 )
类似地,定义d1 -1:=D1+Bd2,其中B为任意整数,或者定义d1 -1:≡D1mod(d2),则得到:
d 1 - 1 d 1 &equiv; d 1 D 1 = 1 - D 2 d 2 &equiv; 1 mod ( d 2 ) .
因此得到所述的逆d2 -1mod(d1和d1 -1mod(d2)。
(B)令D2≡d2 -1mod(d1)并定义U1:≡D2d2mod(d)。则得到:
U1≡1mod(d1),U1≡0mod(d2)
假设该同余关系系统具有另一解V1。则保持:
U1-V1≡1-1=0mod(d1),U1-V1≡0-0=0mod(d2)
这暗示U1-V1是彼此互质的d1和d2的公共倍数。因此,U1-V1是LCM(d1,d2)=d1d2=d的倍数,V1≡U1mod(d)保持真,或者U1唯一模d。当定义D2:≡d1 -1mod(d2)以及U2:≡D2d2mod(d)时,情况相同。
(C)通过采用(B),存在着所述的同余关系的解z1U1+z2U2。假设存在另一解y,则如同(B)中一样,得到x-y≡0mod(d)。
(D)通过(B),表达式x≡x1U1+x2U2和y≡y1U1+y2U2保持真模d。容易证明x±y的表达式。得到:
U 1 2 &equiv; U 1 mod ( d ) , U 2 2 &equiv; U 2 mod ( d ) , U1U2≡0mod(d),
并且xy的表达式如下所述。通过指出通过同余关系的非常特性而使下述系统保持并应用(C),能够得到可替换的证明:
x±y≡xk±ykmod(dk),xy≡xkykmod(dk),k=1,2
Nakazawa和Nakazawa(2008)H.Nakazawa and N.Nakazawa:Designs ofuniform and independent random numbers with long period and high precisionControl of the sequential geometry through product group structures and latticeconfigurations-.(URL)http://www10.plala.or.jp/h-nkzw/(3978erv.pdf/March9-July8,2008)。孙子定理及其重要暗示的更一般的形式可以在该报告中看到。
Figure BDA00001902365100061
表示与整数d互质的整数的集合,即与d不共享公共素因子的整数的集合。
Figure BDA00001902365100062
中的两个整数x、y给出再次与d互质的z=xy:对于乘法而言,集合
Figure BDA00001902365100063
是闭集。引入等值模d使得
Figure BDA00001902365100064
由至多d-1个非等值整数类构成,并且
Figure BDA00001902365100065
是由等值类模d构成的有限集。集合
Figure BDA00001902365100066
中的非等值类的数字#
Figure BDA00001902365100067
称为d的欧拉函数并被表示为
Figure BDA00001902365100068
显然,
Figure BDA00001902365100069
保持真。由于1与任何整数d互质,所以保持
Figure BDA000019023651000610
由于任何整数
Figure BDA000019023651000611
都通过定义而与d互质,所以定理2(A)确保了给出xx-1≡1mod(d)的
Figure BDA000019023651000612
的存在。因此,对于任何正整数d,等值类整数的集合
Figure BDA000019023651000613
是量级(元素数量)
Figure BDA000019023651000614
的群,并且称为降低的剩余类群模d。
如果p是质数,则群
Figure BDA000019023651000615
中的非等值类整数可以由{1,2,...,p-1}表示。对于质数p甚至对于除了
Figure BDA000019023651000616
之外的任何质数p≥3而言,该事实给出了
Figure BDA000019023651000617
如果pi是质数p的幂,其中i≥1,则
Figure BDA000019023651000618
可由区间[1,pi)中除了lp,2p,...,(pi-1-1)p之外的整数表示。这证明:
Figure BDA000019023651000619
i=1,2,...,
即使对于任意的奇质数p也是如此。
考虑将模数分解成两个互质整数d1、d2,即d=d1d2。如果整数z与该d互质,则z与d1和d2都互质。因此
Figure BDA00001902365100071
Figure BDA00001902365100072
保持真。对于任何
Figure BDA00001902365100073
定义f到矢量(z,z)的映射:
f : z &Element; Z d 1 d 2 * &RightArrow; ( z , z ) &Element; Z d 1 * &times; Z d 2 *
通过z1≡z mod(d1)和z2≡z mod(d2)来分别选择z1和z2。映射f获得了任意表示z1、z2的更无限制的表现:
f ( z ) &equiv; ( z , z ) &equiv; ( z 1 , z 2 ) &Element; Z d 1 * &times; Z d 2 * mod ( d 1 , d 2 )
这里和下文中,从等值模d1和d2的意义上说,符号mod(d1,d2)用于分别取得矢量(z1,z2)的第一和第二整数。通过定义,f将映射到积集
Figure BDA00001902365100077
的元素;因此范围
Figure BDA00001902365100078
Figure BDA00001902365100079
的子集。孙子定理证明f是一对一映射,即存在着确保
Figure BDA000019023651000710
的逆映射实际上,任意的对
Figure BDA000019023651000712
都给出同余关系:
z≡z1mod(d1),z≡z2mod(d2),
从而解z存在着通过定理2(C)得到的唯一的模d=d1d2。由于上述同余关系要求:
GCD(z,d1)=GCD(z1,d1)=1,GCD(z,d2)=GCD(z2,d2)=1,
所以z位于
Figure BDA000019023651000713
内。因此,内的任何(z1,z2)都对应于给出f(z)≡(z1,z2)mod(d1,d2)的唯一的由孙子定理确保的该对应性是f的逆映射f-1
令d1和d2互质。获取积集
Figure BDA000019023651000716
中的任意元素(x1,x2)和(y1,y2),并定义它们的积为:
(x1,x2)(y1,y2):≡(x1y1,x2y2)mod(d1,d2)。
可以很容易看出,
Figure BDA000019023651000717
是关于与等式e≡(1,1)mod(d1,d2)和逆(z1,z2)-1≡(z1 -1,z2 -1)mod(d1,d2)的乘法的群。因此定理2(D)阐述了群具有所谓的直积分解:
辅助定理3如果d1和d2互质,则映射f是
Figure BDA00001902365100081
与直积群
Figure BDA00001902365100082
之间的群同构。如果
Figure BDA00001902365100083
给出f(z)≡(z1,z2)mod(d1,d2),则逆映射f-1的形式为:
f-1(z1,z2)≡z1U1+z2U2mod(d),d=d1d2
其中整数U1、U2在定理2(A)中由d1和d2确定。
(证明)如上所述,映射f:是一对一的映射。对于任意的x≡(x1,x2)mod(d1,d2)和y≡(y1,y2)mod(d1,d2),定理2(D)还给出:
f(xy)≡(xy,xy)≡(x1y1,x2y2)≡(x1,x2)(y1,y2)≡f(x)f(y)mod(d1,d2),
从而证明f是群同构。f-1的形式在定理2(C)中给出。
辅助定理3暗示被f一对一映射的两个有限群具有相同数量的元素,或者具有相同的量级。显然,乘积群
Figure BDA00001902365100085
的量级是非等值矢量(z1,z2)模(d1,d2),即
Figure BDA00001902365100086
的数量。这证明:
推论4欧拉函数具有乘法性质。即对于任意的互质正整数d1、d2,保持
Figure BDA00001902365100087
Figure BDA00001902365100088
(推论4结束)
令模数d被分解为d=d1d2...ds,其中整数d1,d2,...,ds是配对互质的,或者它们中的每一者与其他者之间不共享公共的素因子。上面所述的论证能够通过归纳而容易地扩展到这种情况。即,从任意整数
Figure BDA00001902365100089
到s维矢量(z1,z2,...,zs)mod(d1,d2,...,ds),存在着一对一的映射对应性f:
f ( z ) &equiv; ( z 1 , z 2 , &CenterDot; &CenterDot; &CenterDot; , z s ) &Element; Z d 1 * &times; Z d 2 * &times; &CenterDot; &CenterDot; &CenterDot; &times; Z d s * mod ( d 1 , d 2 , &CenterDot; &CenterDot; &CenterDot; , d s )
存在着由集合{d1,d2,...,ds}确定的整数{U1,U2,...,Us},其性质为:
Uk≡δklmod(dl),1≤k,l≤s,
并给出了f-1的表达式:
z≡f-1((z1,z2,...,zs))≡z1U1+z2U2+...+zsUsmod(d)
如果
Figure BDA000019023651000811
具有下述表达式:
x≡x1U1+x2U2+...+xsUsmod(d)或者x≡xkmod(dk)(1≤k≤s),
y≡y1U1+y2U2+...+ysUsmod(d)或者y≡ykmod(dk)(1≤k≤s),则保持:
x±y≡(x1±y1)U1+(x2±y2)U2+...+(xs±ys)Usmod(d)
其中通过f-1得到的群同构的表达式为:
xy≡x1y1U1+x2y2U2+...+xsysUs mod(d)
相应地,欧拉函数采用通常的乘法形式:
Figure BDA00001902365100091
任意的模数d都由分解素因子表征:
d = p 1 i 1 p 2 i 2 &CenterDot; &CenterDot; &CenterDot; p s i s , ik≥1,1≤k≤s
其中质数p1,p2,...,ps不同。该段落的之前陈述都可以应用于该情况,并且给出了降低的剩余类群
Figure BDA00001902365100093
的通用结构:
f ( Z p 1 i 1 p 2 i 2 &CenterDot; &CenterDot; &CenterDot; p s i s * ) &equiv; Z p 1 i 1 * &times; Z p 2 i 2 * &times; . . . &times; Z p s i s * mod ( p 1 i 1 p 2 i 2 &CenterDot; &CenterDot; &CenterDot; p s i s )
其中欧拉函数的一般公式为:
Figure BDA00001902365100096
为了减少记号困难,我们将在适当的地方采用下面的缩写:
&pi; k : = p k i k , &pi; &OverBar; k : = p k i k - 1 , qk:=(pk-1)/2,k=1,2,...。
在这些表达方式中,同构及欧拉函数的表达采取下面的形式:
Figure BDA000019023651000910
我们主要关心的是质数{pk|1≤k≤x}都为奇数。出于该原因,请查看Nakazawa和Nakazawa(2008),其中具有明显的证据。在这些情况中,所以的{qk|1≤k≤s}都是整数。然而,上面所述的表达式是有效的,包括p1=2和q1=1/2的情况在内。
恢复由互质正整数d1、d2构成的形式为d=d1d2的复合模数。由
Figure BDA00001902365100101
中的乘数z和种子n生成的乘同余序列n<z>具有下面的特性,其中表达式的周期为T。
辅助定理5令互质正整数d1、d2是任意的。假设任意乘数
Figure BDA00001902365100102
和任意种子
Figure BDA00001902365100103
的分解为:
z≡z1mod(d1),z≡z2mod(d2);n≡n1mod(d1),n≡n2mod(d2)。
Figure BDA00001902365100104
中的乘同余序列n<z>具有下面的表达式:
{ nz j &equiv; n 1 z 1 j U 1 + n 2 z 2 j U 2 mod ( d ) | j = 0,1,2 , &CenterDot; &CenterDot; &CenterDot; }
序列n<z>的周期T由下式给出:
T=LCM(T1,T2)=T1T2/GCD(T1,T2)
其中,Tk(k=1,2)是分量群
Figure BDA00001902365100106
中的循环序列<zk>的量级或周期。
(证明)通过采用上面阐述的形式,现在知道同构f,即
f ( n < z > ) : &equiv; { f ( nz j ) | j = 0,1,2 , &CenterDot; &CenterDot; &CenterDot; }
&equiv; { ( n 1 z 1 j , n 2 z 2 j ) mod ( d 1 , d 2 ) | j = 0,1,2 , &CenterDot; &CenterDot; &CenterDot; }
可以给出到n<z>的逆映射f-1。矢量
Figure BDA00001902365100109
模(d1,d2)的周期为LCM(T1,T2),并且这是序列n<z>的周期T。
在辅助定理5中阐述的结果可以再次被归纳地扩展到由配对互质的正整数d1,d2,...,ds构成的模数d=d1d2...ds,其中,s≥3。或者,对该情况的直接考虑是简单的并且可以在Nakazawa和Nakazawa(2008)中找到。这里我们不加证明的概括出推论形式的直觉结果。
推论6令模数d的形式为d=d1d2...ds,其中d1,d2,...,ds是配对互质的正整数。令乘数z和种子n位于群
Figure BDA000019023651001010
中,其中
z≡zkmod(dk),n≡nkmod(dk),k=1,2,...,s。
Figure BDA000019023651001011
中的乘同余序列n<z>具有下面的表达式:
{ nz j &equiv; n 1 z 1 j U 1 + n 2 z 2 j U 2 + &CenterDot; &CenterDot; &CenterDot; + n s z s j U s mod ( d ) | j = 0,1,2 , &CenterDot; &CenterDot; &CenterDot; }
n<z>的周期T采用下面的公式:
T=LCM(T1,T2,...,Ts)≤T1T2...Ts/GCD(T1,T2,...,Ts),
其中Tk=ord(zk)(k=1,2,...,s)是模数dk上的分量序列nk〈zk>的周期。(推论6结束)
上面的推论6揭示了针对任意复合模数d=d1d2...ds的乘同余序列n<z>在结构上是分量序列{nj<zj>}的慢慢移动(随机数理论的术语)。该概述是基础的。例如,它使我们明确地理解到针对独立随机数的模数d从来不应当同时包括奇质数和2i,其中i≥2,如在Nakazawa和Nakazawa(2008)中阐述的那样。因此,模数d=2i应当被隔离使用。这种必要性使得给模数d=2i造成了困难。对z的所有候选都进行扫描的频谱测试对于找到很好的乘数而言是必不可少的,如由Fishman和Moore在1986年以及由Fishman在1990年决然示出的那样。然而,对具有仿真所期望的幅度(例如目前为d=273或更大)的模数d=2i的这种测试在计算上是很难实现的。这种情况不能通过采用高速计算机器进行改善。本发明在有两个或更多个奇质数幂形成的模数方面的努力旨在在采用最小可能的牺牲的情况下,消除这种坦塔罗斯(Tantalus)惩罚。另一决定性结果将不久获得。
G.S.Fishman和L.R.Moore:“An exhaustive analysis of multiplicativecongruential random number generators with modulus231-1.”SIAM Journal onScientific and Statistical Computing Vol.7(1986),pp.24-45.
G.S.Fishman:“Multiplicative congruential random number generators withmodulus2β:An exhaustive analysis forβ=32and a partial analysis forβ=48,”Mathematics of Computation54(1990),pp.331-344.
循环序列的周期是循环子群<z>或其陪集n<z>的量级。存在着称为循环群的群的有效类,在这些群中的任意群中,特定元素z生成用于巡回整个群元素的循环序列<z>。这种元素称为该循环群的生成器。关于降低的剩余类群模数d,已知周期
Figure BDA00001902365100111
的情况被下面给出的列表耗尽:
1.d=2,4;排除d=2i(i≥3)的情况。
2.d=pi,其中p为奇质数,i为任意整数即i=1,2,...。
3.d=2pi,其中p为奇质数并且i为任意整数即i=1,2,...。
因子2i(其中i≥2)被排除在对随机数具有重要性的复合模数之外,因此情况1不是我们关心的。对于情况3,我们注意到
Figure BDA00001902365100121
是没有意义的群{1},并且任意的
Figure BDA00001902365100122
通过采用z′≡z mod(pi)被f同构地映射到矢量
Figure BDA00001902365100123
Figure BDA00001902365100124
这解释了为什么除了情况2之外情况3也是循环的。该结构的优点是不清楚的,因此我们忽略这种情况。情况2是我们需要的。采用下面的模数:
d = p 1 i 1 p 2 i 2 &CenterDot; &CenterDot; &CenterDot; p s i s = &pi; 1 &pi; 2 &CenterDot; &CenterDot; &CenterDot; &pi; s , ik≥1,1≤k≤s
其中奇质数p1,p2,...,ps不同。相应的直积分解为:
f ( Z d * ) &equiv; Z p 1 i 1 * &times; Z p 2 i 2 * &times; . . . &times; Z p s i s * mod ( p 1 i 1 p 2 i 2 &CenterDot; &CenterDot; &CenterDot; p s i s )
因此参考对循环群的直积的分解。这使得我们有必要将注意力集中在循环群
Figure BDA00001902365100127
的一些结构,其中p为奇质数,指数i≥1。之前我们注意到的生成器也称为质数p的原根。对于具有
Figure BDA00001902365100129
的生成器而言,名称原根的联合使用有时是能够看到的。从模数p的角度看,鉴于生成器z模pi不可改变生成器的事实,该使用是自然的,因此原根也是自然的。我们将或多或少地做出区别,并将名称生成器z用于d=pi(其中,i≥1)的情况。
循环群的一般特征在下面应用于
Figure BDA000019023651001210
的形式中被指出。
辅助定理7令p是与整数q:=(p-1)/2互质的奇质数,并且z是循环群(其中,指数i≥1,量级
Figure BDA000019023651001212
的生成器。
(A)元素具有ord(zj)=T/GCD(T,j)的量级。
(B)zj成为生成器的充分必要条件是GCD(T,j)=1。
(C)中的任意整数的量级是
Figure BDA000019023651001215
的除数,它们可以以如下的降序进行对准:
T=2qpi-1,T/2=qpi-1,...,2,1
(D)对于T的每个因子k,在
Figure BDA00001902365100131
中存在着整数的
Figure BDA00001902365100132
等值类,其量级为k。特别的,存在着
Figure BDA00001902365100133
生成器。
(E)如果
Figure BDA00001902365100134
具有偶量级k=ord(z),则zk/2≡-1mod(pi)保持真。
(证明)(A)如果整数k>0给出(zj)k=zjk≡1mod(pi),则jk是生成器z的量级T的倍数。这种k的最小值是ord(zj)=T/GCD(T,j)。
(B)通过(A),这是显然的。
(C)该断言是有力的拉格朗日定理:对于任意有限群G的任意元素z,针对G的任意元素n的循环子群<z>及其陪集n<z>具有相同数量的元素并且均匀地划分所有群元素而不必进行并结合。因此,n<z>的量级k是群G的量级T的除数。群
Figure BDA00001902365100135
具有偶量级其最大的除数是T=2qpi-1自身。接下来的最大除数是其一半。第三最大除数依赖于情况。针对任意d>0的群
Figure BDA00001902365100137
将-1≡d-1mod(d)作为它的成员,并且在循环
Figure BDA00001902365100138
的情况中,具有第二最小量级2的唯一成员是-1;请见(E)的证明。如果群不是循环的,则可以存在着具有量级2的其他成员,诸如
Figure BDA00001902365100139
中的3和5。具有最小量级1的等式1总是存在的。
(D)具有量级k的整数
Figure BDA000019023651001310
存在,作为示例示出z′≡zT/k mod(pi)。问题是列举。通常令z′≡zjmod(pi),1≤j≤T。通过(A),当并且仅当条件k=T/GCD(T,j)得到满足的情况下,z′具有量级k。定义k′:=T/k或者kk′=T。针对j的条件则是k=kk′/GCD(kk′,j)或者k′=GCD(kk′,j)。对此的充分必要条件是j的形式为j=k′j′,其中整数j′与k互质并且位于范围1≤j=k′j′≤T=kk′或者0<j′≤k。这种j′的数量精确为
Figure BDA000019023651001311
k=T的特殊情况给出
Figure BDA000019023651001312
的生成器的数量为
Figure BDA000019023651001313
这也可以通过(B)直接推导。
(E)令y≡zT/2mod(d),则d=pi。显然,y的量级是2,其中通过(D),群
Figure BDA00001902365100142
具有元素
Figure BDA00001902365100143
其中量级为2,并且-1≡d-1mod(d)是这样一种元素。因此,y≡zT/2≡-1mod(d)保持真。
辅助定理(7)中几乎微不足道的(B)在此被指出,因为其具有重大意义。如Fishman和Moore在1986年做出的巨大工作中决然显示的那样,好的乘数仅能够通过对循环群的所有生成器执行全面的频谱测试才能够找到。为此目的,我们考虑的在
Figure BDA00001902365100144
中的编程的实际方式是找到最小的生成器z,以顺序地计算zj(其中,j=1,2,...),并且如果GCD(2qpi-1,j)=1,则将zj作为将被频谱测试的另一生成器。
最后,我们应当注意到对设计乘同余生成器的重要技术要求。在该段落中,我们假设d≥3,从而排除d=2的无意义的情况。整数-1≡d-1mod(d)总是与d互质,并且形成群
Figure BDA00001902365100145
的成员。
推论8令乘数
Figure BDA00001902365100146
生成量级为T的循环子群或者周期为T的循环序列<z>,其中d≥3。如<z>包括-1作为它的成员,则在zT/2≡-1mod(d)的情况下T是偶数,并且针对任意种子
Figure BDA00001902365100147
的乘同余序列n<z>的使用应当局限于长度T/2作为独立随机数。
(证明)循环子群<z>的整数{z,z2,...,zT-1,zT}模d都是不相等的。由于假设-1是<z>的成员,所以存在着给出-1≡zjmod(d)的索引j,其中0<j<T,这暗示着(zj)2≡z2j≡1mod(d),其中0<2j<2T。因此2j=T应当是这种情况,并且在j=T/2的情况下,T是偶数。对于任意种子
Figure BDA00001902365100148
显形式的陪集序列可以采用如下形式:
n<z>≡{n,nz,…,nzT/2-1,nzT/2≡-n,-nz,…,-nzT/2-1}mod(d),
并且其第二半部分实际是第一半部分的重复。因此,n<z>的仅半部分可以用作独立随机数。
注意,推论8的结论应用于模数d=pi中的生成器乘数z的情况,其中p为奇质数,指数i≥1;任意这样的p、z、i给出:
- 1 &equiv; p i - 1 &equiv; z 2 q p i - 1 / 2 = z qp i - 1 mod ( p i ) ,
并且n<z>的单独使用落入推论8的范围内。值得提出的是,陪集序列n<z>的相同部分重复出现的问题在其用作形成复合模数序列的直积的分量时被消除;公式:
nz j &equiv; &Sigma; k = 1 s n k ( z k ) j U k mod ( d = d 1 d 2 &CenterDot; &CenterDot; &CenterDot; d s )
显示右手边的慢慢移动解决了分量序列{nk<zk>|1≤k≤s}中的相同部分重复出现的问题,虽然该问题在得到的序列n<z>中仍然存在。为了解决该问题,我们在模数d的情况下引入了针对乘数z的因子η(z,d):
定义9对于任意模数d和任意元素
Figure BDA00001902365100153
因子η(z,d)被定义为:
Figure BDA00001902365100154
我们现在在报告通常的复合模数d及其乘数z的形式,它们被找到以给出最大有效周期。首先在由奇质数p的特定类形成的模数d=pi的情况下,准备关于乘数z的结构的推论。
推论10令p是给出奇数q:=(p-1)/2或者满足p≡3mod(4)的奇质数,并且令索引i≥1是任意的。定义群中的生成器的集合S和具有半全量级ord(z′)=qpi-1的整数
Figure BDA00001902365100156
的集合S′。从而得到集合方程为:
-S:={z′≡-z mod(pi)|z∈S}=S′,
-S:={z≡z′mod(pi)|z′∈S′}=S。
(证明)令z是循环群
Figure BDA00001902365100157
中的生成器,其中d=pi。根据例如辅助定理7(E),元素-1≡d-1已知具有表达式-1≡zT/2,其中T=2qpi-1。因此,-z≡zT/2+1mod(d)保持真。对于T:=2qpi-1,欧几里得算法给出:
GCD(T/2+1,T)=GCD(T/2+1,-2)=2,
因为T/2=qpi-1是奇数并且T/2+1是偶数。通过辅助定理7(A),这证明ord(-z)=T/2,包含-z∈S′以及集合关系
Figure BDA00001902365100161
我们还具有:
因此,通过辅助定理7(D),指出的关系
Figure BDA00001902365100163
实际是集合方程-S=S′。用-1再次乘以该集合方程,我们得到S=-S′。
对于具有长周期的乘同余随机数而言,作为编程的问题,我们需要大的整数d作为模数,但以算法复杂化为代价。频谱测试将在后面指示周期的有效或可用长度与d的比率是生成器的适当品质度量。该比率可以多大?我们采用相关循环群开始调查。
辅助定理11令p是大的奇质数,并且指数i≥1是任意的。采用循环群
Figure BDA00001902365100164
中的任意乘数z。对于任意种子
Figure BDA00001902365100165
将长可用周期给乘同余序列n<z>时,将
μ:=η(z,d)T/d、d:=pi
定义为z的性能测量。下面将指出,在两种情况(IA)和(IB)中实现的最大的μ是(1-1/p)/2。指数i=1,2,...的选择对该结论没有影响。
(IA)对于任意质数p≥3而言,乘数z是
Figure BDA00001902365100166
中的生成器;n<z>的周期T是2qpi-1,其中q:=(p-1)/2,但是由于η(z,d)=1/2,所以仅以一半长度T/2可以用作独立随机数。
(IB)质数p≥3受到限制以给出奇整数q=(p-1)/2或者具有类型p≡3mod(4)。乘数
Figure BDA00001902365100167
要求具有半全量级qpi-1,即z要求是生成器
Figure BDA00001902365100168
的减数。在该情况中,针对任意种子n的整个乘同余序列n<z>可以通过η(z,d)=1而被用作独立随机数。
(证明)(IA)我们已经指出
Figure BDA00001902365100169
是循环的,从而
Figure BDA000019023651001610
是针对生成器z的序列n<z>的周期T,并且-1不可避免地出现在<z>中,暗示η(z,d)=1/2。这给出:
μ=η(z,d)T/d=(1/2)2qpi-1/pi=(1/2)(pi-pi-1)/pi=(1-1/p)/2。
(IB)通过假设,n<z>具有为奇数的半全周期T=qpi-1。由于在循环序列<z>中出现了-1,所以奇数T违背了推论8的必要条件,从而保持η(z,d)=1。因此,我们得到:
μ=η(z,d)T/d=qpi-1/pi={(pi-pi-1)/2}/pi=(1-1/p)/2
这些证明情况(IA)和(IB)具有所述的特性。关于所有其他情况,我们知道在
Figure BDA00001902365100171
的整个因子集合中,
Figure BDA00001902365100172
中的任意乘数z具有被以按幅度降序排列的量级或者n<z>的周期,为:
2qpi-1,qpi-1,(2/3)qpi-1,qpi-1/2,...,2,1。
接下来要考虑的是具有次最大量级T=ord(z)=qpi-1的z,其中q为偶数,或者质数p为p≡1mod(4)。由于该T为偶数,所以用于循环群的辅助定理7(E)确保了zT/2≡-1mod(d),从而η(z,d)=1/2以及μ≈1/4保持真。这种情况可以被丢弃。虽然上面顺序提到的第三和/或第四最大成员或许不存在,但是所有剩余的乘数必然具有不大于全量级的1/3的量级,并且给出μ≤1/3,而不管η(z,d)的值。因此,μ=(1-1/p)/2是最大可达的,并且其出现的情况被(IA)和(IB)排除。
辅助定理12令整数s为2或更大,并且令模数d由s个奇质数p1,p2,...,ps的幂构成,它们是大的并且给出小的逆:
d=π1π2…πs
Figure BDA00001902365100173
1/pk〈<1,ik≥1,1≤k≤s,s≥2
令乘数
Figure BDA00001902365100174
具有量级T=ord(z),其品质度量μ由以下方程定义:
μ:=η(z,d)T/d。
还定义z的分量:
z k : &equiv; z mod ( ( p k ) i k ) &equiv; z mod ( &pi; k ) , 1≤k≤s
所有可能配置中的μ的最大值在s=2时出现,其形式如下:
μ=1/2-O(1/p1+1/p2)≈1/2
μ的该上限仅当p1、p2完成下面(II)中的)约束时才被实现,并且同时分量乘数z1、z2被选择以满足(IIA)或(IIB)中的任一者:
(II)奇质数p1、p2给出q1=(p1-1)/2和q2=(p2-1)/2,该q1=(p1-1)/2和q2=(p2-1)/2构成分量群的量级,该分量群如下:
Figure BDA00001902365100181
其中
Figure BDA00001902365100182
相互互质,并且其中一个qk(假设是q1,但不损失一般性)是奇数而另一个是偶数。
(IIA)乘数z的分量z1和z2都分别是
Figure BDA00001902365100184
Figure BDA00001902365100185
的生成器。
(IIB)对于具有奇数q1的质数p1,分量乘数z1具有半全量级对于具有偶数q2的质数p2,分量乘数z2
Figure BDA00001902365100187
的生成器,其具有全量级 ord ( z 2 ) = 2 q 2 ( p 2 ) i 2 - 1 = 2 q 2 &pi; &OverBar; 2 .
指数ik≥1(k=1,2)并不影响这些结论。p1、p2的所有其他情况、分量乘数z1、z2的其他情况或者s≥3的任意其他选择给出μ的更小的品质度量,其被估计为:
μ≤1/3-O(1/p1+1/p2+…+1/ps)
(证明)我们首先指出(II)可以被简化为计算问题。例如,奇异质数p1、p2可以被选择为彼此接近以实现
|p1-p2|=max(p1,p2)-min(p1,p2)<min(p1,p2),
这暗示min(p1,p2)>max(p1,p2)/2>max(q1,q2)。该不等式确保了:
GCD ( q 1 ( p 1 ) i 1 - 1 , q 2 ( p 2 ) i 2 - 1 ) = GCD ( q 1 , q 2 ) ,
并且将(II)简化成对于所有k而言ik=1的情况的问题,即简化成确认q1、q2相互互质的问题。限制|p1-p2|<min(p1,p2)将是自然的和期望的,以便使慢慢移动有效。然而,选择过度接近的p1和p2(诸如孪生质数)应当被避免,如在Nakazawa和Nakazawa(2008)中指出的那样。
(II)&(IIA)令(II)通过质数p1、p2得到满足并且令z的分量乘数满足(IIA)。给出如下假设:
T 1 = 2 q 1 ( p 1 ) i 1 - 1 = 2 q 1 &pi; &OverBar; 1 , T 2 = 2 q 2 ( p 2 ) i 2 - 1 = 2 q 2 &pi; &OverBar; 2 ,
T = LCM ( T 1 , T 2 ) = LCM ( 2 q 1 &pi; &OverBar; 1 , 2 q 2 &pi; &OverBar; 2 ) = 2 q 1 &pi; &OverBar; 1 q 2 &pi; &OverBar; 2 = T 1 T 2 / 2 .
z的该量级T是偶数,但是群组
Figure BDA00001902365100194
不是循环的,并且辅助定理7(E)并没用应用。我们在<z>中查询-1的存在。为此目的,我们仅需要检查zT/2=-1mod(d)是否保持,或者(zk)T/2≡-1mod(πk)是否对于k=1,2而言都保持。由于
Figure BDA00001902365100196
保持并且是偶数,所以我们得到:
( z 1 ) T / 2 &equiv; ( z 1 ) q 1 &pi; &OverBar; 1 q 2 &pi; &OverBar; 2 &equiv; ( - 1 ) q 2 &pi; &OverBar; 2 &equiv; 1 mod ( &pi; 1 ) ,
从而在s=1的情况下,
Figure BDA00001902365100199
保持真,其中η(z,d)=1,如由Nakazawa和Nakazawa(2008)所示。这得到如下要被证明的:
&mu; = T / d = ( T 1 T 2 / 2 ) / d = 2 q 1 ( p 1 ) i 1 - 1 q 2 ( p 2 ) i 1 - 1 / { ( p 1 ) i 1 ( p 2 ) i 2 }
= ( 1 / 2 ) ( 1 - 1 / p 1 ) ( 1 - 1 / p 2 ) = 1 / 2 - O ( 1 / p 1 + 1 / p 2 )
(II)&(IIB)假设针对p1、p2的(II)和针对乘数z的分量的(IIB)。由于q1是奇数,所以<z>的周期是:
T = LCM ( q 1 &pi; &OverBar; 1 , 2 q 2 &pi; &OverBar; 2 ) = 2 q 1 &pi; &OverBar; 1 q 2 &pi; &OverBar; 2
再次询问zT/2≡-1mod(d)是否保持,我们实现:
( z 1 ) T / 2 &equiv; ( z 1 ) q 1 &pi; &OverBar; 1 q 2 &pi; &OverBar; 2 &equiv; 1 mod ( &pi; 1 )
因此
Figure BDA000019023651001914
保持,其中η(z,d)=1。在该情况中,z的品质度量与(IIA)的情况相同,被证明为:
μ=T/d=1/2-O(1/p1+1/p2)。
我们必须检查示出给出更小μ的所有其他情况。我们注意到,(II)中
Figure BDA000019023651001915
Figure BDA000019023651001916
Figure BDA000019023651001917
互质的条件从来不能放松,因为GCD(T1,T2)>2消除了LCM(T1,T2)=T1T2/GCD(T1,T2)。之后,在互质模数
Figure BDA000019023651001918
Figure BDA000019023651001919
是由给出两个奇数(并且彼此互质)q1=(p1-1)/2和q2=(p2-1)/2的奇质数p1和p2构成的情况下,第一询问应当针对生成器乘数z1和z2。组合的乘数z≡f-1(z1,z2)是
Figure BDA00001902365100201
其中,
Figure BDA00001902365100202
该设置给出:
z T / 2 &equiv; ( z 1 ) q 1 &pi; &OverBar; 1 q 2 &pi; &OverBar; 2 &equiv; ( - 1 ) q 2 &pi; &OverBar; 2 &equiv; - 1 mod ( &pi; 1 )
以及zT/2≡-1mod(π2)。因此,zT/2≡-1mod(d)和η(z,d)=1/2是这种情况,表明z给出μ≈1/4并且要被丢弃。接下来,我们需要考虑乘数z1(在奇数q1的情况下,其是它的模数π1的生成器)和剩余的z2(在模数π2具有偶数q2的情况下,其具有半全量级)。复合乘数z的周期或量级T现在是:
T = LCM ( 2 q 1 &pi; &OverBar; 1 , q 2 &pi; &OverBar; 2 ) = q 1 &pi; &OverBar; 1 q 2 &pi; &OverBar; 2 ,
因为在假设
Figure BDA00001902365100206
互质的情况下,q2是偶数。这给出:
&mu; = q 1 &pi; &OverBar; 1 q 2 &pi; &OverBar; 2 / d = 1 / 4 ( 1 - 1 / p 1 ) ( 1 - 1 / p 2 ) &ap; 1 / 4 ,
并且可以再次被丢弃。s=2的所有其他剩余情况涉及具有一量级的分量乘数,该量级为通过辅助定理7(D)得到的全量级情况的因子。因此它们应当给出μ≈(1/2)(2/3)=1/3或更小,并且不需要被考虑。关于s≥3的情况,重点是每个分量生成器乘数zk给出它们的量级其必需包括2作为针对k=1,2,…,s的因子。因此:
LCM(T1,T2,…,Ts)≤T1T2…Ts/2s-1≤T1T2…Ts/4。
与s=2的情况相比,通过至少一个因子1/2,这必然会给出更少的μ=T/d。它们可以被一起丢弃。
发明内容
通过允许模数是一般复合的,我们可以总结乘同余序列的相关周期性结构如下所述。令模数、乘数、种子和周期分别如之前那样为d、z、n和T。在该段落中,还存在着将m指定为乘数的情况。技术兴趣是下面描述的情况(A1)、(A2)和(B);这给出了乘同余序列n<m>的所有可能情况中的最大比率μ=η(m,d)T/d≈1/2。
(A1)模数d是任意奇质数p的幂,即d=pi,其中指数i≥1,从而给出了循环群
Figure BDA00001902365100211
乘数m通过循环群
Figure BDA00001902365100212
的生成器z而被定义为m=z;该情况的周期是:
Figure BDA00001902365100213
q=(p-1)/2,
但是如η(m,d)=1/2指示的,仅其长度的一半可以被用于独立随机数。指数i可以任意选择。
(A2)模数d再次是奇质数p的幂d=pi,其中元素i≥1,并且群
Figure BDA00001902365100214
是循环的,但是质数p被限定为给出奇q=(p-1)/2或者为类型p≡3mod(4)。乘数m被
Figure BDA00001902365100215
的生成器z构建为m=-z;n<m>的周期T是
Figure BDA00001902365100216
其是全情况的一半,但是如η(m,d)=1指示的,T的总长度可以被用于独立随机数。指数i再次可以任意选择。
(B)复合模数d通过两个截然不同的奇质数p1、p2而被构建为d=π1π2,其中k=1,2。这些奇质数中的一者(不失一般性地假设为p1)被限定为给出p1≡3mod(4)或者给出奇数q1=(p1-1)/2并且另一质数p2被限定为给出p2≡1mod(4)或者给出偶数q2=(p2-1)/2。另外,质数p1、p2应当给出相互互质的整数
Figure BDA00001902365100218
乘数m通过循环群
Figure BDA000019023651002110
的各自的生成器z1和z2而被构建为:
m=±z1U1+z2U2,Uk≡δklmod(πl),1≤k,l≤2。
这里,整数U1、U2由p1、p2确定。它们是唯一模d的并且不依赖于z1、z2。乘同余序列n<m>具有周期
Figure BDA000019023651002111
并且通过η(m,d)=1,
n<m>的整个周期T可以被用于独立随机数。指数i1,i2≥1可以再次任意选择。
本发明的最大动机来自于一最新观察,即情况(B)在所有其他情况中提供了最佳技术设置。该估计与在设计乘同余序列的乘数m时不可缺少的频谱测试的计算性关联。如上所述,Fishman和Moore在1986年以及Fishman在1990年用质数模数d=p或用d=2i决然示出了优良乘数的设计要求对所有候选生成器进行全面的频谱测试,同时公开了该过程中的内在困难。至此,由于模数被限定为d=p(质数p的情况)、被限定为d=2i或者甚至被限定为容许单质数的幂d=pi的归纳(generalization)(A1)或(A2),扫描所有相关乘数的频谱测试不能帮助满足计算的问题。情况(B)的选择明显提供了对这些问题的突破。如已经指出的,T的仿真期望幅度现在将是T≈273或更大。在情况(A1)或(A2)中,采用大的模数d≈2T来扫描频谱测试是必需的,但是过程将不是可计算的,不仅现在如此,将来也如此;更快计算机的出现将仅增强来自仿真的要求。在该情况中,情况(B)的采纳将使得能够通过频谱测试来选择优良的分量乘数z1、z2,其中分量模数
Figure BDA00001902365100221
k=1,2,其具有相当更小的量级幅度(2T)1/2,例如对于T≈273而言为237。作为均匀分布且独立的随机数的生成器的复合乘数m≡z1U1+z2U2mod(d=p1p2)的优点当然需要进行确认。该生成器(d,m)已知具有孙子定理所定义的内建慢慢移动结构。该情况使得我们能够认为(d,m)将具有更大的机会来在频谱测试中表现优秀,如果分量乘数(p1,z1)和(p2,z2)优秀的话。而且要被频谱测试的这种(d,m)对的总数量将必然小于质数p≈p1p2/2的原根的总数量设想p≈273的情况,其中p1,p2≈237。这些通过简单示例的频谱测试由Nakazawa和Nakazawa(2011)确认。由于频谱测试的精确概念和术语将在具体实施方式部分描述,所以我们在这里仅做出小的直观性阐述。乘同余生成器的模数d和乘数m的任何对(d,m)都可以经历维度为l的频谱测试,其中2≤l≤6。l维度测试向生成器(d,m)分配估计
Figure BDA00001902365100223
如果该估计接近于1,则由(d,m)生成的随机数的连续l个元组会如同均匀分布且独立的随机数序列那样进行得很好。Fishman和Moore(1986)由梅森质数p=231-1及其原根z得到了标准表明存在442个通过者。Nakazawa和Nakazawa(2011)对101≤p≤101027范围内的奇质数p执行频谱测试,并找到满足Fishman-Moore标准的32个通过者。这32对通过者中的对(p1,z1)和(p2,z2)可以被组合来给出模数d=p1p2及其乘数m=f-1((z1,z2))的乘同余生成器。如已经描述的,存在着对(d,m)的约束以具有最长周期,并且在Nakazawa和Nakazawa(2011)中最长周期对是2208。测试揭示36个(即1.6%)生成器实现了最佳性能:
1 < &rho; p 1 p 2 ( k ) ( m ) < 1.25 2 = 1.5625 , 2≤k≤6
其中,m≡f-1((z1,z2))≡z1U1+z2U2mod(p1p2)。鉴于所指出的慢慢移动结构,结果是相当合理和有说服力的。对于由两个质数-幂因子形成的复合模数,该趋势将保持。根据Fishman和Moore标准,该性能1.252是恶化的,因此当然需要调查它的意义。该结论看起来是或许是可以具有实际应用的m的范围。请见具有几何说明的Nakazawa和Nakazawa(2011)。该问题还揭示关于用于质数-幂模数的生成器的可能性能的信息的重要性。看起来质数平方模数具有充足丰富的优秀生成器;请见Nakazawa(2011)。还进一步研究了频谱测试的计算时间;关于模数d=p1p2≈232的成对乘数m≡f-1((z1,z2))需要的计算时间近似为对d=p=231-1的所有原根的穷尽性测试所需计算时间的1/30000≈2-14.87;降低必要的测试数量是双质数-幂模数生成器的重要优点。最后,孙子定理提供了双质数-幂模数的决定性数值优点;整数的双精度算法足够对复合模数
Figure BDA00001902365100234
执行频谱测试,其中如果能够对整数算术应用四倍精度,则该上限变得如同d=p1p2≤280一样大。
Nakazawa和Nakazawa(2011)N.Nakazawa and H.Nakazawa:Spectral testsof primitive roots for primes up to 101027 and of multiplicative congruentialrandom number sequences generated by pairs of primitive roots.(2011年3月17日-11月8日)/将作为“pairtest90revbind.pdf”及fortran90程序“pairtest90rev.for”而被上传到(URL)http://www10.plala.or.ip/h-nkzw/
Nakazawa(2011)N.Nakazawa:Spectral tests over generators of reducedresidue class groups modulo squares of odd primes.(2011年7月23日)将作为“squareprime0908.pdf”而被上传到(UJRL)http://www10.plala.or.jp/h-nkzw/
具体实施方式
对频谱测试的一些几何解释将是按次序的。将暂时停止考虑整数模d的等值,除非有相反地阐述。我们首先介绍要使用的技术。
定义13令Em指示m维欧几里得空间,l是满足0<l≤m的整数,并且Em中的矢量{ek|k=1,2,...,l}是线性独立的。矢量{ek}的所有整数线性组合的集合
L l = L l ( e 1 , e 2 , . . . , e l ) = { &Sigma; k = 1 l c k e k | c k = 0 , &PlusMinus; 1 , &PlusMinus; 2 , . . . , 1 &le; k &le; l }
将被称为被基矢量或基本矢量{ek}跨越的Em中的l维点阵。名称“点阵”以及符号Ll=Ll(e1,e2,…,el)在物理使用之后也将用于具有Ll中的位置矢量的点的集合。(定义13结束)
{ek|1≤k≤l}的线性独立性可以可行地由下述属性定义,即在不假设整数模模数d的等值的情况下,由基本矢量
A : = e 1 e 2 . e l
形成的l×m矩阵A的秩是l和满的,或者A具有l×l子矩阵A′(其中行列式A′≠0)。在El中,具有整数坐标的所有点的集合形成l维点阵。这是由沿着坐标轴的单元矢量跨越的El的整数点阵。
令整数z、n如之前一样与整数d>0互质,并且令n<〈z>>指示在不具有等值模d的情况下被定义的无限整数序列:
n<<z>>:={n,nz,nz2,…,nzj-1,nzj,…}。
将n<〈z>>的连续l个元组
(nzj,nzj+1,…,nzj+l-1)=nzj(1,z,…,zl-1),j=0,1,2,…
视为El中的点。下面的事实是所有频谱测试的基础。
辅助定理14令d、z、n是正整数,其中z、n与d互质。令E1中的集合S(z,n)由其坐标是由从n<〈z>>中获得的整数的连续l个元组形成的点构成,以及由沿着这些点的坐标轴的所有d-转换构成。集合S(z,n)是由下述基本矢量跨越的点阵Ll=Ll(e1,e2,...,el)的恰当子集:
e1=(1,z,z2,…,zl-2,zl-1),
e2=(0,d,0,...,0,0),
e3=(0,0,d,...,0,0),
.........,
el-1=(0,0,0,...,d,0),
el=(0,0,0,…,0,d)。
也称为(d,z)点阵的点阵Ll是El中的整数点阵的恰当子集。
(证明)给出的矢量{ek}显然是线性独立的。矢量nzje1位于点阵Ll中,其中系数nzj为整数。作为位置矢量,其代表序列n<〈z>>中起始于在没有等值模d的情况下所获得的nzj的l元组的点,并此后随着j的增加对所有l个元组都进行扫描。S(z,n)中的任意点或位置矢量通过添加e2,e3,...,el的整数线性组合而被沿着第二、第三、…、和第l坐标轴进行d转换。沿着第一轴,下述的整数倍数的添加足以用于实现d-转换:
de1-ze2-z2e3-…-zl-1el=(d,0,0,…,0)∈Ll(e1,e2,…,el)。
因此,位置矢量的点集S(z,n)或集合S(z,n)位于由所述的基本矢量跨越的(d,z)点阵Ll中。然而,集合(z,n)不能包括Ll的一些点或矢量;典型地,El的原点或者零矢量不位于S(z,n)中,因为所述的l个元组的第一坐标是非零的并且不能是d的倍数。因此,S(z,n)是(d,z)点阵Ll的恰当子集。关于表示El中的点的全部位置矢量,(d,z)点阵Ll自身在d-转换的情况下沿着任何坐标轴都是不可变的,因为所有的d-转换矢量都被包括在具有它们的任意整数倍数的Ll中。由于Ll由具有整数分量的矢量构成,所以其当然是El中的整数点阵的子集。
在任意d-变换的情况下沿着坐标轴的(d,z)点阵Ll的不可变性暗示首先点阵Ll可以在具有周期d的l维环面中被一致地讨论;由于我们在El中采用更简单的线性代数图像,所以我们不使用措辞“环面”。更为重要的是,点阵Ll表示通过整数模d等值获得的位于其几何结构内的乘同余序列n<z>的整个代数结构。考虑位于El的原点处的侧[0,d)的超立方体并且询问(d,z)点阵Ll的多少个点位于内。答案是简单的。
推论15任意d>0的(d,z)点阵Ll=Ll(e1,e2,...,el)在任意维l=2,3,...的中具有d个点。
(证明)点阵Ll中的任意矢量x=c1e1+c2e2+…+clel具有第一整数分量c1,在
Figure BDA00001902365100264
中其可以采取d个值0,1,2,...,d-1。x的第k(2≤k≤1)个分量是xk=c1zk-1+ckd,并且在给出c1的情况下,整数ck被唯一确定以给出0≤xk<d。因此,仅包含Ll的d个截然不同的点阵点。
推论15揭露在模数d>0的情况下由
Figure BDA00001902365100266
中的乘数z和种子n生成的乘同余序列n<z>的其中一个重要点。
Figure BDA00001902365100267
中由从序列n<z>中获得的l个元组生成的代表性点的总数量是周期T,其是
Figure BDA00001902365100268
的除数。在针对随机数的实践中,该数应当被减少到将看到频谱测试给出点阵配置的估计,即连续随机数的可能席位的几何估计。随机数序列占用了几乎一半的席位,并且从严格的统计意义上说,应当争辩随机数序列的点出现在这些席位上的方式是否似真地看起来均匀分布且独立。在Fishman和Moore(1986)的开拓性工作中指出了重要论点,并且根据他们的结论我们感到安慰的是频谱测试的优良通过者没有显示不可靠的行为。不管怎样,频谱测试不是强有力的,如果现在清楚用于指示点阵Ll的这些席位的占用率的数μ=η(z,d)T/d不大。关于任意维l中的席位的固定数量d,存在着乘同余序列作为随机数的实用性的质疑,包括Fishman和Moore(1986)或Nakazawa和Nakazawa(2008)。然而,现在,本发明人的观点不同。考虑希望具有周期T≈273的随机数的连续l个生成。首先获得它在273个席位中的其中一个席位的位置,其中每个席位的宽度为2-73。双精度的(0,1)的相应变量被该随机数替换,粗略地说是在它自己的253单元值处,其中每个单元值的宽度为2-53。下一随机变量类似地选择第二轴上的一个席位,等等。乘同余随机数生成器输出具有随机过程的样本路径。并且当其连续的l个元组被画在El的单元超立方体中时,任意均匀分布且独立的随机数序列的长度T样本能够占用仅T个点。在这一点上,乘同余生成器是无可挑剔的。
l维的频谱测试估计El中的(d,z)点阵Ll的几何形状,或者
Figure BDA00001902365100271
中的Ll的d个点的配置。可以通过在Nakazawa和Nakazawa(2008)中示出的2维示例来获得对估计方式的可视且直观的理解。我们需要推断关于定量细节的更多内容。首先设想平面E2,它的平方从原点产生。将
Figure BDA00001902365100273
(l=2)定义为两个邻近平行点阵线(即包含Ll的l=2个点的线或者连接这些点的l-1=1点阵矢量v∈Ll)之间的最大距离。该点阵线实际上包含无限多的矢量cv,其中c为整数,从而包含无限多的点阵点。注意,(d,z)点阵的基本矢量基于下式而跨越独立于z的具有面积d的平行四边形:
e 1 e 2 = 1 z 0 d = d .
E2中的三角点阵具有形成正三角形的基本矢量。在由两个这样的正三角形形成的菱形为d的约束下,邻近平行点阵线的最大距离被计算为
Figure BDA00001902365100281
即该正三角形的高度。在由它们的基本矢量跨越的平行四边形的面积d的约束下,
Figure BDA00001902365100282
的特值(下文中被表示为
Figure BDA00001902365100283
是由2维点阵实现的的最小值。频谱测试的任意(d,z)点阵具有具有整数分量的基本矢量。它们绝不会实现该几何上的理想正三角形(它的基本矢量包括必要的无理分量,从而给出大于
Figure BDA00001902365100286
直观上清楚的是,三角形点阵将实现E2中的点阵点的最均匀且无偏置的分布。2维频谱测试给出针对(d,z)点阵的估计
Figure BDA00001902365100287
作为对几何上的理想配置的紧密度量。维度为l=3,4,...时情况是相同的。几何上的理想情况给出了
Figure BDA00001902365100288
作为它的邻近点阵超平面(即包含l-1个线性独立的点阵矢量的超平面)的最大距离。针对(d,z)点阵获得的相应的
Figure BDA00001902365100289
不可变地大于
Figure BDA000019023651002810
下面的列表给出了适用于当前的(d,z)点阵情况的重正则化形式的的形式,作为Fishman和Moore(1986)的引用。
Figure BDA000019023651002812
对于质数模数情况d=p=231-1,Fishman和Moore(1986)采用这样的准则,即如果
Figure BDA000019023651002813
对于所有的l=2,3,…,6都满足,则原根乘数z通过它们的测试,并且找到了442个通过者。该重要发现的深远暗示将很快被讨论。
现在将观察扩展到频谱测试的算法方面。下面的内容会给出这一迹象,即在对乘同余序列的频谱测试正提出数学上非常温顺的问题。
推论16对于所述的(d,z)基本矢量的集合{ek|1≤k≤l},存在着具有对偶基本矢量的集合{fk|1≤k≤l}:
f1=(d,0,0,...,0),
f2=(-z,1,0,...,0),
f3=(-z2,0,1,...,0),
fl=(-zl-1,0,0,...,1),
它们是线性独立的,并且由下述内积的特征集合唯一确定:
(ej,fk)=dδjk,1≤j,k≤l。
(证明)通过已经给出的对偶基本矢量和{ek}的形式,线性独立性以及所述内积是显然的。内积表示l×l矩阵的关系:
E : = e 1 e 2 . . . e l , F : = f 1 f 2 . . . f l , E t F = dI : = d 1 0 . . . 0 0 1 . . . 0 . . . . . . 0 0 . . . 1 ,
其中,tF表示F的转置矩阵。因此,内积将tF/d唯一确定为正则矩阵E的逆。
辅助定理17{fk}的所有整数线性组合的集合
Figure BDA00001902365100294
将被称为具有基本矢量{fk}的对偶(d,z)点阵,其中基本矢量{fk}还被称为{ek}的对偶基本矢量。
(A)获得(d,z)点阵Ll中的l-1个矢量{xk|1≤k≤l-1}的任意集合,该l-1个矢量是线性独立的。则存在着与所有x1,x2,…,xl-1正交的非零矢量
y 2 , . . . , y l ) &Element; L l * .
(B)对于对偶点阵
Figure BDA00001902365100297
中的任意非零矢量y,在(d,z)点阵Ll中存在着y都与其正交的l-1个线性独立的矢量x1,x2,...,xl-1
(证明)(A)将Ll中由基本矢量{ek}给出的矢量{xk|1≤k≤l-1}表示为:
xj=xj1e1+xj2e2+…+xjlel
其中系数{xjk|1≤j≤l-1,1≤k≤l}为整数。假设矢量y与{xk}中的所有矢量正交,并由对偶基本矢量将y表示为
y=y1f1+y2f2+…+ylfl
其中系数y1,y2,…,yl确定是实数,但不知是有理数还是整数。正交的假设给出:
(xj,y)=d(xj1y1+xj2y2+…+xjlyl)=0,1≤j≤l-1。
在矩阵形式中,这是线性方程组:
x 11 x 12 . . . x 1 l x 21 x 22 . . . x 2 l . . . . . . x l - 11 x l - 12 . . . x l - 1 l y 1 y 2 . y l = 0 0 . 0
由于矢量{x1,x2,...,xl-1}是线性独立的,所以我们可以不失一般性地假设下面的(l-1)×(l-1)矩阵是正则的:
A = x 11 x 12 . . . x 1 l - 1 x 21 x 22 . . . x 2 l - 1 . . . . . . x l - 11 x l - 12 . . . x l - 1 l - 1
则上面的方程的解为:
y 1 y 2 . y l - 1 = - y l A - 1 x 1 l x 2 l . x l - 1 l
通过选择yl=detA≠0,我们找到整数系数{yk}和与{xk|1≤k≤l-1}中的所有矢量都正交的非零矢量
(B)令y为对偶点阵
Figure BDA00001902365100305
中的任意非零矢量,并具有表达式
y=y1f1+y2f2+…+ylfl
其中系数y1,y2,...,yl为整数。将通过点阵Ll的线性独立基本矢量得到的任意非零矢量x∈El表示为
x=x1e1+x2e2+…+xlel
其中x1,x2,...,xl不知道是整数还是有理数。将正交性施加到x上:
0=(x,y)=d(x1y1+x2y2+…+xlyl),d>0。
由于y不是零矢量,所以在y1,y2,...,yl中存在着一些非零系数。令其为yl。则上述的正交性条件给出了针对l个未知变量x1,x2,...,xl的线性方程。由于系数矩阵的秩是1,所以存在着l-1组线性独立解。具体而言,令yl非零。则上面的方程给出:
xl=-(x1y1+x2y2+…+xl-1yl-1)/yl
令对于一些1≤k≤l而言,xk=yl,其中所有其他xj为零。我们获得针对任意给定s=1,2,...,l-1的整数解:
x k ( s ) = - y l &delta; ks , x l ( s ) = y s , 1≤k≤l-1
这明显形成了线性独立集合,并且完成了证明,因为推导显示假设yl≠0是不受约束的。
最后请看关于频谱测试的清楚概述。我们准备了推论。
推论18令A1,A2,...,Al是非零整数,其中l≥2。定义通过令其他整数集合a1,a2,...,al以所有可能的方式移动它们的值而获得的整数的集合I:
I:={a1A1+a2A2+…+alAl|ak=0,±1,±2,…,1≤k≤l}。
保持I由GCD(|A1|,|A2|,...,|Al|)的整数倍数构成:
I={qGCD(|A1|,|A2|,…,|Al|)|q=0,±1,±2,…}。
(证明)令m=m1A1+m2A2+…+mlAl是I中的最小正成员,其中系数mk(1≤k≤l)是整数。显然,g:=GCD(|A1|,|A2|,...,|Al|)除m并给出m≥g。采用I的任意成员a=a1A1+a2A2+…+alAl,其中系数ak(1≤k≤l)为整数。令整数q、r分别为a除以m的商数和余数。由于
r=a-qm=(a1-qm1)A1+(a2-qm2)A2+…+(al-qml)Al
(其中,0≤r<m)位于I中,所以m的定义给出r=0。因此I的任意成员a(包括1≤k≤l时的|Ak|=sign(Ak)Ak)被m除,并且m是|A1|,|A2|,...,|Al|的公共除数,其中m≤g。因此,m=g=GCD(|A1|,|A2|,...,|Al|)保持真,其中:
I &Subset; J : = { qm | q = 0 , &PlusMinus; 1 , &PlusMinus; 2 , . . . } = { qg | q = 0 , &PlusMinus; 1 , &PlusMinus; 2 , . . . } .
通过m∈I,该逆包括(inverse inclusion)
Figure BDA00001902365100321
是显然的,并且断言如下。
定理19令l=2,3,...是给定维数。通过令任意整数d>0作为模数以及整数作为乘数,从而使l维(d,z)点阵Ll被形成在El中。具有点阵Ll的维度l-1的任意超平面将其法向矢量作为对偶(d,z)点阵
Figure BDA00001902365100323
的一些非零成员。反之,
Figure BDA00001902365100324
的任意非零矢量是Ll中l-1维度的平行且等距离布置的超平面家族的法向矢量,Ll的每个点阵点属于其中一个维度。Ll中的维度l-1的邻近平行超平面的最大距离
Figure BDA00001902365100325
&lambda; d ( l ) ( z ) = d / | y | min
给出,其中y是具有最短非零欧几里长度|y|min的矢量。
(证明)通过辅助定理17(A),通过与跨越超平面的Ll的l-1个线性独立矢量的正交性来确定点阵Ll中的具有维度l-1的超平面的法向;该法向自身由对偶点阵
Figure BDA00001902365100328
中的一些非零矢量给出。给出其位置矢量
Figure BDA00001902365100329
的点阵点P或又一点阵矢量完成了经过P的点阵超平面的识别。辅助定理17(B)示出了
Figure BDA000019023651003210
的任意非零矢量y具有Ll中与y正交的线性独立点阵矢量xk(1≤k≤l-1)的集合并且跨越Ll中维度l-1的平行点阵超平面。采用Ll的任意点阵点P,其中其位置矢量
Figure BDA000019023651003211
具有位置矢量
OP &RightArrow; k = x 0 + x k ( 1 &le; k &le; l - 1 )
的点Pk跨越Ll中的通过点阵点P的l-1维度超平面;注意:
( OP &RightArrow; k , y ) = ( OP &RightArrow; , y ) = ( x 0 , y )
是恒定独立于k=1,2,...,l-1的并且由点阵点P单独确定。实际上,在矢量y的欧几里得长度|y|的情况下,从原点到该超平面的距离r给出
(x0,y)=r|y|。
现在,重点在于点阵矢量
Figure BDA000019023651003214
的笛卡尔坐标不能采用所有整数作为它们的值。然而,通过基本矢量Ll,它的表达式
x0=a1e1+a2e2+…+alel
给出整数a1,a2,...,al采用所有整数以便x扫描所有点阵点或者它们的位置矢量。通过利用其基本矢量将对偶点阵矢量y表示为
y=A1f1+A2f2+…+Alfl
该便利性得到了利用,这给出
±r|y|=d(a1A1+a2A2+…+alAl)。
当a1,a2,...,al造访所有整数时,推论18证明了下述关系:
±r|y|=qdGCD(|A1|,|A2|,...,|Al|),q=0,±1,±2,…。
对于对偶矢量y而言,总有可能在不改变其方向的情况下选择GCD(|A1|,|A2|,...,|Al|)=1;特别地,具有最短欧几里得长度的对偶点阵矢量y自动地满足该条件。因此,点阵Ll的l-1维度的邻近超平面之间的最大距离由 &lambda; d ( l ) ( z ) = d / | y | min 给出。
下面的概括的特点在于乘同余序列的频谱测试的基本算术运算或计算方面。
辅助定理20令模数d>0是任意整数,并令
Figure BDA00001902365100332
是任意乘数。通过计算(d,z)点阵
Figure BDA00001902365100333
中的在笛卡尔坐标中被表示为y=(y1,y2,...,yl)的对偶矢量y的欧几里得长度
|y|:={(y1)2+(y2)2+…+(yl)2}1/2
通过找到具有欧几里得长度|y|min的最短非零矢量、以及通过给出作为估计,执行对乘同余随机数生成器模d的乘数z的l维频谱测试。
(A)具有整数笛卡尔坐标的矢量y=(y1,y2,...,yl)位于(d,z)对偶点阵中的充分必要条件由下面的同余关系给出:
y1+y2z+y3z2+…+ylzl-1≡0mod(d)。
(B)搜索笛卡尔坐标中的最短矢量y=(y1,y2,…,yl)可以局限于下面的范围:
| y k | < &lambda; &OverBar; d ( l ) , 1≤k≤l,
其中是其基本矢量跨越体积dl-1的El中的几何上理想点阵的邻近超平面的最大距离。
(证明)通过之前的结论,所引入的概述将是显然的。
(A)l维对偶点阵矢量y是具有整数系数a1,a2,...,al的对偶基本矢量的线性组合:
y = a 1 f 1 ( l ) + a 2 f 2 ( l ) + . . . + a l f l ( l )
= ( a 1 d - a 2 z - a 3 z 2 - . . . - a l z l - 1 , a 2 , a 3 , . . . , a l ) .
因此,y=(y1,y2,...,yl)的整数笛卡尔坐标应当满足
y2=a2、y3=a3、…、yl=al
以及
y1+y2z+y3z2+…+ylzl-1=a1d≡0mod(d)。
相反地,具有在断言中阐述的整数分量和特性的矢量
Figure BDA00001902365100345
给出满足下述关系的整数a1
a 1 d = y 1 + y 2 z + y 3 z 2 + . . . + y l z l - 1
y = ( a 1 d - y 2 z - y 3 z 2 - . . . - y l z l - 1 , y 2 , y 3 , . . . , y l )
= a 1 f 1 ( l ) + y 2 f 2 ( l ) + . . . + y l f l ( l )
因此,y是对偶点阵矢量。
(B)如已经指出的,存在着针对对偶点阵矢量y(包括最短的一个)的理论约束:
&lambda; d ( l ) ( z ) = d / | y | > &lambda; &OverBar; d ( l )
这给出了一般限制:
| y k | &le; | y | < d / &lambda; &OverBar; d ( l ) , 1≤k≤l。
因此,仅具有
Figure BDA000019023651003411
(k=1,2,...,l)的那些矢量y才需要在搜索中被测试。
我们强调定理20中的d可以是频谱测试中的任意复合模数。我们还指出以下与在这一般模数情况下对任意乘数的频谱测试相关的对称性。
推论21令整数d>0是模数,并且令
Figure BDA00001902365100351
是乘数。
(A)针对乘数的l维频谱测试的估计给出
(B)令z-1是群
Figure BDA00001902365100353
中的z的逆。这保持
Figure BDA00001902365100354
(证明)(A)显然矢量(±y1,±y2,...,±yl)(其中所采用的符号全都独立)具有相同的欧几里得长度。对最短矢量y=(y1,y2,...,yl)的搜索在下述约束条件下执行:
y1+y2z+y3z2+…+ylzl-1≡0mod(d),
其中,±yk(1≤k≤l)扫过所有整数。因此,用-z替换z给出相同的估计或者
&lambda; d ( l ) ( z ) = &lambda; d ( l ) ( - z ) .
(B)乘同余序列n<z-1>仅是以反向顺序排列的序列n<z>。因此,从前者中获取的点的l个元组的结构可以通过以反向顺序对坐标轴进行转置而从后者的结构中获得。在这种转置情况下,邻近平行超平面的距离是不变的,并且断言仍然遵循。
我们现在将上面指出的结果总结为一用于对模数d中的乘数z的频谱测试进行编程的过程的紧凑方法。
频谱测试的过程令d、z是整数,其中d>0以及
Figure BDA00001902365100356
针对任意度数l=2,3,...,6的频谱测试可以被构建如下:
(1)计算上限 y &OverBar; ( l ) : = d / &lambda; &OverBar; d ( l ) , a : = ( y &OverBar; ( l ) ) 2 .
(2)令整数y2,y3,...,yl在范围
Figure BDA00001902365100359
中被扫描,从而检查整数y1是否满足下式:
y1≡-y2z-y3z2-…-ylzl-1mod(d),
Figure BDA000019023651003510
如果y1满足上式,则询问(y1)2+(y2)2+…+(yl)2<a是否为真。如果为真,则重新定义
a:=(y1)2+(y2)2+...+(yl)2 y &OverBar; ( l ) : = a 1 / 2 ,
并重新开始扫描(2);如果为否,则继续搜索不同的y2,y3,...,yl
(3)当搜索完成时,使|y|min=a1/2并给出
&lambda; d ( l ) ( z ) = d / a 1 / 2 , &rho; d ( l ) ( z ) = &lambda; d ( l ) ( z ) &lambda; &OverBar; d ( l ) .
如果对于所有的l=2,3,...,6而言
Figure BDA00001902365100365
保持真,则将z作为可通过的乘数。如果
Figure BDA00001902365100366
是循环的,这就是被采纳用于生成器z的Fishman和Moore(1986)准则。如果模数具有形式
Figure BDA00001902365100367
则例如较弱的准则将是必需的。(频谱测试过程结束)
为了各种目的,需要许多其他的设备来用于频谱测试的编程。在为奇质数p选择循环群
Figure BDA00001902365100369
的全面生成器时,对所有相关生成器的自动搜索是必不可少的。如由Fishman和Moore3发起并且已经指出的那样,基础是辅助定理7(B)。我们应当通过模数pi(其中p为质数)中的试验找到生成器b,期望是最小的。之后,我们需要针对增加的j来计算bjmod(pi),如果j与
Figure BDA000019023651003610
Figure BDA000019023651003611
互质,将bj采纳为下一生成器。
还需要多个其他设备来用于对质数进行扫描的全面频谱测试。虽然我们对我们的技术缺乏自信,但是读者可以查看在针对Nakazawa和Nakazawa(2011)或Nakazawa(2011)的URL中所上传的程序。我们希望与读者分享我们在整数中找到许多令人着迷的整数的喜悦,并且当然邀请读者将他们的强悍的设备用于该整数淘选以找到珍贵金属或宝石。
另一评论对于选择种子
Figure BDA000019023651003612
而言是足够的。随机数的用户期望能够自由地选择种子n。考虑
Figure BDA000019023651003613
的情况。要求用户选择与质数p1和p2都互质的种子n将是不适当的。更安全的方式是要求在开始时,针对一些规定的生成器z模d,指定指数i并在随机数子例行程序中计算:
n≡zimod(d), d = p 1 i 1 p 2 i 2 .
最后,我们想再次强调Fishman和Moore准则的重要性。其不仅在针对质数模数的原根乘数的情况中是通用的,而且在其他循环情况中也工作的非常好,诸如由模数d=p2(p为奇质数)给定的情况。然而,我们需要前进到由两个奇质数的幂形成的模数,以便通过将准则放松为
Figure BDA00001902365100372
来克服计算性的困难问题,请见Nakazawa和Nakazawa(2011)的结果以及至少对于已经可计算的维度l=2和l=3的结果。总之,关于随机数的任何技术需要通过计算进行确认。我们非常抱歉不能访问当今的高速计算机。希望本系列发明能够引起具有在这种高速机器上进行编程以测试本发明或者测试它们自己的新思想以及能够运用他们的智慧将随机数问题推到更高的阶段的读者的兴趣。

Claims (3)

1.一种用于生成均匀分布且独立的随机数的方法,该方法包括以下步骤:
获得称为模数的正整数d;
获得称为乘数的与d互质的正整数z;
获得称为初始值或种子的与d互质的正整数n;
通过模d的降低的剩余类群或者与该类群同构的群中的同余关系r1=n,rj+1≡zrj mod(d),0<rj<d,生成陪集n<z>={r1,r2,...};以及
通过实现算术运算vj=rj/d,j=1,2,...,输出随机数序列{v1,v2,...},
其中:
所述模数d被形成为截然不同的奇质数p1、p2的乘积d=p1p2
所述奇质数p1满足q1=(p1-1)/2是奇数的条件;
所述奇质数p2满足q2=(p2-1)/2是偶数的条件;
所述奇质数p1、p2满足所述q1、q2相互互质的条件;
所述乘数z通过同余关系z≡z1mod(p1)、z≡z2mod(p2),采用生成器z1模p1以及生成器z2模p2来确定;以及
对于l=2和l=3,所述模数d和所述乘数z满足
Figure FDA00001902365000011
所述
Figure FDA00001902365000012
为第l度频谱测试的性能测量。
2.一种用于生成均匀分布且独立的随机数的方法,该方法包括以下步骤:
获得称为模数的正整数d;
获得称为乘数的与d互质的正整数z;
获得称为初始值或种子的与d互质的正整数n;
通过模d的降低的剩余类群或者与该类群同构的群中的同余关系r1=n,rj+1≡zrj mod(d),0<rj<d,生成陪集n<z>={r1,r2,...};以及
通过实现算术运算vj=rj/d,j=1,2,...,输出随机数序列{v1,v2,...},
其中:
所述模数d被形成为截然不同的奇质数p1、p2的乘积d=p1p2
所述奇质数p1满足q1=(p1-1)/2是奇数的条件;
所述奇质数p2满足q2=(p2-1)/2是偶数的条件;
所述奇质数p1、p2满足所述q1、q2相互互质的条件;
所述乘数z通过同余关系z≡-z1mod(p1)、z≡z2mod(p2),采用生成器z1模p1以及生成器z2模p2来确定;以及
对于l=2和l=3,所述模数d和所述乘数z满足所述
Figure FDA00001902365000022
为第l度频谱测试的性能测量。
3.一种用于生成均匀分布且独立的随机数的方法,该方法包括以下步骤:
获得称为模数的正整数d;
获得称为乘数的与d互质的正整数z;
获得称为初始值或种子的与d互质的正整数n;
通过模d的降低的剩余类群或者与该类群同构的群中的同余关系r1=n,rj+1≡zrjmod(d),0<rj<d,生成陪集n<z>={r1,r2,...};以及
通过实现算术运算vj=rj/d,j=1,2,...,输出随机数序列{v1,v2,...},
其中:
所述模数d被形成为截然不同的奇质数p1、p2的幂的乘积
Figure FDA00001902365000023
其中整数指数i1≥1并且整数指数i2≥1;
所述奇质数p1给出奇数整数q1=(p1-1)/2;
所述奇质数p2给出偶数整数q2=(p2-1)/2;
所述整数p1、q1、i1、p2、q2、i2给出相互互质的
Figure FDA00001902365000024
Figure FDA00001902365000025
除了i1=i2=1的情况之外,所述指数i1和i2具有任意整数值i1≥1和i2≥1;
所述乘数z通过同余关系
Figure FDA00001902365000031
Figure FDA00001902365000032
或通过同余关系 采用生成器z1
Figure FDA00001902365000035
以及生成器z2
Figure FDA00001902365000036
来确定;以及
对于l=2和l=3,所述模数d和所述乘数z满足所述
Figure FDA00001902365000038
为第l度频谱测试的测量性能。
CN2012102495669A 2011-11-28 2012-07-18 基于具有两个奇素因子的模数生成乘同余随机数的方法 Pending CN103135961A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2012102495669A CN103135961A (zh) 2011-11-28 2012-07-18 基于具有两个奇素因子的模数生成乘同余随机数的方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201110383838 2011-11-28
CN201110383838.X 2011-11-28
CN2012102495669A CN103135961A (zh) 2011-11-28 2012-07-18 基于具有两个奇素因子的模数生成乘同余随机数的方法

Publications (1)

Publication Number Publication Date
CN103135961A true CN103135961A (zh) 2013-06-05

Family

ID=48495840

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2012102495669A Pending CN103135961A (zh) 2011-11-28 2012-07-18 基于具有两个奇素因子的模数生成乘同余随机数的方法

Country Status (1)

Country Link
CN (1) CN103135961A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2824565A1 (en) 2013-07-08 2015-01-14 Hiroshi Nakazawa Method of generating uniform and independent random numbers
CN110928523A (zh) * 2019-12-04 2020-03-27 中体彩科技发展有限公司 用于彩票行业的随机数获取方法及系统
CN111666872A (zh) * 2020-06-04 2020-09-15 电子科技大学 一种数据不平衡下的高效行为识别方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1668995A (zh) * 2002-06-06 2005-09-14 克瑞迪科公司 用于改善伪随机数发生器的输出的不可预测性的方法
CN101044449A (zh) * 2004-07-23 2007-09-26 高通股份有限公司 用于随机数生成器的方法和装置
US20100030829A1 (en) * 2008-08-02 2010-02-04 Hiroshi Nakazawa Method of generating random numbers

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1668995A (zh) * 2002-06-06 2005-09-14 克瑞迪科公司 用于改善伪随机数发生器的输出的不可预测性的方法
CN101044449A (zh) * 2004-07-23 2007-09-26 高通股份有限公司 用于随机数生成器的方法和装置
US20100030829A1 (en) * 2008-08-02 2010-02-04 Hiroshi Nakazawa Method of generating random numbers

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
NAOYA NAKAZAWA ET AL.: "Spectral Tests of Primitive Roots for Primes up to 101027 and of Multiplicative Congruential Random Number Sequences Generated by Pairs of Primitive Roots", 《HTTP://WWW10.PLALA.OR.IP/H-NKZW/PAIRTEST90REVBIND.PDF》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2824565A1 (en) 2013-07-08 2015-01-14 Hiroshi Nakazawa Method of generating uniform and independent random numbers
CN110928523A (zh) * 2019-12-04 2020-03-27 中体彩科技发展有限公司 用于彩票行业的随机数获取方法及系统
CN110928523B (zh) * 2019-12-04 2021-11-19 中体彩科技发展有限公司 用于彩票行业的随机数获取方法及系统
CN111666872A (zh) * 2020-06-04 2020-09-15 电子科技大学 一种数据不平衡下的高效行为识别方法
CN111666872B (zh) * 2020-06-04 2022-08-05 电子科技大学 一种数据不平衡下的高效行为识别方法

Similar Documents

Publication Publication Date Title
De Feo et al. Towards practical key exchange from ordinary isogeny graphs
Pan et al. Novel systolization of subquadratic space complexity multipliers based on toeplitz matrix–vector product approach
Jain et al. The price of differential privacy under continual observation
Guillevic A short-list of pairing-friendly curves resistant to special TNFS at the 128-bit security level
Granville Primes in intervals of bounded length
Aranha et al. A survey of elliptic curves for proof systems
Lecerf New recombination algorithms for bivariate polynomial factorization based on Hensel lifting
CN103135961A (zh) 基于具有两个奇素因子的模数生成乘同余随机数的方法
Mathai et al. A noncommutative sigma-model
Sanso et al. Families of prime-order endomorphism-equipped embedded curves on pairing-friendly curves
Bernstein Simplified high-speed high-distance list decoding for alternant codes
Frixons et al. Quantum security of the legendre prf
Halevi et al. HElib design principles
Nilsson Monomial Dynamical Systems in the Fields of p-adic Numbers and Their Finite Extensions
Weibel NK 0 and NK 1 of the groups C 4 and D 4 Addendum to “Lower algebraic K-theory of hyperbolic 3-simplex reflection groups” by J.-F. Lafont and IJ Ortiz
Bessalov et al. Interrelation of families of points of high order on the Edwards curve over a prime field
Devic et al. Adelic openness for Drinfeld modules in special characteristic
Joux et al. Algorithmic aspects of elliptic bases in finite field discrete logarithm algorithms
Larsen Rank of elliptic curves over almost separably closed fields
Helleseth Nonlinear shift registers—A survey and challenges
Sati An approach to anomalies in M-theory via KSpin
CN104281435A (zh) 生成均匀且无关随机数的方法
Sarkar et al. A unified polynomial selection method for the (tower) number field sieve algorithm
Carlet Constructing balanced functions with optimum algebraic immunity
Mihailescu et al. Computing the eigenvalue in the Schoof-Elkies-Atkin algorithm using Abelian lifts

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1184885

Country of ref document: HK

C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20130605

REG Reference to a national code

Ref country code: HK

Ref legal event code: WD

Ref document number: 1184885

Country of ref document: HK