# 
# RandomSource: WELL_19937_A
# RNG: org.apache.commons.rng.core.source32.Well19937a
# Seed: 4b16f16c927f42c54e18844607e8d2a1aad0a21ac980d115651d6d747403cca0396730fe3583b7f9a2f0eb33d9b5293928742c993a2bb103367b88f7ba7362d8a3b2c534bff6bd961ce9e3d3b1b48100d99d7fbbae454bcb798714117d4d885cfeeac5f558e8f5c7e99bbd48b773a6f6bee7dd490874c7f86daf524095fff81d2b259849e5f8f5deba4e0a8d517b9a7abe47f99a2315dd125f198164726da1fddade19ee8bf994af8f9bab5ad145c7509b4c57f659a1ff5d13a2b771cba10538769098d132e9ea6409f17a4917896233633b82d51b3e9880a9d31e28c0926a19eacbb482c74bbcc0c3599be615a4bbf44769be4f6bcebf0725e62a2999a3ab0189dab818906d3677281a4fd48d0dec3734b3b408b53cf5e5c980f8ff44618540668b64320bf814da4a72b81e4fe02f84c332be9f422ea2971970adcaf9a02448f1216ba5178ce8c22dcf4207d4d31a65fd982c5b3478745794eb8cba355eb2244055c893301ef333f1742fb6e7b5c0b2f3969ee328e2fd0e08e053e3372530d668eeeb8114717ce610a076ebd76324e1a073e9bd58269b7ad9ddbb70e30a7a5b547517d197d84cb0dbaef0e1fc08d784909b2f96d543db67e2ac0e6f9a3c6d8b020f2cc597f6ef05e42314605dac0aa0f298df14a098a5b013aa2d7d07f31c4f6d57d76c3ab00bd59a5c5ce380e3a995c402da728f6f93bd01d6b1ca1a226662
# 
# Java: 1.8.0_202
# Runtime: Java(TM) SE Runtime Environment (build 1.8.0_202-b08)
# JVM: Java HotSpot(TM) 64-Bit Server VM (build 25.202-b08, mixed mode)
# OS: Linux 3.13.0-91-generic amd64
# Native byte-order: LITTLE_ENDIAN
# Output byte-order: LITTLE_ENDIAN
# 
# Analyzer: /home/ah403/git/commons-rng/commons-rng-examples/examples-stress/stdin2testu01 BigCrush 
# 
# Start: 2019-10-07 19:58:43
# 
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
                 Starting BigCrush
                 Version: TestU01 1.2.3
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx


***********************************************************
Test smarsa_SerialOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N =  1,  n = 1000000000,  r =  0,   d =  256,   t =  3,
       Sparse =  FALSE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =           16777216
       Expected number per cell =   59.604645
       Hashing =  FALSE

   For Delta > -1, we use the ChiSquare approximation
   Correction factor of the ChiSquare: 
       Delta =     1,    Mu =   0.0083558402,    Sigma =          1

-----------------------------------------------
Test Results for Delta =   1.0000

Number of degrees of freedom          : 16711680
Value of the statistic                : 1.67e+7
p-value of test                       :    0.28


-----------------------------------------------
CPU time used                    :  00:02:10.96

Generator state:
N/A



***********************************************************
Test smarsa_SerialOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N =  1,  n = 1000000000,  r = 22,   d =  256,   t =  3,
       Sparse =  FALSE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =           16777216
       Expected number per cell =   59.604645
       Hashing =  FALSE

   For Delta > -1, we use the ChiSquare approximation
   Correction factor of the ChiSquare: 
       Delta =     1,    Mu =   0.0083558402,    Sigma =          1

-----------------------------------------------
Test Results for Delta =   1.0000

Number of degrees of freedom          : 16711680
Value of the statistic                : 1.67e+7
p-value of test                       :    0.61


-----------------------------------------------
CPU time used                    :  00:02:15.17

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r =  0,   d = 2097152,   t =  2,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1338
p-value of test                       :    0.76

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334458
  j =  1                              :        599997324
  j =  2                              :             1338
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:03:57.35

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r =  9,   d = 2097152,   t =  2,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1348
p-value of test                       :    0.66

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334468
  j =  1                              :        599997304
  j =  2                              :             1348
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:04:09.71

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r =  0,   d = 16384,   t =  3,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1339
p-value of test                       :    0.75

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334459
  j =  1                              :        599997322
  j =  2                              :             1339
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:05:03.33

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r = 16,   d = 16384,   t =  3,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1327
p-value of test                       :    0.84

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334447
  j =  1                              :        599997346
  j =  2                              :             1327
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:05:09.42

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r =  0,   d =   64,   t =  7,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1410
p-value of test                       :    0.11

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334530
  j =  1                              :        599997180
  j =  2                              :             1410
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:05:10.66

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r = 24,   d =   64,   t =  7,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1417
p-value of test                       :    0.08

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334537
  j =  1                              :        599997166
  j =  2                              :             1417
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:05:12.39

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r =  0,   d =    8,   t = 14,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1377
p-value of test                       :    0.37

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334497
  j =  1                              :        599997246
  j =  2                              :             1377
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:05:08.32

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r = 27,   d =    8,   t = 14,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1299
p-value of test                       :    0.96

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334419
  j =  1                              :        599997402
  j =  2                              :             1299
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:05:15.13

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r =  0,   d =    4,   t = 21,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1310
p-value of test                       :    0.93

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334430
  j =  1                              :        599997380
  j =  2                              :             1310
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:05:08.15

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r = 28,   d =    4,   t = 21,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1385
p-value of test                       :    0.29

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334505
  j =  1                              :        599997230
  j =  2                              :             1385
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:05:20.01

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 100,  n = 10000000,  r =  0,    d = 2147483648,    t = 2,    p = 1


      Number of cells = d^t = 4611686018427387904
      Lambda = Poisson mean =      54.2101


----------------------------------------------------
Total expected number = N*Lambda      :    5421.01
Total observed number                 :    5445
p-value of test                       :    0.37


-----------------------------------------------
CPU time used                    :  00:05:24.38

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 20,  n = 20000000,  r =  0,    d = 2097152,    t = 3,    p = 1


      Number of cells = d^t = 9223372036854775808
      Lambda = Poisson mean =     216.8404


----------------------------------------------------
Total expected number = N*Lambda      :    4336.81
Total observed number                 :    4317
p-value of test                       :    0.61


-----------------------------------------------
CPU time used                    :  00:02:24.21

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 20,  n = 30000000,  r = 14,    d = 65536,    t = 4,    p = 1


      Number of cells = d^t = 18446744073709551616
      Lambda = Poisson mean =     365.9182


----------------------------------------------------
Total expected number = N*Lambda      :    7318.36
Total observed number                 :    7328
p-value of test                       :    0.46


-----------------------------------------------
CPU time used                    :  00:04:06.48

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 20,  n = 20000000,  r =  0,    d = 512,    t = 7,    p = 1


      Number of cells = d^t = 9223372036854775808
      Lambda = Poisson mean =     216.8404


----------------------------------------------------
Total expected number = N*Lambda      :    4336.81
Total observed number                 :    4340
p-value of test                       :    0.48


-----------------------------------------------
CPU time used                    :  00:03:07.13

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 20,  n = 20000000,  r =  7,    d = 512,    t = 7,    p = 1


      Number of cells = d^t = 9223372036854775808
      Lambda = Poisson mean =     216.8404


