Mercury coulometer

From formulasearchengine
Revision as of 04:27, 2 June 2013 by en>Scientific29
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Inversive congruential generators are a type of nonlinear congruential pseudorandom number generator, which use the modular multiplicative inverse (if it exists) to generate the next number in a sequence. The standard formula for an inversive congruential generator, modulo some prime q is:

x0= seed
xi+1(axi1+c)modq   if xi0
xi+1=c if xi=0

Such a generator is denoted symbolically as ICG(q,a,c,seed) and is said to be an ICG with parameters q,a,c and seed seed.

Period

The sequence (xn)n0 must have xi=xj after finitely many steps and since the next element depends only on its direct predecessor also xi+1=xj+1 etc. The maximum length that the period T for a function modulo q can have is Template:Gaps. If the polynomial f(x)=x2cxa𝔽q[x] (polynomial ring over 𝔽q) is primitive, then the sequence will have the maximum length. Such polynomials are called inversive maximal period (IMP) polynomials. The sufficient condition for maximum sequence period is a proper choice of parameters a and c according to the algorithm described in.[1] Eichenauer-Herrmann, Lehn, Grothe and Niederreiter have shown that inversive congruential generators have good uniformity properties, in particular with regard to lattice structure and serial correlations.

Example

ICG(5,2,3,1) gives the sequence:(1,0,3,2,4,1,.....) (as in 𝔽5, 1 and 4 are their own inverse, 2 is the inverse of 3 and conversely). In this example f(x)=x23x2 is irreducible in 𝔽5[x] as neither 0,1,2,3 or 4 are roots, and therefore the period is equal to Template:Gaps.In order to show that f is primitive one should show that x is a primitive element of 𝔽5[x]/(f).

Compound Inversive Generator

The construction of a Compound Inversive Generator (CIG) relies on combining two or more congruential inversive generators according to the method described below.

Let p1,,pr be distinct prime integers, each pj5. For each index j,1≤ j ≤ r, let (xn)n0 be a sequence of elements of 𝔽pj, that is periodic with period length pj. In other words,{xn(j)|0npj}=𝔽pj.

For each index j, 1≤ j ≤ r, we consider Tj=T/pj where T=p1pr is the period length of the following sequence (xn)n0.

The sequence (xn)n0 of compound pseudorandom numbers is defined as the sum

xn=T1xn(1)+T2xn(2)++Trxn(r)modT.

The compound approach allows combining Inversive Congruential Generators, provided they have full period, in parallel generation systems.

Example

Let p1=5 and p2=7(r=2). To simplify, take (xn(1))n0=(0,1,2,3,4,) and (xn(2))n0=(0,1,2,3,4,5,6,). We compute for every 1≤ j≤ 35, xj=7xj(1)+5xj(2)mod35 then (xn)n0=(0,12,24,1,13,25,2,14,26,3,15,27,4,16,28,5,17,29,6,18,30,7,19,31,8,20,32,9,21,33,10,22,34,11,23) (we have to do the 35 different sums to obtain 0+0 and we begin the same sequence again, the period is 5×7=35). This method allows obtaining very long period and modular operations may be carried out with relatively small moduli.

Advantages of CIG

The CIG are accepted for practical purposes for a number of reason.

Firstly, binary sequences produced in this way are free of undesirable statistical deviations. Inversive sequences extensively tested with variety of statistical tests remain stable under the variation of parameter.[2][3][4]

Secondly, there exists a steady and simple way of parameter choice, based on the Chou algorithm [1] that guarantees maximum period length.

Thirdly, compound approach has the same properties as single inversive generators [5][6] but it also provides period length significantly greater than obtained by a single Inversive Congruential Generator. They seem to be designed for application with multiprocessor parallel hardware platforms.

There exists an algorithm [7] which allows designing compound generators with predictable period length, predictable linear complexity level, with excellent statistical properties of produced bit streams.

