<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<item>
  <id>01105858</id>
  <dt>j</dt>
  <an>01105858</an>
  <augroup>
    <au>H\"ormann, W.</au>
    <au>Derflinger, G.</au>
  </augroup>
  <ti>A portable random number generator well suited for the rejection method.</ti>
  <so>ACM Trans. Math. Softw. 19, No.4, 489-495 (1993).</so>
  <py>1993</py>
  <pu>Association for Computing Machinery, New York</pu>
  <lagroup>
    <la>EN</la>
  </lagroup>
  <ccgroup>
  </ccgroup>
  <utgroup>
    <ut>linear congruential random number generators</ut>
    <ut>nonuniform distributions</ut>
    <ut>rejection method</ut>
    <ut>portable methods</ut>
    <ut>portability</ut>
    <ut>quality of nonuniform random numbers</ut>
    <ut>uniform random number generator</ut>
  </utgroup>
  <cigroup>
  </cigroup>
  <ligroup>
    <li>doi:10.1145/168173.168414</li>
    <li>http://www.acm.org/pubs/contents/journals/toms/1993-19/</li>
  </ligroup>
  <abgroup>
    <ab>Summary: Up to now, all known efficient portable implementations of linear congruential random number generators with modulus $2^{31} - 1$ have worked only with multipliers that are small compared with the modulus. We show that for nonuniform distributions, the rejection method may generate random numbers of bad quality if combined with a linear congruential generator with small multiplier. A method is described that works for any multiplier smaller than $2^{30}$. It uses the decomposition of multiplier and seed in high-order and low-order bits to compute the upper and lower half of the product. The sum of the two halfs gives the product of multiplier and seed modulo $2^{31} - 1$. Coded in ANSI-C and FORTRAN 77 the method results in a portable implementation of the linear congruential generator that is as fast or faster than other portable methods.</ab>
    <rv></rv>
  </abgroup>
</item>