----------------------------------------------------
Total expected number = N*Lambda      :    4336.81
Total observed number                 :    4410
p-value of test                       :    0.13


-----------------------------------------------
CPU time used                    :  00:03:16.34

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 20,  n = 30000000,  r = 14,    d = 256,    t = 8,    p = 1


      Number of cells = d^t = 18446744073709551616
      Lambda = Poisson mean =     365.9182


----------------------------------------------------
Total expected number = N*Lambda      :    7318.36
Total observed number                 :    7322
p-value of test                       :    0.48


-----------------------------------------------
CPU time used                    :  00:05:13.22

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 20,  n = 30000000,  r = 22,    d = 256,    t = 8,    p = 1


      Number of cells = d^t = 18446744073709551616
      Lambda = Poisson mean =     365.9182


----------------------------------------------------
Total expected number = N*Lambda      :    7318.36
Total observed number                 :    7237
p-value of test                       :    0.83


-----------------------------------------------
CPU time used                    :  00:05:18.59

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 20,  n = 30000000,  r =  0,    d = 16,    t = 16,    p = 1


      Number of cells = d^t = 18446744073709551616
      Lambda = Poisson mean =     365.9182


----------------------------------------------------
Total expected number = N*Lambda      :    7318.36
Total observed number                 :    7325
p-value of test                       :    0.47


-----------------------------------------------
CPU time used                    :  00:07:04.56

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 20,  n = 30000000,  r = 26,    d = 16,    t = 16,    p = 1


      Number of cells = d^t = 18446744073709551616
      Lambda = Poisson mean =     365.9182


----------------------------------------------------
Total expected number = N*Lambda      :    7318.36
Total observed number                 :    7380
p-value of test                       :    0.24


-----------------------------------------------
CPU time used                    :  00:07:43.13

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


snpair_ClosePairs test:
-----------------------------------------------
   N = 30,  n = 6000000,  r =  0,  t = 3,  p = 0,  m = 30,  Torus =  TRUE


---------------------------------------
Test based on the 2 nearest points (NP):

Stat. AD on the N values (NP)         :    0.77
p-value of test                       :    0.50


A2 test based on the spacings between the
   successive jump times of process Y_n(t):

A2 test on the values of A2 (m-NP)    :    1.00
p-value of test                       :    0.36

Test on the Nm values of W_{n,i}(mNP1):    0.77
p-value of test                       :    0.51

Test on the jump times of Y
   (superposition of Yn):

Expected number of jumps of Y = mN    :     900
Number of jumps of Y                  :     933
p-value of test                       :    0.14

Stat. AD (mNP2)                       :    0.37
p-value of test                       :    0.88

Stat. AD after spacings (mNP2-S)      :    2.44
p-value of test                       :    0.05

-----------------------------------------------
CPU time used                    :  00:03:53.10

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


snpair_ClosePairs test:
-----------------------------------------------
   N = 20,  n = 4000000,  r =  0,  t = 5,  p = 0,  m = 30,  Torus =  TRUE


---------------------------------------
Test based on the 2 nearest points (NP):

Stat. AD on the N values (NP)         :    0.67
p-value of test                       :    0.58


A2 test based on the spacings between the
   successive jump times of process Y_n(t):

A2 test on the values of A2 (m-NP)    :    2.34
p-value of test                       :    0.06

Test on the Nm values of W_{n,i}(mNP1):    1.53
p-value of test                       :    0.17

Test on the jump times of Y
   (superposition of Yn):

Expected number of jumps of Y = mN    :     600
Number of jumps of Y                  :     644
p-value of test                       :    0.04

Stat. AD (mNP2)                       :    0.59
p-value of test                       :    0.66

Stat. AD after spacings (mNP2-S)      :    1.24
p-value of test                       :    0.25

-----------------------------------------------
CPU time used                    :  00:02:08.76

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


snpair_ClosePairs test:
-----------------------------------------------
   N = 10,  n = 3000000,  r =  0,  t = 9,  p = 0,  m = 30,  Torus =  TRUE


---------------------------------------
Test based on the 2 nearest points (NP):

Stat. AD on the N values (NP)         :    1.63
p-value of test                       :    0.15


A2 test based on the spacings between the
   successive jump times of process Y_n(t):

A2 test on the values of A2 (m-NP)    :    0.53
p-value of test                       :    0.71

Test on the Nm values of W_{n,i}(mNP1):    0.58
p-value of test                       :    0.67

Test on the jump times of Y
   (superposition of Yn):

Expected number of jumps of Y = mN    :     300
Number of jumps of Y                  :     310
p-value of test                       :    0.29

Stat. AD (mNP2)                       :    0.65
p-value of test                       :    0.61

Stat. AD after spacings (mNP2-S)      :    1.94
p-value of test                       :    0.10

-----------------------------------------------
CPU time used                    :  00:03:46.43

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


snpair_ClosePairs test:
-----------------------------------------------
   N =  5,  n = 2000000,  r =  0,  t = 16,  p = 0,  m = 30,  Torus =  TRUE


---------------------------------------
Test based on the 2 nearest points (NP):

Stat. AD on the N values (NP)         :    0.56
p-value of test                       :    0.68


A2 test based on the spacings between the
   successive jump times of process Y_n(t):

A2 test on the values of A2 (m-NP)    :    1.07
p-value of test                       :    0.32

Test on the Nm values of W_{n,i}(mNP1):    0.36
p-value of test                       :    0.89

Test on the jump times of Y
   (superposition of Yn):

Expected number of jumps of Y = mN    :     150
Number of jumps of Y                  :     139
p-value of test                       :    0.80

Stat. AD (mNP2)                       :    1.98
p-value of test                       :    0.09

Stat. AD after spacings (mNP2-S)      :    0.93
p-value of test                       :    0.40

-----------------------------------------------
CPU time used                    :  00:04:00.52

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_SimpPoker test:
-----------------------------------------------
   N =  1,  n = 400000000,  r =  0,   d =    8,   k =    8


-----------------------------------------------
Number of degrees of freedom          :    7
Chi-square statistic                  :    2.77
p-value of test                       :    0.91

-----------------------------------------------
CPU time used                    :  00:01:48.40

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_SimpPoker test:
-----------------------------------------------
   N =  1,  n = 400000000,  r = 27,   d =    8,   k =    8


-----------------------------------------------
Number of degrees of freedom          :    7
Chi-square statistic                  :    9.57
p-value of test                       :    0.21

-----------------------------------------------
CPU time used                    :  00:02:18.43

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_SimpPoker test:
-----------------------------------------------
   N =  1,  n = 100000000,  r =  0,   d =   32,   k =   32


-----------------------------------------------
Number of degrees of freedom          :   18
Chi-square statistic                  :   18.47
p-value of test                       :    0.43

-----------------------------------------------
CPU time used                    :  00:01:51.65

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_SimpPoker test:
-----------------------------------------------
   N =  1,  n = 100000000,  r = 25,   d =   32,   k =   32


-----------------------------------------------
Number of degrees of freedom          :   18
Chi-square statistic                  :   20.18
p-value of test                       :    0.32

-----------------------------------------------
CPU time used                    :  00:02:11.82

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_CouponCollector test:
-----------------------------------------------
   N =  1,  n = 200000000,  r =  0,   d =    8


