diff --git a/include/boost/random/seed_seq.hpp b/include/boost/random/seed_seq.hpp index a541a53..461fba3 100644 --- a/include/boost/random/seed_seq.hpp +++ b/include/boost/random/seed_seq.hpp @@ -98,8 +98,8 @@ public: r3 = r3 ^ (r3 >> 27); r3 = (r3 * 1566083941u) & mask; value_type r4 = r3 - k%m; - *(first + (k+p)%n) ^= r4; - *(first + (k+q)%n) ^= r3; + *(first + (k+p)%n) ^= r3; + *(first + (k+q)%n) ^= r4; *(first + k%n) = r4; } } diff --git a/test/test_ecuyer1988.cpp b/test/test_ecuyer1988.cpp index 19cd1e5..81f0674 100644 --- a/test/test_ecuyer1988.cpp +++ b/test/test_ecuyer1988.cpp @@ -16,7 +16,7 @@ #define BOOST_RANDOM_SEED_WORDS 2 #define BOOST_RANDOM_VALIDATION_VALUE 2060321752U -#define BOOST_RANDOM_SEED_SEQ_VALIDATION_VALUE 1416886025U +#define BOOST_RANDOM_SEED_SEQ_VALIDATION_VALUE 1928563088U #define BOOST_RANDOM_ITERATOR_VALIDATION_VALUE 776923198U #define BOOST_RANDOM_GENERATE_VALUES { 0x7AE0C087U, 0x948A8A31U, 0xBE5CCBA9U, 0x1316692CU } diff --git a/test/test_hellekalek1995.cpp b/test/test_hellekalek1995.cpp index 1388397..cc69ebd 100644 --- a/test/test_hellekalek1995.cpp +++ b/test/test_hellekalek1995.cpp @@ -16,7 +16,7 @@ #define BOOST_RANDOM_SEED_WORDS 1 #define BOOST_RANDOM_VALIDATION_VALUE 1187812169U -#define BOOST_RANDOM_SEED_SEQ_VALIDATION_VALUE 1081665111U +#define BOOST_RANDOM_SEED_SEQ_VALIDATION_VALUE 1912573642U #define BOOST_RANDOM_ITERATOR_VALIDATION_VALUE 618743552U #define BOOST_RANDOM_GENERATE_VALUES { 0x5642A47BU, 0x1F6987E8U, 0xD35860E7U, 0xC8C661ABU } diff --git a/test/test_independent_bits31.cpp b/test/test_independent_bits31.cpp index 0c38f8a..aaa3f10 100644 --- a/test/test_independent_bits31.cpp +++ b/test/test_independent_bits31.cpp @@ -18,7 +18,7 @@ typedef boost::random::independent_bits_engine la #define BOOST_RANDOM_SEED_WORDS 607 #define BOOST_RANDOM_VALIDATION_VALUE 3543833U -#define BOOST_RANDOM_SEED_SEQ_VALIDATION_VALUE 7852929U +#define BOOST_RANDOM_SEED_SEQ_VALIDATION_VALUE 1364481U #define BOOST_RANDOM_ITERATOR_VALIDATION_VALUE 4372778U #define BOOST_RANDOM_GENERATE_VALUES { 0xF61A5094U, 0xFC4BA046U, 0xF1C41E92U, 0x3D82FE61U } diff --git a/test/test_lagged_fibonacci1279.cpp b/test/test_lagged_fibonacci1279.cpp index b7bbba7..69a12f1 100644 --- a/test/test_lagged_fibonacci1279.cpp +++ b/test/test_lagged_fibonacci1279.cpp @@ -16,7 +16,7 @@ #define BOOST_RANDOM_SEED_WORDS 1279*2 #define BOOST_RANDOM_VALIDATION_VALUE 0.39647253381274083 -#define BOOST_RANDOM_SEED_SEQ_VALIDATION_VALUE 0.37536953918742455 +#define BOOST_RANDOM_SEED_SEQ_VALIDATION_VALUE 0.97108839261370505 #define BOOST_RANDOM_ITERATOR_VALIDATION_VALUE 0.56042480761195179 #define BOOST_RANDOM_GENERATE_VALUES { 0x4D102C47U, 0xC4E610D7U, 0xF29333BEU, 0x6E45EBE7U } diff --git a/test/test_lagged_fibonacci19937.cpp b/test/test_lagged_fibonacci19937.cpp index c95972e..f28a71d 100644 --- a/test/test_lagged_fibonacci19937.cpp +++ b/test/test_lagged_fibonacci19937.cpp @@ -16,7 +16,7 @@ #define BOOST_RANDOM_SEED_WORDS 19937*2 #define BOOST_RANDOM_VALIDATION_VALUE 0.24396310480293693 -#define BOOST_RANDOM_SEED_SEQ_VALIDATION_VALUE 0.48319870930434661 +#define BOOST_RANDOM_SEED_SEQ_VALIDATION_VALUE 0.95892429604358043 #define BOOST_RANDOM_ITERATOR_VALIDATION_VALUE 0.0029754638678802792 #define BOOST_RANDOM_GENERATE_VALUES { 0x5CE9850CU, 0xAA20067BU, 0x4E48643BU, 0xA4A59F4BU } diff --git a/test/test_lagged_fibonacci2281.cpp b/test/test_lagged_fibonacci2281.cpp index 39f5de8..b87ab82 100644 --- a/test/test_lagged_fibonacci2281.cpp +++ b/test/test_lagged_fibonacci2281.cpp @@ -16,7 +16,7 @@ #define BOOST_RANDOM_SEED_WORDS 2281*2 #define BOOST_RANDOM_VALIDATION_VALUE 0.91955231927349246 -#define BOOST_RANDOM_SEED_SEQ_VALIDATION_VALUE 0.58796187519502041 +#define BOOST_RANDOM_SEED_SEQ_VALIDATION_VALUE 0.4447517699440553 #define BOOST_RANDOM_ITERATOR_VALIDATION_VALUE 0.087280273457821522 #define BOOST_RANDOM_GENERATE_VALUES { 0x7EB0882AU, 0xCE09BE60U, 0xD53046CFU, 0x93257E41U } diff --git a/test/test_lagged_fibonacci23209.cpp b/test/test_lagged_fibonacci23209.cpp index 08f2cfa..84918d9 100644 --- a/test/test_lagged_fibonacci23209.cpp +++ b/test/test_lagged_fibonacci23209.cpp @@ -16,7 +16,7 @@ #define BOOST_RANDOM_SEED_WORDS 23209*2 #define BOOST_RANDOM_VALIDATION_VALUE 0.086299988971202168 -#define BOOST_RANDOM_SEED_SEQ_VALIDATION_VALUE 0.59787206924233871 +#define BOOST_RANDOM_SEED_SEQ_VALIDATION_VALUE 0.63611281281476195 #define BOOST_RANDOM_ITERATOR_VALIDATION_VALUE 0.0019836425785868528 #define BOOST_RANDOM_GENERATE_VALUES { 0x4301DE0AU, 0xAD2584E3U, 0x7C28463CU, 0x74848542U } diff --git a/test/test_lagged_fibonacci3217.cpp b/test/test_lagged_fibonacci3217.cpp index d2b52ce..f5bcf10 100644 --- a/test/test_lagged_fibonacci3217.cpp +++ b/test/test_lagged_fibonacci3217.cpp @@ -16,7 +16,7 @@ #define BOOST_RANDOM_SEED_WORDS 3217*2 #define BOOST_RANDOM_VALIDATION_VALUE 0.54223093970093927 -#define BOOST_RANDOM_SEED_SEQ_VALIDATION_VALUE 0.51719299526538975 +#define BOOST_RANDOM_SEED_SEQ_VALIDATION_VALUE 0.073852702370395207 #define BOOST_RANDOM_ITERATOR_VALIDATION_VALUE 0.1805114746514036 #define BOOST_RANDOM_GENERATE_VALUES { 0x4938F127U, 0x86C65CFEU, 0x65356579U, 0xA6CDC325U } diff --git a/test/test_lagged_fibonacci4423.cpp b/test/test_lagged_fibonacci4423.cpp index 98a93f0..f19d4e2 100644 --- a/test/test_lagged_fibonacci4423.cpp +++ b/test/test_lagged_fibonacci4423.cpp @@ -16,7 +16,7 @@ #define BOOST_RANDOM_SEED_WORDS 4423*2 #define BOOST_RANDOM_VALIDATION_VALUE 0.23188533286820601 -#define BOOST_RANDOM_SEED_SEQ_VALIDATION_VALUE 0.51262293730517783 +#define BOOST_RANDOM_SEED_SEQ_VALIDATION_VALUE 0.3872440622693567 #define BOOST_RANDOM_ITERATOR_VALIDATION_VALUE 0.012893676760814543 #define BOOST_RANDOM_GENERATE_VALUES { 0x6D4DBAFU, 0x8039C1A9U, 0x3DA53D58U, 0x95155BE5U } diff --git a/test/test_lagged_fibonacci44497.cpp b/test/test_lagged_fibonacci44497.cpp index 4447773..0983089 100644 --- a/test/test_lagged_fibonacci44497.cpp +++ b/test/test_lagged_fibonacci44497.cpp @@ -16,7 +16,7 @@ #define BOOST_RANDOM_SEED_WORDS 44497*2 #define BOOST_RANDOM_VALIDATION_VALUE 0.12519369894159738 -#define BOOST_RANDOM_SEED_SEQ_VALIDATION_VALUE 0.63574754742431594 +#define BOOST_RANDOM_SEED_SEQ_VALIDATION_VALUE 0.92285669730527431 #define BOOST_RANDOM_ITERATOR_VALIDATION_VALUE 0.0019836425785868528 #define BOOST_RANDOM_GENERATE_VALUES { 0x6A2DCEA9U, 0x4668EFB4U, 0x711E352FU, 0xA963C43BU } diff --git a/test/test_lagged_fibonacci607.cpp b/test/test_lagged_fibonacci607.cpp index 393f49a..3095414 100644 --- a/test/test_lagged_fibonacci607.cpp +++ b/test/test_lagged_fibonacci607.cpp @@ -16,7 +16,7 @@ #define BOOST_RANDOM_SEED_WORDS 607*2 #define BOOST_RANDOM_VALIDATION_VALUE 0.039230772001715764 -#define BOOST_RANDOM_SEED_SEQ_VALIDATION_VALUE 0.73011070026216984 +#define BOOST_RANDOM_SEED_SEQ_VALIDATION_VALUE 0.73105942788451372 #define BOOST_RANDOM_ITERATOR_VALIDATION_VALUE 0.72330291632639643 #define BOOST_RANDOM_GENERATE_VALUES { 0x78EB0905U, 0x61766547U, 0xCB507F64U, 0x94FA3EC0U } diff --git a/test/test_lagged_fibonacci9689.cpp b/test/test_lagged_fibonacci9689.cpp index af185ff..d8af5e6 100644 --- a/test/test_lagged_fibonacci9689.cpp +++ b/test/test_lagged_fibonacci9689.cpp @@ -16,7 +16,7 @@ #define BOOST_RANDOM_SEED_WORDS 9689*2 #define BOOST_RANDOM_VALIDATION_VALUE 0.059230573043926427 -#define BOOST_RANDOM_SEED_SEQ_VALIDATION_VALUE 0.84199156986666068 +#define BOOST_RANDOM_SEED_SEQ_VALIDATION_VALUE 0.80900890657466462 #define BOOST_RANDOM_ITERATOR_VALIDATION_VALUE 0.0039672851571737056 #define BOOST_RANDOM_GENERATE_VALUES { 0x32EF18BEU, 0x79277C11U, 0xA383438U, 0x32155952U } diff --git a/test/test_linear_feedback_shift.cpp b/test/test_linear_feedback_shift.cpp index b0f0e98..7ab7001 100644 --- a/test/test_linear_feedback_shift.cpp +++ b/test/test_linear_feedback_shift.cpp @@ -17,7 +17,7 @@ typedef boost::random::linear_feedback_shift_engine data = list_of(2)(3)(4); diff --git a/test/test_taus88.cpp b/test/test_taus88.cpp index b0e77ba..6e12f61 100644 --- a/test/test_taus88.cpp +++ b/test/test_taus88.cpp @@ -16,7 +16,7 @@ #define BOOST_RANDOM_SEED_WORDS 3 #define BOOST_RANDOM_VALIDATION_VALUE 3535848941U -#define BOOST_RANDOM_SEED_SEQ_VALIDATION_VALUE 2005586065U +#define BOOST_RANDOM_SEED_SEQ_VALIDATION_VALUE 2562639222U #define BOOST_RANDOM_ITERATOR_VALIDATION_VALUE 3762466828U #define BOOST_RANDOM_GENERATE_VALUES { 0x2B55504U, 0x5403F102U, 0xED45297EU, 0x6B84007U }