The procedure of designing this complex structure starts with defining finite field of p elements and ends with choosing the parameters a and c for each Inversive Congruential Generator being the component of the compound generator. It means that each generator is associated to a fixed IMP polynomial. Such a condition is sufficient for maximum period of each Inversive Congruential Generator[8] and finally for maximum period of the compound generator. The construction of IMP polynomials is the most efficient approach to find parameters for Inversive Congruential Generator with maximum period length.

Discrepancy and its boundaries

Equidistribution and statistical independence properties of the generated sequences, which are very important for their usability in a stochastic simulation, can be analyzed based on the discrepancy of s-tuples of successive pseudorandom numbers with s=1 and s=2 respectively.

The discrepancy computes the distance of a generator from a uniform one, a low discrepancy means that the sequence generated can be used for cryptographic purposes and the first aim of the Inversive congruential generator is to provide pseudorandom numbers.

Definition

For N arbitrary points t1,,tN1[0,1) the discrepancy is defined by DN(t1,,tN1)=supJ|FN(J)V(J)|, where the supremum is extended over all subintervals J of [0,1)s, FN(J) is N1 times the number of points among t1,,tN1 falling into J and V(J) denotes the s-dimensional volume of J.

Until now, we had sequences of integers from 0 to T-1, in order to have sequences of [0,1)s, one can divide a sequences of integers by its period T.

From this definition, we can say that if the sequence t1,,tN1 is perfectly random then its well distributed on the interval J=[0,1)s then V(J)=1 and all points are in J so FN(J)=N/N=1 hence DN(t1,,tN1)=0 but instead if the sequence is concentrated close to one point then the subinterval J is very small V(j)0 and FN(j)N/N1 so DN(t1,,tN1)=1 Then we have from the better and worst case: 0DN(t1,,tN1)1.

Notations

Some further notation is necessary. For integers k1 and q2 let Ck(q) be the set of nonzero lattice points (h1,,hk)Zk with q/2<hj<q/2 for 1jk.

Define

r(h,q)={qsin(π|h|/q)for hC1(q)1for h=0

and

r(h,q)=j=1kr(hj,q)

for h=(h1,,hk)Ck(q). For real t the abbreviation e(t)=exp(2πit) is used, and uv stands for the standard inner product of u,vinRk.

Higher bound

Let N1 and q2 be integers. Let tn=yn/q[0,1)k with yn{0,1,,q1}k for 0n<N.

Then the discrepancy of the points t0,,tN1 satisfies

DN(t0,t1,,tN1)kq + 1N hk(q)1r(h,q)|n=0N1e(htn)|

Lower bound

The discrepancy of N arbitrary points t1,,tN1[0,1)k satisfies

DN(t0,t1,,tN1)π2N((π+1)l1)j=1kmax(1,hj)|n=0N1e(htn)|

for any nonzero lattice point h=(h1,,hk)Zk, where l denotes the number of nonzero coordinates of h.

These two theorems show that the CIG is not perfect because the discrepancy is greater strictly than a positive value but also the CIG is not the worst generator as the discrepancy is lower than a value less than 1.

There exist also theorems which bound the average value of the discrepancy for Compound Inversive Generators and also ones which take values such that the discrepancy is bounded by some value depending on the parameters. For more details see the original paper.[9]

See also

References

43 year old Petroleum Engineer Harry from Deep River, usually spends time with hobbies and interests like renting movies, property developers in singapore new condominium and vehicle racing. Constantly enjoys going to destinations like Camino Real de Tierra Adentro.

External links

  1. 1.0 1.1 Cite error: Invalid <ref> tag; no text was provided for refs named one
  2. Cite error: Invalid <ref> tag; no text was provided for refs named two
  3. Cite error: Invalid <ref> tag; no text was provided for refs named three
  4. Cite error: Invalid <ref> tag; no text was provided for refs named four
  5. Cite error: Invalid <ref> tag; no text was provided for refs named five
  6. Cite error: Invalid <ref> tag; no text was provided for refs named six
  7. Cite error: Invalid <ref> tag; no text was provided for refs named seven
  8. Cite error: Invalid <ref> tag; no text was provided for refs named eight
  9. Cite error: Invalid <ref> tag; no text was provided for refs named nine