-----------------------------------------------
Number of degrees of freedom          :   54
Chi-square statistic                  :   58.20
p-value of test                       :    0.32

-----------------------------------------------
CPU time used                    :  00:02:40.39

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_CouponCollector test:
-----------------------------------------------
   N =  1,  n = 200000000,  r = 10,   d =    8


-----------------------------------------------
Number of degrees of freedom          :   54
Chi-square statistic                  :   30.27
p-value of test                       :    0.9963

-----------------------------------------------
CPU time used                    :  00:02:58.68

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_CouponCollector test:
-----------------------------------------------
   N =  1,  n = 200000000,  r = 20,   d =    8


-----------------------------------------------
Number of degrees of freedom          :   54
Chi-square statistic                  :   73.18
p-value of test                       :    0.04

-----------------------------------------------
CPU time used                    :  00:02:59.81

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_CouponCollector test:
-----------------------------------------------
   N =  1,  n = 200000000,  r = 27,   d =    8


-----------------------------------------------
Number of degrees of freedom          :   54
Chi-square statistic                  :   68.96
p-value of test                       :    0.08

-----------------------------------------------
CPU time used                    :  00:02:59.43

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_Gap test:
-----------------------------------------------
   N =  1,  n = 500000000,  r =  0,   Alpha =        0,   Beta  =   0.0625


-----------------------------------------------
Number of degrees of freedom          :  232
Chi-square statistic                  :  251.74
p-value of test                       :    0.18

-----------------------------------------------
CPU time used                    :  00:03:17.26

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_Gap test:
-----------------------------------------------
   N =  1,  n = 300000000,  r = 25,   Alpha =        0,   Beta  =  0.03125


-----------------------------------------------
Number of degrees of freedom          :  434
Chi-square statistic                  :  442.05
p-value of test                       :    0.38

-----------------------------------------------
CPU time used                    :  00:04:29.88

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_Gap test:
-----------------------------------------------
   N =  1,  n = 100000000,  r =  0,   Alpha =        0,   Beta  = 0.0078125


-----------------------------------------------
Number of degrees of freedom          : 1437
Chi-square statistic                  : 1435.75
p-value of test                       :    0.50

-----------------------------------------------
CPU time used                    :  00:04:59.60

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_Gap test:
-----------------------------------------------
   N =  1,  n = 10000000,  r = 20,   Alpha =        0,   Beta  = 0.000976562


-----------------------------------------------
Number of degrees of freedom          : 7046
Chi-square statistic                  : 7123.79
p-value of test                       :    0.26

-----------------------------------------------
CPU time used                    :  00:04:40.03

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_Run test:
-----------------------------------------------
   N =  5,  n = 1000000000,  r =  0,   Up = FALSE


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.19
p-value of test                       :    0.61

Kolmogorov-Smirnov- statistic = D-    :    0.32
p-value of test                       :    0.30

Anderson-Darling statistic = A2       :    0.63
p-value of test                       :    0.61

Test on the sum of all N observations
Number of degrees of freedom          :   30
Chi-square statistic                  :   31.00
p-value of test                       :    0.42

-----------------------------------------------
CPU time used                    :  00:02:33.45

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_Run test:
-----------------------------------------------
   N = 10,  n = 1000000000,  r = 15,   Up =  TRUE


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :   0.084
p-value of test                       :    0.83

Kolmogorov-Smirnov- statistic = D-    :    0.14
p-value of test                       :    0.61

Anderson-Darling statistic = A2       :    0.23
p-value of test                       :    0.98

Test on the sum of all N observations
Number of degrees of freedom          :   60
Chi-square statistic                  :   61.21
p-value of test                       :    0.43

-----------------------------------------------
CPU time used                    :  00:06:00.68

Generator state:
N/A



***********************************************************
Test sknuth_Permutation calling smultin_Multinomial

***********************************************************
HOST = tallinn, Linux

stdin


smultin_Multinomial test:
-----------------------------------------------
   N =  1,  n = 1000000000,  r =  5,   t =  3,
       Sparse =  FALSE

       GenerCell = smultin_GenerCellPermut
       Number of cells = t! =                  6
       Expected number per cell =  1.6666667e+08
       Hashing =  FALSE

   For Delta > -1, we use the ChiSquare approximation
   Correction factor of the ChiSquare: 
       Delta =     1,    Mu =  2.5000002e-09,    Sigma =          1

-----------------------------------------------
Test Results for Delta =   1.0000

Number of degrees of freedom          :    5
Value of the statistic                :    2.41
p-value of test                       :    0.79


-----------------------------------------------
CPU time used                    :  00:01:50.40

Generator state:
N/A



***********************************************************
Test sknuth_Permutation calling smultin_Multinomial

***********************************************************
HOST = tallinn, Linux

stdin


smultin_Multinomial test:
-----------------------------------------------
   N =  1,  n = 1000000000,  r =  5,   t =  5,
       Sparse =  FALSE

       GenerCell = smultin_GenerCellPermut
       Number of cells = t! =                120
       Expected number per cell =   8333333.3
       Hashing =  FALSE

   For Delta > -1, we use the ChiSquare approximation
   Correction factor of the ChiSquare: 
       Delta =     1,    Mu =  5.9500005e-08,    Sigma =          1

-----------------------------------------------
Test Results for Delta =   1.0000

Number of degrees of freedom          :  119
Value of the statistic                :  114.10
p-value of test                       :    0.61


-----------------------------------------------
CPU time used                    :  00:03:08.84

Generator state:
N/A



***********************************************************
Test sknuth_Permutation calling smultin_Multinomial

***********************************************************
HOST = tallinn, Linux

stdin


smultin_Multinomial test:
-----------------------------------------------
   N =  1,  n = 500000000,  r =  5,   t =  7,
       Sparse =  FALSE

       GenerCell = smultin_GenerCellPermut
       Number of cells = t! =               5040
       Expected number per cell =   99206.349
       Hashing =  FALSE

   For Delta > -1, we use the ChiSquare approximation
   Correction factor of the ChiSquare: 
       Delta =     1,    Mu =  5.0390004e-06,    Sigma =          1

-----------------------------------------------
Test Results for Delta =   1.0000

Number of degrees of freedom          : 5039
Value of the statistic                : 5179.13
p-value of test                       :    0.08


-----------------------------------------------
CPU time used                    :  00:02:21.30

Generator state:
N/A



***********************************************************
Test sknuth_Permutation calling smultin_Multinomial

***********************************************************
HOST = tallinn, Linux

stdin


smultin_Multinomial test:
-----------------------------------------------
   N =  1,  n = 500000000,  r = 10,   t = 10,
       Sparse =  FALSE

       GenerCell = smultin_GenerCellPermut
       Number of cells = t! =            3628800
       Expected number per cell =    137.7866
       Hashing =  FALSE

   For Delta > -1, we use the ChiSquare approximation
   Correction factor of the ChiSquare: 
       Delta =     1,    Mu =   0.0036287993,    Sigma =          1

-----------------------------------------------
Test Results for Delta =   1.0000

Number of degrees of freedom          : 3628799
Value of the statistic                : 3.63e+6
p-value of test                       :    0.27


-----------------------------------------------
CPU time used                    :  00:04:10.79

Generator state:
N/A



***********************************************************
Test sknuth_CollisionPermut calling smultin_Multinomial

***********************************************************
HOST = tallinn, Linux

stdin


