( Random State Initialization

Info Catalog ( Random Number Functions ( Random Number Functions ( Random State Seeding
 Random State Initialization
  - Function: void gmp_randinit_default (gmp_randstate_t STATE)
      Initialize STATE with a default algorithm.  This will be a
      compromise between speed and randomness, and is recommended for
      applications with no special requirements.  Currently this is
  - Function: int gmp_randinit_mt (gmp_randstate_t STATE)
      Initialize STATE for a Mersenne Twister algorithm.  This algorithm
      is fast and has good randomness properties.
  - Function: void gmp_randinit_lc_2exp (gmp_randstate_t STATE, mpz_t A,
           unsigned long C, unsigned long M2EXP)
      Initialize STATE with a linear congruential algorithm X = (A*X +
      C) mod 2^M2EXP.
      The low bits of X in this algorithm are not very random.  The least
      significant bit will have a period no more than 2, and the second
      bit no more than 4, etc.  For this reason only the high half of
      each X is actually used.
      When a random number of more than M2EXP/2 bits is to be generated,
      multiple iterations of the recurrence are used and the results
  - Function: int gmp_randinit_lc_2exp_size (gmp_randstate_t STATE,
           unsigned long SIZE)
      Initialize STATE for a linear congruential algorithm as per
      `gmp_randinit_lc_2exp'.  A, C and M2EXP are selected from a table,
      chosen so that SIZE bits (or more) of each X will be used, ie.
      M2EXP/2 >= SIZE.
      If successful the return value is non-zero.  If SIZE is bigger
      than the table data provides then the return value is zero.  The
      maximum SIZE currently supported is 128.
  - Function: int gmp_randinit_set (gmp_randstate_t ROP, gmp_randstate_t
      Initialize ROP with a copy of the algorithm and state from OP.
  - Function: void gmp_randinit (gmp_randstate_t STATE,
           gmp_randalg_t ALG, ...)
      *This function is obsolete.*
      Initialize STATE with an algorithm selected by ALG.  The only
      choice is `GMP_RAND_ALG_LC', which is `gmp_randinit_lc_2exp_size'
      described above.  A third parameter of type `unsigned long' is
      required, this is the SIZE for that function.
      `GMP_RAND_ALG_DEFAULT' or 0 are the same as `GMP_RAND_ALG_LC'.
      `gmp_randinit' sets bits in the global variable `gmp_errno' to
      indicate an error.  `GMP_ERROR_UNSUPPORTED_ARGUMENT' if ALG is
      unsupported, or `GMP_ERROR_INVALID_ARGUMENT' if the SIZE parameter
      is too big.  It may be noted this error reporting is not thread
      safe (a good reason to use `gmp_randinit_lc_2exp_size' instead).
  - Function: void gmp_randclear (gmp_randstate_t STATE)
      Free all memory occupied by STATE.
Info Catalog ( Random Number Functions ( Random Number Functions ( Random State Seeding
automatically generated byinfo2html