smultin_Multinomial test:
-----------------------------------------------
   N = 20,  n = 20000000,  r =  0,   t = 14,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellPermut
       Number of cells = t! =        87178291200
       Expected number per cell =  1 /  4358.9146
       EColl = n^2 / (2k) =   2294.14912
       Hashing =   TRUE

       Collision test,    Mu =      2293.9736,    Sigma =    47.8841

-----------------------------------------------
Test Results for Collisions

For the total number of collisions, we use
      the Poisson approximation:
Expected number of collisions = N*Mu  :    45879.47
Observed number of collisions         :    46151
p-value of test                       :    0.10


-----------------------------
Total number of cells containing j balls

  j =  0                              :    1743165870151
  j =  1                              :        399907699
  j =  2                              :            46149
  j =  3                              :                1
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:05:28.75

Generator state:
N/A



***********************************************************
Test sknuth_CollisionPermut calling smultin_Multinomial

***********************************************************
HOST = tallinn, Linux

stdin


smultin_Multinomial test:
-----------------------------------------------
   N = 20,  n = 20000000,  r = 10,   t = 14,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellPermut
       Number of cells = t! =        87178291200
       Expected number per cell =  1 /  4358.9146
       EColl = n^2 / (2k) =   2294.14912
       Hashing =   TRUE

       Collision test,    Mu =      2293.9736,    Sigma =    47.8841

-----------------------------------------------
Test Results for Collisions

For the total number of collisions, we use
      the Poisson approximation:
Expected number of collisions = N*Mu  :    45879.47
Observed number of collisions         :    45881
p-value of test                       :    0.50


-----------------------------
Total number of cells containing j balls

  j =  0                              :    1743165869881
  j =  1                              :        399908242
  j =  2                              :            45873
  j =  3                              :                4
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:05:42.22

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_MaxOft test:
-----------------------------------------------
   N = 40,  n = 10000000,  r =  0,   d = 100000,   t =  8

      Number of categories = 100000
      Expected number per category  = 100.00


-----------------------------------------------
Test results for chi2 with 99999 degrees of freedom:

Kolmogorov-Smirnov+ statistic = D+    :   0.095
p-value of test                       :    0.46

Kolmogorov-Smirnov- statistic = D-    :   0.027
p-value of test                       :    0.93

Anderson-Darling statistic = A2       :    0.55
p-value of test                       :    0.70

Test on the sum of all N observations
Number of degrees of freedom          : 3999960
Chi-square statistic                  : 4.00e+6
p-value of test                       :    0.80


-----------------------------------------------
Test results for Anderson-Darling:

Kolmogorov-Smirnov+ statistic = D+    :   0.015
p-value of test                       :    0.97

Kolmogorov-Smirnov- statistic = D-    :    0.13
p-value of test                       :    0.21

Anderson-Darling statistic = A2       :    0.87
p-value of test                       :    0.43


-----------------------------------------------
CPU time used                    :  00:04:35.61

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_MaxOft test:
-----------------------------------------------
   N = 30,  n = 10000000,  r =  0,   d = 100000,   t = 16

      Number of categories = 100000
      Expected number per category  = 100.00


-----------------------------------------------
Test results for chi2 with 99999 degrees of freedom:

Kolmogorov-Smirnov+ statistic = D+    :    0.14
p-value of test                       :    0.27

Kolmogorov-Smirnov- statistic = D-    :   0.062
p-value of test                       :    0.76

Anderson-Darling statistic = A2       :    0.84
p-value of test                       :    0.45

Test on the sum of all N observations
Number of degrees of freedom          : 2999970
Chi-square statistic                  : 3.00e+6
p-value of test                       :    0.78


-----------------------------------------------
Test results for Anderson-Darling:

Kolmogorov-Smirnov+ statistic = D+    :    0.15
p-value of test                       :    0.23

Kolmogorov-Smirnov- statistic = D-    :    0.11
p-value of test                       :    0.45

Anderson-Darling statistic = A2       :    0.91
p-value of test                       :    0.41


-----------------------------------------------
CPU time used                    :  00:04:15.32

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_MaxOft test:
-----------------------------------------------
   N = 20,  n = 10000000,  r =  0,   d = 100000,   t = 24

      Number of categories = 100000
      Expected number per category  = 100.00


-----------------------------------------------
Test results for chi2 with 99999 degrees of freedom:

Kolmogorov-Smirnov+ statistic = D+    :   0.086
p-value of test                       :    0.71

Kolmogorov-Smirnov- statistic = D-    :   0.087
p-value of test                       :    0.70

Anderson-Darling statistic = A2       :    0.22
p-value of test                       :    0.98

Test on the sum of all N observations
Number of degrees of freedom          : 1999980
Chi-square statistic                  : 2.00e+6
p-value of test                       :    0.53


-----------------------------------------------
Test results for Anderson-Darling:

Kolmogorov-Smirnov+ statistic = D+    :    0.16
p-value of test                       :    0.31

Kolmogorov-Smirnov- statistic = D-    :    0.13
p-value of test                       :    0.48

Anderson-Darling statistic = A2       :    1.00
p-value of test                       :    0.36


-----------------------------------------------
CPU time used                    :  00:03:27.84

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_MaxOft test:
-----------------------------------------------
   N = 20,  n = 10000000,  r =  0,   d = 100000,   t = 32

      Number of categories = 100000
      Expected number per category  = 100.00


-----------------------------------------------
Test results for chi2 with 99999 degrees of freedom:

Kolmogorov-Smirnov+ statistic = D+    :   0.098
p-value of test                       :    0.64

Kolmogorov-Smirnov- statistic = D-    :    0.17
p-value of test                       :    0.27

Anderson-Darling statistic = A2       :    0.70
p-value of test                       :    0.56

Test on the sum of all N observations
Number of degrees of freedom          : 1999980
Chi-square statistic                  : 2.00e+6
p-value of test                       :    0.27


-----------------------------------------------
Test results for Anderson-Darling:

Kolmogorov-Smirnov+ statistic = D+    :   0.046
p-value of test                       :    0.89

Kolmogorov-Smirnov- statistic = D-    :    0.13
p-value of test                       :    0.47

Anderson-Darling statistic = A2       :    0.43
p-value of test                       :    0.82


-----------------------------------------------
CPU time used                    :  00:04:09.76

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_SampleProd test:
-----------------------------------------------
   N = 40,  n = 10000000,  r =  0,   t = 8


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :   0.084
p-value of test                       :    0.54

Kolmogorov-Smirnov- statistic = D-    :    0.14
p-value of test                       :    0.20

Anderson-Darling statistic = A2       :    0.59
p-value of test                       :    0.66

-----------------------------------------------
CPU time used                    :  00:03:36.62

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_SampleProd test:
-----------------------------------------------
   N = 20,  n = 10000000,  r =  0,   t = 16


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.22
p-value of test                       :    0.12

Kolmogorov-Smirnov- statistic = D-    :    0.16
p-value of test                       :    0.32

Anderson-Darling statistic = A2       :    0.97
p-value of test                       :    0.37

-----------------------------------------------
CPU time used                    :  00:02:38.32

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_SampleProd test:
-----------------------------------------------
   N = 20,  n = 10000000,  r =  0,   t = 24


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.13
p-value of test                       :    0.45

Kolmogorov-Smirnov- statistic = D-    :    0.12
p-value of test                       :    0.54

Anderson-Darling statistic = A2       :    0.60
p-value of test                       :    0.65

-----------------------------------------------
CPU time used                    :  00:03:36.25

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_SampleMean test:
-----------------------------------------------
   N = 20000000,  n = 30,  r =  0


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    : 1.08e-4
p-value of test                       :    0.62

Kolmogorov-Smirnov- statistic = D-    : 1.66e-4
p-value of test                       :    0.33

Anderson-Darling statistic = A2       :    0.53
p-value of test                       :    0.72

-----------------------------------------------
CPU time used                    :  00:00:45.92

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_SampleMean test:
-----------------------------------------------
   N = 20000000,  n = 30,  r = 10


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    : 1.39e-4
p-value of test                       :    0.46

Kolmogorov-Smirnov- statistic = D-    : 9.23e-5
p-value of test                       :    0.71

Anderson-Darling statistic = A2       :    0.59
p-value of test                       :    0.66

-----------------------------------------------
CPU time used                    :  00:00:46.70

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_SampleCorr test:
-----------------------------------------------
   N =  1,  n = 2000000000,  r =  0,   k = 1


-----------------------------------------------
Normal statistic                      :   -1.45
p-value of test                       :    0.93

-----------------------------------------------
CPU time used                    :  00:00:50.28

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_SampleCorr test:
-----------------------------------------------
   N =  1,  n = 2000000000,  r =  0,   k = 2


-----------------------------------------------
Normal statistic                      :   -0.33
p-value of test                       :    0.63

-----------------------------------------------
CPU time used                    :  00:00:51.17

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_AppearanceSpacings test:
-----------------------------------------------
   N =  1,   Q = 10000000,   K = 1000000000,   r = 0,   s = 3,   L = 15

   Sequences of n = (K + Q)L =  15150000000 bits
   Q = 10000000 initialization blocks
   K = 1000000000 blocks for the test
   the blocks have L = 15 bits



-----------------------------------------------
Normal statistic                      :   -1.00
p-value of test                       :    0.84

-----------------------------------------------
CPU time used                    :  00:02:42.79

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_AppearanceSpacings test:
-----------------------------------------------
   N =  1,   Q = 10000000,   K = 1000000000,   r = 27,   s = 3,   L = 15

   Sequences of n = (K + Q)L =  15150000000 bits
   Q = 10000000 initialization blocks
   K = 1000000000 blocks for the test
   the blocks have L = 15 bits



-----------------------------------------------
Normal statistic                      :   -0.64
p-value of test                       :    0.74

-----------------------------------------------
CPU time used                    :  00:02:50.55

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_WeightDistrib test:
-----------------------------------------------
   N =  1,  n = 20000000,  r =  0,  k = 256,  Alpha =      0,  Beta =   0.25


-----------------------------------------------
Number of degrees of freedom          :   67
Chi-square statistic                  :   75.04
p-value of test                       :    0.23

-----------------------------------------------
CPU time used                    :  00:02:01.28

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_WeightDistrib test:
-----------------------------------------------
   N =  1,  n = 20000000,  r = 20,  k = 256,  Alpha =      0,  Beta =   0.25


-----------------------------------------------
Number of degrees of freedom          :   67
Chi-square statistic                  :   98.73
p-value of test                       :  7.1e-3

-----------------------------------------------
CPU time used                    :  00:02:23.27

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_WeightDistrib test:
-----------------------------------------------
   N =  1,  n = 20000000,  r = 28,  k = 256,  Alpha =      0,  Beta =   0.25


-----------------------------------------------
Number of degrees of freedom          :   67
Chi-square statistic                  :   67.08
p-value of test                       :    0.47

-----------------------------------------------
CPU time used                    :  00:02:24.93

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_WeightDistrib test:
-----------------------------------------------
   N =  1,  n = 20000000,  r =  0,  k = 256,  Alpha =      0,  Beta = 0.0625


-----------------------------------------------
Number of degrees of freedom          :   37
Chi-square statistic                  :   31.62
p-value of test                       :    0.72

-----------------------------------------------
CPU time used                    :  00:02:00.25

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_WeightDistrib test:
-----------------------------------------------
   N =  1,  n = 20000000,  r = 10,  k = 256,  Alpha =      0,  Beta = 0.0625


-----------------------------------------------
Number of degrees of freedom          :   37
Chi-square statistic                  :   49.33
p-value of test                       :    0.08

-----------------------------------------------
CPU time used                    :  00:02:23.72

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_WeightDistrib test:
-----------------------------------------------
   N =  1,  n = 20000000,  r = 26,  k = 256,  Alpha =      0,  Beta = 0.0625


-----------------------------------------------
Number of degrees of freedom          :   37
Chi-square statistic                  :   24.93
p-value of test                       :    0.93

-----------------------------------------------
CPU time used                    :  00:02:21.12

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_SumCollector test:
-----------------------------------------------
   N =  1,  n = 500000000,  r =  0,   g = 10


-----------------------------------------------
Number of degrees of freedom          :   29
Chi-square statistic                  :   36.17
p-value of test                       :    0.17

-----------------------------------------------
CPU time used                    :  00:04:10.64

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_MatrixRank test:
-----------------------------------------------
   N = 10,  n = 1000000,  r =  0,    s = 5,    L = 30,    k = 30


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :   0.082
p-value of test                       :    0.83

Kolmogorov-Smirnov- statistic = D-    :    0.22
p-value of test                       :    0.34

Anderson-Darling statistic = A2       :    0.93
p-value of test                       :    0.40

Test on the sum of all N observations
Number of degrees of freedom          :   40
Chi-square statistic                  :   51.32
p-value of test                       :    0.11

-----------------------------------------------
CPU time used                    :  00:01:49.23

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_MatrixRank test:
-----------------------------------------------
   N = 10,  n = 1000000,  r = 25,    s = 5,    L = 30,    k = 30


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.15
p-value of test                       :    0.57

Kolmogorov-Smirnov- statistic = D-    :    0.39
p-value of test                       :    0.04

Anderson-Darling statistic = A2       :    1.21
p-value of test                       :    0.26

Test on the sum of all N observations
Number of degrees of freedom          :   40
Chi-square statistic                  :   42.44
p-value of test                       :    0.37

-----------------------------------------------
CPU time used                    :  00:01:55.03

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_MatrixRank test:
-----------------------------------------------
   N =  1,  n = 5000,  r =  0,    s = 4,    L = 1000,    k = 1000


-----------------------------------------------
Number of degrees of freedom          :    3
Chi-square statistic                  :    1.78
p-value of test                       :    0.62

-----------------------------------------------
CPU time used                    :  00:02:54.50

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_MatrixRank test:
-----------------------------------------------
   N =  1,  n = 5000,  r = 26,    s = 4,    L = 1000,    k = 1000


-----------------------------------------------
Number of degrees of freedom          :    3
Chi-square statistic                  :    2.05
p-value of test                       :    0.56

-----------------------------------------------
CPU time used                    :  00:02:54.54

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_MatrixRank test:
-----------------------------------------------
   N =  1,  n = 80,  r = 15,    s = 15,    L = 5000,    k = 5000


-----------------------------------------------
Number of degrees of freedom          :    2
Chi-square statistic                  :    0.91
p-value of test                       :    0.64

-----------------------------------------------
CPU time used                    :  00:02:14.60

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_MatrixRank test:
-----------------------------------------------
   N =  1,  n = 80,  r =  0,    s = 30,    L = 5000,    k = 5000


-----------------------------------------------
Number of degrees of freedom          :    2
Chi-square statistic                  :    2.94
p-value of test                       :    0.23

-----------------------------------------------
CPU time used                    :  00:02:16.98

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_Savir2 test:
-----------------------------------------------
   N = 10,  n = 10000000,  r = 10,    m = 1048576,    t = 30


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.23
p-value of test                       :    0.30

Kolmogorov-Smirnov- statistic = D-    :    0.10
p-value of test                       :    0.75

Anderson-Darling statistic = A2       :    0.46
p-value of test                       :    0.78

Test on the sum of all N observations
Number of degrees of freedom          :  130
Chi-square statistic                  :  125.59
p-value of test                       :    0.59

-----------------------------------------------
CPU time used                    :  00:01:19.98

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_GCD test:
-----------------------------------------------
   N = 10,  n = 50000000,  r =  0,   s = 30


-----------------------------------------------
Test results for GCD values:

Kolmogorov-Smirnov+ statistic = D+    :    0.34
p-value of test                       :    0.08

Kolmogorov-Smirnov- statistic = D-    :   0.044
p-value of test                       :    0.93

Anderson-Darling statistic = A2       :    1.15
p-value of test                       :    0.29

Test on the sum of all N observations
Number of degrees of freedom          : 17430
Chi-square statistic                  :17212.63
p-value of test                       :    0.88



-----------------------------------------------
CPU time used                    :  00:02:02.72

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


swalk_RandomWalk1 test:
-----------------------------------------------
   N =  1,  n = 100000000,  r =  0,   s = 5,   L0 =   50,   L1 =   50



-----------------------------------------------
Test on the values of the Statistic H

Number of degrees of freedom          :   36
ChiSquare statistic                   :   33.53
p-value of test                       :    0.59


-----------------------------------------------
Test on the values of the Statistic M

Number of degrees of freedom          :   35
ChiSquare statistic                   :   31.90
p-value of test                       :    0.62


-----------------------------------------------
Test on the values of the Statistic J

Number of degrees of freedom          :   25
ChiSquare statistic                   :   16.75
p-value of test                       :    0.89


-----------------------------------------------
Test on the values of the Statistic R

Number of degrees of freedom          :   24
ChiSquare statistic                   :   37.47
p-value of test                       :    0.04


-----------------------------------------------
Test on the values of the Statistic C

Number of degrees of freedom          :   17
ChiSquare statistic                   :   26.64
p-value of test                       :    0.06


-----------------------------------------------
CPU time used                    :  00:01:10.79

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


swalk_RandomWalk1 test:
-----------------------------------------------
   N =  1,  n = 100000000,  r = 25,   s = 5,   L0 =   50,   L1 =   50



-----------------------------------------------
Test on the values of the Statistic H

Number of degrees of freedom          :   36
ChiSquare statistic                   :   46.40
p-value of test                       :    0.11


-----------------------------------------------
Test on the values of the Statistic M

Number of degrees of freedom          :   35
ChiSquare statistic                   :   37.10
p-value of test                       :    0.37


-----------------------------------------------
Test on the values of the Statistic J

Number of degrees of freedom          :   25
ChiSquare statistic                   :   15.06
p-value of test                       :    0.94


-----------------------------------------------
Test on the values of the Statistic R

Number of degrees of freedom          :   24
ChiSquare statistic                   :   35.76
p-value of test                       :    0.06


-----------------------------------------------
Test on the values of the Statistic C

Number of degrees of freedom          :   17
ChiSquare statistic                   :   20.66
p-value of test                       :    0.24


-----------------------------------------------
CPU time used                    :  00:01:08.30

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


swalk_RandomWalk1 test:
-----------------------------------------------
   N =  1,  n = 10000000,  r =  0,   s = 10,   L0 = 1000,   L1 = 1000



-----------------------------------------------
Test on the values of the Statistic H

Number of degrees of freedom          :  146
ChiSquare statistic                   :  152.56
p-value of test                       :    0.34


-----------------------------------------------
Test on the values of the Statistic M

Number of degrees of freedom          :  146
ChiSquare statistic                   :  173.67
p-value of test                       :    0.06


-----------------------------------------------
Test on the values of the Statistic J

Number of degrees of freedom          :  500
ChiSquare statistic                   :  539.12
p-value of test                       :    0.11


-----------------------------------------------
Test on the values of the Statistic R

Number of degrees of freedom          :  136
ChiSquare statistic                   :  113.44
p-value of test                       :    0.92


-----------------------------------------------
Test on the values of the Statistic C

Number of degrees of freedom          :   74
ChiSquare statistic                   :   76.15
p-value of test                       :    0.41


-----------------------------------------------
CPU time used                    :  00:01:25.85

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


swalk_RandomWalk1 test:
-----------------------------------------------
   N =  1,  n = 10000000,  r = 20,   s = 10,   L0 = 1000,   L1 = 1000



-----------------------------------------------
Test on the values of the Statistic H

Number of degrees of freedom          :  146
ChiSquare statistic                   :  144.77
p-value of test                       :    0.51


-----------------------------------------------
Test on the values of the Statistic M

Number of degrees of freedom          :  146
ChiSquare statistic                   :  139.59
p-value of test                       :    0.63


-----------------------------------------------
Test on the values of the Statistic J

Number of degrees of freedom          :  500
ChiSquare statistic                   :  429.96
p-value of test                       :    0.99


-----------------------------------------------
Test on the values of the Statistic R

Number of degrees of freedom          :  136
ChiSquare statistic                   :  143.65
p-value of test                       :    0.31


-----------------------------------------------
Test on the values of the Statistic C

Number of degrees of freedom          :   74
ChiSquare statistic                   :   90.02
p-value of test                       :    0.10


-----------------------------------------------
CPU time used                    :  00:01:30.97

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


swalk_RandomWalk1 test:
-----------------------------------------------
   N =  1,  n = 1000000,  r =  0,   s = 15,   L0 = 10000,   L1 = 10000



-----------------------------------------------
Test on the values of the Statistic H

Number of degrees of freedom          :  384
ChiSquare statistic                   :  378.69
p-value of test                       :    0.57


-----------------------------------------------
Test on the values of the Statistic M

Number of degrees of freedom          :  384
ChiSquare statistic                   :  392.91
p-value of test                       :    0.37


-----------------------------------------------
Test on the values of the Statistic J

Number of degrees of freedom          : 5000
ChiSquare statistic                   : 5028.42
p-value of test                       :    0.39


-----------------------------------------------
Test on the values of the Statistic R

Number of degrees of freedom          :  378
ChiSquare statistic                   :  424.64
p-value of test                       :    0.05


-----------------------------------------------
Test on the values of the Statistic C

Number of degrees of freedom          :  200
ChiSquare statistic                   :  193.67
p-value of test                       :    0.61


-----------------------------------------------
CPU time used                    :  00:01:29.39

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


swalk_RandomWalk1 test:
-----------------------------------------------
   N =  1,  n = 1000000,  r = 15,   s = 15,   L0 = 10000,   L1 = 10000



-----------------------------------------------
Test on the values of the Statistic H

Number of degrees of freedom          :  384
ChiSquare statistic                   :  434.06
p-value of test                       :    0.04


-----------------------------------------------
Test on the values of the Statistic M

Number of degrees of freedom          :  384
ChiSquare statistic                   :  407.72
p-value of test                       :    0.19


-----------------------------------------------
Test on the values of the Statistic J

Number of degrees of freedom          : 5000
ChiSquare statistic                   : 5000.82
p-value of test                       :    0.49


-----------------------------------------------
Test on the values of the Statistic R

Number of degrees of freedom          :  378
ChiSquare statistic                   :  394.17
p-value of test                       :    0.27


-----------------------------------------------
Test on the values of the Statistic C

Number of degrees of freedom          :  200
ChiSquare statistic                   :  204.61
p-value of test                       :    0.40


-----------------------------------------------
CPU time used                    :  00:01:28.53

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


scomp_LinearComp test:
-----------------------------------------------
   N =  1,  n = 400020,  r =  0,    s = 1



-----------------------------------------------
Number of degrees of freedom          :   12
Chi2 statistic for size of jumps      :   10.20
p-value of test                       :    0.60


-----------------------------------------------
Normal statistic for number of jumps  : -402.56
p-value of test                       : 1 - eps1    *****



-----------------------------------------------
CPU time used                    :  00:00:11.07

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


scomp_LinearComp test:
-----------------------------------------------
   N =  1,  n = 400020,  r = 29,    s = 1



-----------------------------------------------
Number of degrees of freedom          :   12
Chi2 statistic for size of jumps      :   16.17
p-value of test                       :    0.18


-----------------------------------------------
Normal statistic for number of jumps  : -402.70
p-value of test                       : 1 - eps1    *****



-----------------------------------------------
CPU time used                    :  00:00:11.55

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


scomp_LempelZiv test:
-----------------------------------------------
   N = 10,  n = 134217728,  r =  0,   s =   30,   k =   27


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.11
p-value of test                       :    0.74

Kolmogorov-Smirnov- statistic = D-    :    0.11
p-value of test                       :    0.72

Anderson-Darling statistic = A2       :    0.19
p-value of test                       :    0.9920

Tests on the sum of all N observations
Standardized normal statistic         :   0.000
p-value of test                       :    0.50

Sample variance                       :    1.07
p-value of test                       :    0.38

-----------------------------------------------
CPU time used                    :  00:01:15.01

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


scomp_LempelZiv test:
-----------------------------------------------
   N = 10,  n = 134217728,  r = 15,   s =   15,   k =   27


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.46
p-value of test                       :  9.0e-3

Kolmogorov-Smirnov- statistic = D-    :    0.11
p-value of test                       :    0.74

Anderson-Darling statistic = A2       :    3.98
p-value of test                       :  9.3e-3

Tests on the sum of all N observations
Standardized normal statistic         :   -2.22
p-value of test                       :    0.99

Sample variance                       :    0.21
p-value of test                       :    0.9933

-----------------------------------------------
CPU time used                    :  00:01:19.22

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sspectral_Fourier3 test:
-----------------------------------------------
   N = 100000,  n = 16384,  r =  0,   s =    3,   k =   14


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :   0.011
p-value of test                       :    0.40

Kolmogorov-Smirnov- statistic = D-    : 5.61e-3
p-value of test                       :    0.77

Anderson-Darling statistic = A2       :    0.37
p-value of test                       :    0.88

-----------------------------------------------
CPU time used                    :  00:00:58.45

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sspectral_Fourier3 test:
-----------------------------------------------
   N = 100000,  n = 16384,  r = 27,   s =    3,   k =   14


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    : 3.46e-3
p-value of test                       :    0.90

Kolmogorov-Smirnov- statistic = D-    :   0.011
p-value of test                       :    0.35

Anderson-Darling statistic = A2       :    0.45
p-value of test                       :    0.79

-----------------------------------------------
CPU time used                    :  00:00:56.32

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_LongestHeadRun test:
-----------------------------------------------
   N =  1,  n = 1000,  r =  0,   s = 3,   L = 10000020


-----------------------------------------------
Number of degrees of freedom          :    8
Chi-square statistic                  :    9.51
p-value of test                       :    0.30

-----------------------------------------------
Global longest run of 1               :   32.00
p-value of test                       :    0.50



-----------------------------------------------
CPU time used                    :  00:02:06.03

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_LongestHeadRun test:
-----------------------------------------------
   N =  1,  n = 1000,  r = 27,   s = 3,   L = 10000020


-----------------------------------------------
Number of degrees of freedom          :    8
Chi-square statistic                  :   12.52
p-value of test                       :    0.13

-----------------------------------------------
Global longest run of 1               :   35.00
p-value of test                       :    0.14



-----------------------------------------------
CPU time used                    :  00:02:07.67

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_PeriodsInStrings test:
-----------------------------------------------
   N = 10,  n = 500000000,  r =  0,   s =   10


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.11
p-value of test                       :    0.74

Kolmogorov-Smirnov- statistic = D-    :   0.088
p-value of test                       :    0.81

Anderson-Darling statistic = A2       :    0.19
p-value of test                       :    0.9918

Test on the sum of all N observations
Number of degrees of freedom          :  200
Chi-square statistic                  :  200.85
p-value of test                       :    0.47

-----------------------------------------------
CPU time used                    :  00:04:25.71

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_PeriodsInStrings test:
-----------------------------------------------
   N = 10,  n = 500000000,  r = 20,   s =   10


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.11
p-value of test                       :    0.74

Kolmogorov-Smirnov- statistic = D-    :    0.16
p-value of test                       :    0.53

Anderson-Darling statistic = A2       :    0.64
p-value of test                       :    0.61

Test on the sum of all N observations
Number of degrees of freedom          :  200
Chi-square statistic                  :  218.07
p-value of test                       :    0.18

-----------------------------------------------
CPU time used                    :  00:04:38.34

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingWeight2 test:
-----------------------------------------------
   N = 10,  n = 1000000000,  r =  0,   s = 3,   L = 1000000


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.32
p-value of test                       :    0.11

Kolmogorov-Smirnov- statistic = D-    :    0.12
p-value of test                       :    0.69

Anderson-Darling statistic = A2       :    1.05
p-value of test                       :    0.33

Test on the sum of all N observations
Number of degrees of freedom          : 10000
Chi-square statistic                  : 9903.18
p-value of test                       :    0.75

-----------------------------------------------
CPU time used                    :  00:01:34.09

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingWeight2 test:
-----------------------------------------------
   N = 10,  n = 1000000000,  r = 27,   s = 3,   L = 1000000


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.16
p-value of test                       :    0.53

Kolmogorov-Smirnov- statistic = D-    :    0.18
p-value of test                       :    0.45

Anderson-Darling statistic = A2       :    0.54
p-value of test                       :    0.71

Test on the sum of all N observations
Number of degrees of freedom          : 10000
Chi-square statistic                  : 9974.72
p-value of test                       :    0.57

-----------------------------------------------
CPU time used                    :  00:01:35.75

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingCorr test:
-----------------------------------------------
   N =  1,  n = 1000000000,  r = 10,   s = 10,   L = 30



-----------------------------------------------
Normal statistic                      :    1.78
p-value of test                       :    0.04

-----------------------------------------------
CPU time used                    :  00:01:54.24

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingCorr test:
-----------------------------------------------
   N =  1,  n = 100000000,  r = 10,   s = 10,   L = 300



-----------------------------------------------
Normal statistic                      :   -1.42
p-value of test                       :    0.92

-----------------------------------------------
CPU time used                    :  00:01:42.93

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingCorr test:
-----------------------------------------------
   N =  1,  n = 100000000,  r = 10,   s = 10,   L = 1200



-----------------------------------------------
Normal statistic                      :    0.46
p-value of test                       :    0.32

-----------------------------------------------
CPU time used                    :  00:06:42.70

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingIndep test:
-----------------------------------------------
   N = 10,  n = 30000000,  r =  0,   s = 3,   L = 30,   d = 0



Counters with expected numbers >= 10
-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.31
p-value of test                       :    0.11

Kolmogorov-Smirnov- statistic = D-    :   0.020
p-value of test                       :    0.98

Anderson-Darling statistic = A2       :    1.48
p-value of test                       :    0.18

Test on the sum of all N observations
Number of degrees of freedom          : 4890
Chi-square statistic                  : 4735.57
p-value of test                       :    0.94

-----------------------------------------------
CPU time used                    :  00:02:57.65

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingIndep test:
-----------------------------------------------
   N = 10,  n = 30000000,  r = 27,   s = 3,   L = 30,   d = 0



Counters with expected numbers >= 10
-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :   0.076
p-value of test                       :    0.85

Kolmogorov-Smirnov- statistic = D-    :    0.33
p-value of test                       :    0.09

Anderson-Darling statistic = A2       :    2.61
p-value of test                       :    0.04

Test on the sum of all N observations
Number of degrees of freedom          : 4890
Chi-square statistic                  : 5095.91
p-value of test                       :    0.02

-----------------------------------------------
CPU time used                    :  00:03:00.40

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingIndep test:
-----------------------------------------------
   N =  1,  n = 30000000,  r =  0,   s = 4,   L = 300,   d = 0



Counters with expected numbers >= 10
-----------------------------------------------
Number of degrees of freedom          : 4117
Chi-square statistic                  : 4105.67
p-value of test                       :    0.55

-----------------------------------------------
CPU time used                    :  00:02:09.09

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingIndep test:
-----------------------------------------------
   N =  1,  n = 30000000,  r = 26,   s = 4,   L = 300,   d = 0



Counters with expected numbers >= 10
-----------------------------------------------
Number of degrees of freedom          : 4117
Chi-square statistic                  : 4129.25
p-value of test                       :    0.44

-----------------------------------------------
CPU time used                    :  00:02:11.29

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingIndep test:
-----------------------------------------------
   N =  1,  n = 10000000,  r =  0,   s = 5,   L = 1200,   d = 0



Counters with expected numbers >= 10
-----------------------------------------------
Number of degrees of freedom          : 11825
Chi-square statistic                  :11818.84
p-value of test                       :    0.51

-----------------------------------------------
CPU time used                    :  00:02:21.84

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingIndep test:
-----------------------------------------------
   N =  1,  n = 10000000,  r = 25,   s = 5,   L = 1200,   d = 0



Counters with expected numbers >= 10
-----------------------------------------------
Number of degrees of freedom          : 11825
Chi-square statistic                  :11901.15
p-value of test                       :    0.31

-----------------------------------------------
CPU time used                    :  00:02:24.61

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_Run test:
-----------------------------------------------
   N =  1,  n = 2000000000,  r =  0,   s =    3


-----------------------------------------------
Total number of 1 runs:  2000000000

Number of degrees of freedom          :   54
Chi2 statistic for number of runs     :   64.79
p-value of test                       :    0.15


-----------------------------------------------
Total number of bits:  8000066313

Normal statistic for number of bits   :    0.52
p-value of test                       :    0.30



-----------------------------------------------
CPU time used                    :  00:01:57.22

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_Run test:
-----------------------------------------------
   N =  1,  n = 2000000000,  r = 27,   s =    3


-----------------------------------------------
Total number of 1 runs:  2000000000

Number of degrees of freedom          :   54
Chi2 statistic for number of runs     :   94.42
p-value of test                       :  5.5e-4    *****


-----------------------------------------------
Total number of bits:  7999926714

Normal statistic for number of bits   :   -0.58
p-value of test                       :    0.72



-----------------------------------------------
CPU time used                    :  00:01:57.27

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_AutoCor test:
-----------------------------------------------
   N = 10,  n = 1000000030,  r =  0,   s = 3,   d = 1


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :   0.073
p-value of test                       :    0.86

Kolmogorov-Smirnov- statistic = D-    :    0.23
p-value of test                       :    0.30

Anderson-Darling statistic = A2       :    0.65
p-value of test                       :    0.60

Tests on the sum of all N observations
Standardized normal statistic         :    0.74
p-value of test                       :    0.23

Sample variance                       :    1.20
p-value of test                       :    0.29

-----------------------------------------------
CPU time used                    :  00:03:31.36

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_AutoCor test:
-----------------------------------------------
   N = 10,  n = 1000000029,  r =  0,   s = 3,   d = 3


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.12
p-value of test                       :    0.71

Kolmogorov-Smirnov- statistic = D-    :    0.15
p-value of test                       :    0.57

Anderson-Darling statistic = A2       :    0.37
p-value of test                       :    0.87

Tests on the sum of all N observations
Standardized normal statistic         :    0.33
p-value of test                       :    0.37

Sample variance                       :    1.19
p-value of test                       :    0.30

-----------------------------------------------
CPU time used                    :  00:03:16.45

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_AutoCor test:
-----------------------------------------------
   N = 10,  n = 1000000030,  r = 27,   s = 3,   d = 1


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.11
p-value of test                       :    0.72

Kolmogorov-Smirnov- statistic = D-    :    0.13
p-value of test                       :    0.64

Anderson-Darling statistic = A2       :    0.27
p-value of test                       :    0.96

Tests on the sum of all N observations
Standardized normal statistic         :    0.18
p-value of test                       :    0.43

Sample variance                       :    0.65
p-value of test                       :    0.75

-----------------------------------------------
CPU time used                    :  00:03:35.18

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_AutoCor test:
-----------------------------------------------
   N = 10,  n = 1000000029,  r = 27,   s = 3,   d = 3


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :   0.019
p-value of test                       :    0.98

Kolmogorov-Smirnov- statistic = D-    :    0.38
p-value of test                       :    0.04

Anderson-Darling statistic = A2       :    4.17
p-value of test                       :  7.5e-3

Tests on the sum of all N observations
Standardized normal statistic         :    2.75
p-value of test                       :  3.0e-3

Sample variance                       :    1.64
p-value of test                       :    0.10

-----------------------------------------------
CPU time used                    :  00:03:14.04

Generator state:
N/A




========= Summary results of BigCrush =========

 Version:          TestU01 1.2.3
 Generator:        stdin
 Number of statistics:  160
 Total CPU time:   05:22:49.74
 The following tests gave p-values outside [0.001, 0.9990]:
 (eps  means a value < 1.0e-300):
 (eps1 means a value < 1.0e-15):

       Test                          p-value
 ----------------------------------------------
 80  LinearComp, r = 0              1 - eps1
 81  LinearComp, r = 29             1 - eps1
 102  Run of bits, r = 27             5.5e-4
 ----------------------------------------------
 All other tests were passed



# 
# End: 2019-10-08 02:09:48
# 
# Exit value: 0
# Bytes used: 1428405329920 >= 2^40 (1.4 TB)
# 
# Test duration: 371.08331703118336 minutes
# 
