# 
# RandomSource: L128_X1024_MIX
# RNG: org.apache.commons.rng.core.source64.L128X1024Mix
# Seed: bd156447503011d65e0b1026047795d979a7d2d93f5703847909b605049d49b2a8e095895935bc2a000986be419a2611dc18afe830b8bd430ae32289f956b1dc32e87b9b5721e7feadaf70de9bdc98fcd5f9dc9895aca4b1a639bc4e312abe4ab941871efa8ccf4177e8809f46193f907a0d10804a155fa58b6d132ef32a3a59e4a103b59ed99c6402620155460a94f73c49d16791c38761a4fd89331f9f4e40
# 
# Java: 11.0.14.1
# Runtime: OpenJDK Runtime Environment (build 11.0.14.1+1-Ubuntu-0ubuntu1.18.04)
# JVM: OpenJDK 64-Bit Server VM (build 11.0.14.1+1-Ubuntu-0ubuntu1.18.04, mixed mode, sharing)
# OS: Linux 4.15.0-175-generic amd64
# Native byte-order: LITTLE_ENDIAN
# Output byte-order: LITTLE_ENDIAN
# 64-bit output: LO_HI
# 
# Analyzer: /home/ah403/stress/stdin2testu01 BigCrush 
# 
# Start: 2022-04-07 04:17:45
# 
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
                 Starting BigCrush
                 Version: TestU01 1.2.3
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx


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

***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                       :  6.2e-3


-----------------------------------------------
CPU time used                    :  00:01:15.79

Generator state:
N/A



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

***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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.17


-----------------------------------------------
CPU time used                    :  00:01:19.44

Generator state:
N/A



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

***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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         :     1337
p-value of test                       :    0.76

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

  j =  0                              :  131940795334457
  j =  1                              :        599997326
  j =  2                              :             1337
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:04:40.86

Generator state:
N/A



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

***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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         :     1285
p-value of test                       :    0.98

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

  j =  0                              :  131940795334405
  j =  1                              :        599997430
  j =  2                              :             1285
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:04:26.32

Generator state:
N/A



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

***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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         :     1400
p-value of test                       :    0.17

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

  j =  0                              :  131940795334520
  j =  1                              :        599997200
  j =  2                              :             1400
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:06:01.48

Generator state:
N/A



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

***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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         :     1369
p-value of test                       :    0.45

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

  j =  0                              :  131940795334489
  j =  1                              :        599997262
  j =  2                              :             1369
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:06:07.43

Generator state:
N/A



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

***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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         :     1394
p-value of test                       :    0.21

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

  j =  0                              :  131940795334514
  j =  1                              :        599997212
  j =  2                              :             1394
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:06:08.94

Generator state:
N/A



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

***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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         :     1375
p-value of test                       :    0.39

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

  j =  0                              :  131940795334495
  j =  1                              :        599997250
  j =  2                              :             1375
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:06:11.21

Generator state:
N/A



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

***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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         :     1407
p-value of test                       :    0.13

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

  j =  0                              :  131940795334527
  j =  1                              :        599997186
  j =  2                              :             1407
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:06:08.98

Generator state:
N/A



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

***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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         :     1358
p-value of test                       :    0.56

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

  j =  0                              :  131940795334478
  j =  1                              :        599997284
  j =  2                              :             1358
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:06:08.09

Generator state:
N/A



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

***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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         :     1407
p-value of test                       :    0.13

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

  j =  0                              :  131940795334527
  j =  1                              :        599997186
  j =  2                              :             1407
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:06:03.23

Generator state:
N/A



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

***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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         :     1328
p-value of test                       :    0.83

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

  j =  0                              :  131940795334448
  j =  1                              :        599997344
  j =  2                              :             1328
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:06:00.09

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                 :    5389
p-value of test                       :    0.66


-----------------------------------------------
CPU time used                    :  00:03:38.30

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                 :    4305
p-value of test                       :    0.68


-----------------------------------------------
CPU time used                    :  00:01:36.76

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                 :    7284
p-value of test                       :    0.65


-----------------------------------------------
CPU time used                    :  00:02:45.06

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                 :    4284
p-value of test                       :    0.79


-----------------------------------------------
CPU time used                    :  00:02:02.22

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                 :    4327
p-value of test                       :    0.56


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

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                 :    7357
p-value of test                       :    0.33


-----------------------------------------------
CPU time used                    :  00:03:28.63

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                 :    7320
p-value of test                       :    0.49


-----------------------------------------------
CPU time used                    :  00:03:32.55

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                 :    7356
p-value of test                       :    0.33


-----------------------------------------------
CPU time used                    :  00:04:33.98

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                 :    7407
p-value of test                       :    0.15


-----------------------------------------------
CPU time used                    :  00:04:48.27

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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.51
p-value of test                       :    0.74


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.24
p-value of test                       :    0.98

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

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

Expected number of jumps of Y = mN    :     900
Number of jumps of Y                  :     885
p-value of test                       :    0.68

Stat. AD (mNP2)                       :    0.32
p-value of test                       :    0.93

Stat. AD after spacings (mNP2-S)      :    0.98
p-value of test                       :    0.37

-----------------------------------------------
CPU time used                    :  00:02:36.85

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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.63
p-value of test                       :    0.61


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.97
p-value of test                       :    0.37

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

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

Expected number of jumps of Y = mN    :     600
Number of jumps of Y                  :     608
p-value of test                       :    0.38

Stat. AD (mNP2)                       :    0.40
p-value of test                       :    0.85

Stat. AD after spacings (mNP2-S)      :    0.44
p-value of test                       :    0.80

-----------------------------------------------
CPU time used                    :  00:01:46.06

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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)         :    0.46
p-value of test                       :    0.78


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.95
p-value of test                       :    0.38

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

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

Expected number of jumps of Y = mN    :     300
Number of jumps of Y                  :     326
p-value of test                       :    0.07

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

Stat. AD after spacings (mNP2-S)      :    1.08
p-value of test                       :    0.32

-----------------------------------------------
CPU time used                    :  00:02:34.50

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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)         :    1.20
p-value of test                       :    0.26


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.19
p-value of test                       :    0.08

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

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

Expected number of jumps of Y = mN    :     150
Number of jumps of Y                  :     143
p-value of test                       :    0.70

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

Stat. AD after spacings (mNP2-S)      :    0.66
p-value of test                       :    0.60

-----------------------------------------------
CPU time used                    :  00:03:00.75

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


-----------------------------------------------
Number of degrees of freedom          :    7
Chi-square statistic                  :    8.56
p-value of test                       :    0.29

-----------------------------------------------
CPU time used                    :  00:01:09.85

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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.38
p-value of test                       :    0.23

-----------------------------------------------
CPU time used                    :  00:01:21.64

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


-----------------------------------------------
Number of degrees of freedom          :   18
Chi-square statistic                  :   16.37
p-value of test                       :    0.57

-----------------------------------------------
CPU time used                    :  00:01:09.18

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


-----------------------------------------------
Number of degrees of freedom          :   18
Chi-square statistic                  :   23.18
p-value of test                       :    0.18

-----------------------------------------------
CPU time used                    :  00:01:20.02

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


-----------------------------------------------
Number of degrees of freedom          :   54
Chi-square statistic                  :   62.28
p-value of test                       :    0.21

-----------------------------------------------
CPU time used                    :  00:01:28.89

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


-----------------------------------------------
Number of degrees of freedom          :   54
Chi-square statistic                  :   41.68
p-value of test                       :    0.89

-----------------------------------------------
CPU time used                    :  00:01:42.90

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


-----------------------------------------------
Number of degrees of freedom          :   54
Chi-square statistic                  :   53.19
p-value of test                       :    0.51

-----------------------------------------------
CPU time used                    :  00:01:42.86

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


-----------------------------------------------
Number of degrees of freedom          :   54
Chi-square statistic                  :   59.17
p-value of test                       :    0.29

-----------------------------------------------
CPU time used                    :  00:01:43.34

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                  :  240.58
p-value of test                       :    0.34

-----------------------------------------------
CPU time used                    :  00:01:59.34

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                  :  423.17
p-value of test                       :    0.64

-----------------------------------------------
CPU time used                    :  00:02:45.72

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                  : 1469.14
p-value of test                       :    0.27

-----------------------------------------------
CPU time used                    :  00:02:58.25

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                  : 7194.38
p-value of test                       :    0.11

-----------------------------------------------
CPU time used                    :  00:02:49.31

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


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

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

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

Anderson-Darling statistic = A2       :    0.62
p-value of test                       :    0.62

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

-----------------------------------------------
CPU time used                    :  00:01:31.59

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


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

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

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

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

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

-----------------------------------------------
CPU time used                    :  00:03:38.71

Generator state:
N/A



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

***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                :    3.61
p-value of test                       :    0.61


-----------------------------------------------
CPU time used                    :  00:01:01.86

Generator state:
N/A



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

***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                :  123.17
p-value of test                       :    0.38


-----------------------------------------------
CPU time used                    :  00:01:43.55

Generator state:
N/A



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

***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                : 5044.63
p-value of test                       :    0.48


-----------------------------------------------
CPU time used                    :  00:01:16.60

Generator state:
N/A



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

***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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.24


-----------------------------------------------
CPU time used                    :  00:02:39.88

Generator state:
N/A



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

***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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         :    45686
p-value of test                       :    0.82


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

  j =  0                              :    1743165869686
  j =  1                              :        399908631
  j =  2                              :            45680
  j =  3                              :                3
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:03:44.46

Generator state:
N/A



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

***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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         :    45796
p-value of test                       :    0.65


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

  j =  0                              :    1743165869796
  j =  1                              :        399908409
  j =  2                              :            45794
  j =  3                              :                1
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:03:54.85

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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.033
p-value of test                       :    0.90

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

Anderson-Darling statistic = A2       :    0.94
p-value of test                       :    0.39

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.14


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

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

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

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


-----------------------------------------------
CPU time used                    :  00:02:39.82

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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.066
p-value of test                       :    0.74

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

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

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.33


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

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

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

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


-----------------------------------------------
CPU time used                    :  00:02:36.29

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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.22
p-value of test                       :    0.12

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

Anderson-Darling statistic = A2       :    1.83
p-value of test                       :    0.11

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.96


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

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

Kolmogorov-Smirnov- statistic = D-    :   0.067
p-value of test                       :    0.80

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


-----------------------------------------------
CPU time used                    :  00:02:07.96

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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.094
p-value of test                       :    0.66

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

Anderson-Darling statistic = A2       :    0.49
p-value of test                       :    0.75

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.31


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

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

Kolmogorov-Smirnov- statistic = D-    :   0.034
p-value of test                       :    0.94

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


-----------------------------------------------
CPU time used                    :  00:02:33.13

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


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

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

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

Anderson-Darling statistic = A2       :    0.49
p-value of test                       :    0.76

-----------------------------------------------
CPU time used                    :  00:02:07.11

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


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

Kolmogorov-Smirnov+ statistic = D+    :   0.069
p-value of test                       :    0.79

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

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

-----------------------------------------------
CPU time used                    :  00:01:34.84

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


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

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

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

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

-----------------------------------------------
CPU time used                    :  00:02:02.62

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


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

Kolmogorov-Smirnov+ statistic = D+    : 1.60e-4
p-value of test                       :    0.36

Kolmogorov-Smirnov- statistic = D-    : 2.38e-4
p-value of test                       :    0.10

Anderson-Darling statistic = A2       :    1.53
p-value of test                       :    0.17

-----------------------------------------------
CPU time used                    :  00:00:30.11

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


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

Kolmogorov-Smirnov+ statistic = D+    : 1.59e-4
p-value of test                       :    0.36

Kolmogorov-Smirnov- statistic = D-    : 1.11e-4
p-value of test                       :    0.61

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

-----------------------------------------------
CPU time used                    :  00:00:32.54

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


-----------------------------------------------
Normal statistic                      :   -1.98
p-value of test                       :    0.98

-----------------------------------------------
CPU time used                    :  00:00:32.84

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


-----------------------------------------------
Normal statistic                      :   -0.55
p-value of test                       :    0.71

-----------------------------------------------
CPU time used                    :  00:00:32.92

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                      :   -0.59
p-value of test                       :    0.72

-----------------------------------------------
CPU time used                    :  00:01:41.15

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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.054
p-value of test                       :    0.48

-----------------------------------------------
CPU time used                    :  00:01:42.55

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                  :   88.69
p-value of test                       :    0.04

-----------------------------------------------
CPU time used                    :  00:01:15.25

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                  :   52.58
p-value of test                       :    0.90

-----------------------------------------------
CPU time used                    :  00:01:28.73

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                  :   82.31
p-value of test                       :    0.10

-----------------------------------------------
CPU time used                    :  00:01:28.79

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                  :   55.29
p-value of test                       :    0.03

-----------------------------------------------
CPU time used                    :  00:01:13.76

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                  :   23.54
p-value of test                       :    0.96

-----------------------------------------------
CPU time used                    :  00:01:28.48

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                  :   31.53
p-value of test                       :    0.72

-----------------------------------------------
CPU time used                    :  00:01:28.22

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


-----------------------------------------------
Number of degrees of freedom          :   29
Chi-square statistic                  :   17.85
p-value of test                       :    0.95

-----------------------------------------------
CPU time used                    :  00:02:31.36

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


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

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

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

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

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

-----------------------------------------------
CPU time used                    :  00:01:12.61

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


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

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

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

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

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

-----------------------------------------------
CPU time used                    :  00:01:17.01

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                  :    0.55
p-value of test                       :    0.91

-----------------------------------------------
CPU time used                    :  00:02:01.20

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                  :    7.36
p-value of test                       :    0.06

-----------------------------------------------
CPU time used                    :  00:01:58.22

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                  :    2.22
p-value of test                       :    0.33

-----------------------------------------------
CPU time used                    :  00:01:30.04

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                  :    3.92
p-value of test                       :    0.14

-----------------------------------------------
CPU time used                    :  00:01:13.70

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


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

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

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

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

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

-----------------------------------------------
CPU time used                    :  00:00:51.67

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


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

Kolmogorov-Smirnov+ statistic = D+    :    0.37
p-value of test                       :    0.05

Kolmogorov-Smirnov- statistic = D-    : 4.01e-3
p-value of test                       :    0.9958

Anderson-Darling statistic = A2       :    1.78
p-value of test                       :    0.12

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



-----------------------------------------------
CPU time used                    :  00:01:39.59

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                   :   41.33
p-value of test                       :    0.25


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

Number of degrees of freedom          :   35
ChiSquare statistic                   :   40.97
p-value of test                       :    0.23


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

Number of degrees of freedom          :   25
ChiSquare statistic                   :   37.75
p-value of test                       :    0.05


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

Number of degrees of freedom          :   24
ChiSquare statistic                   :   30.61
p-value of test                       :    0.17


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

Number of degrees of freedom          :   17
ChiSquare statistic                   :   13.89
p-value of test                       :    0.68


-----------------------------------------------
CPU time used                    :  00:00:39.31

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                   :   30.59
p-value of test                       :    0.72


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

Number of degrees of freedom          :   35
ChiSquare statistic                   :   30.23
p-value of test                       :    0.70


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

Number of degrees of freedom          :   25
ChiSquare statistic                   :   19.74
p-value of test                       :    0.76


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

Number of degrees of freedom          :   24
ChiSquare statistic                   :   26.81
p-value of test                       :    0.31


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

Number of degrees of freedom          :   17
ChiSquare statistic                   :   16.05
p-value of test                       :    0.52


-----------------------------------------------
CPU time used                    :  00:00:42.32

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                   :  138.46
p-value of test                       :    0.66


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

Number of degrees of freedom          :  146
ChiSquare statistic                   :  121.00
p-value of test                       :    0.94


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

Number of degrees of freedom          :  500
ChiSquare statistic                   :  558.96
p-value of test                       :    0.03


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

Number of degrees of freedom          :  136
ChiSquare statistic                   :  151.83
p-value of test                       :    0.17


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

Number of degrees of freedom          :   74
ChiSquare statistic                   :   62.31
p-value of test                       :    0.83


-----------------------------------------------
CPU time used                    :  00:00:48.19

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                   :  135.07
p-value of test                       :    0.73


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

Number of degrees of freedom          :  146
ChiSquare statistic                   :  127.69
p-value of test                       :    0.86


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

Number of degrees of freedom          :  500
ChiSquare statistic                   :  504.59
p-value of test                       :    0.43


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

Number of degrees of freedom          :  136
ChiSquare statistic                   :  150.81
p-value of test                       :    0.18


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

Number of degrees of freedom          :   74
ChiSquare statistic                   :   58.86
p-value of test                       :    0.90


-----------------------------------------------
CPU time used                    :  00:00:47.36

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                   :  390.60
p-value of test                       :    0.40


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

Number of degrees of freedom          :  384
ChiSquare statistic                   :  410.85
p-value of test                       :    0.17


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

Number of degrees of freedom          : 5000
ChiSquare statistic                   : 4943.23
p-value of test                       :    0.71


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

Number of degrees of freedom          :  378
ChiSquare statistic                   :  350.79
p-value of test                       :    0.84


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

Number of degrees of freedom          :  200
ChiSquare statistic                   :  210.00
p-value of test                       :    0.30


-----------------------------------------------
CPU time used                    :  00:00:38.85

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                   :  392.50
p-value of test                       :    0.37


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

Number of degrees of freedom          :  384
ChiSquare statistic                   :  389.70
p-value of test                       :    0.41


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

Number of degrees of freedom          : 5000
ChiSquare statistic                   : 4978.41
p-value of test                       :    0.58


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

Number of degrees of freedom          :  378
ChiSquare statistic                   :  418.58
p-value of test                       :    0.07


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

Number of degrees of freedom          :  200
ChiSquare statistic                   :  189.71
p-value of test                       :    0.69


-----------------------------------------------
CPU time used                    :  00:00:39.01

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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      :   11.54
p-value of test                       :    0.48


-----------------------------------------------
Normal statistic for number of jumps  :    1.09
p-value of test                       :    0.14



-----------------------------------------------
CPU time used                    :  00:01:59.15

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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      :   25.23
p-value of test                       :    0.01


-----------------------------------------------
Normal statistic for number of jumps  :   0.092
p-value of test                       :    0.46



-----------------------------------------------
CPU time used                    :  00:01:57.05

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


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

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

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

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

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

Sample variance                       :    0.91
p-value of test                       :    0.51

-----------------------------------------------
CPU time used                    :  00:01:06.29

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


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

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

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

Anderson-Darling statistic = A2       :    0.76
p-value of test                       :    0.51

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

Sample variance                       :    1.86
p-value of test                       :    0.05

-----------------------------------------------
CPU time used                    :  00:01:09.28

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


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

Kolmogorov-Smirnov+ statistic = D+    : 8.73e-3
p-value of test                       :    0.53

Kolmogorov-Smirnov- statistic = D-    : 8.47e-3
p-value of test                       :    0.55

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

-----------------------------------------------
CPU time used                    :  00:00:46.14

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


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

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

Kolmogorov-Smirnov- statistic = D-    : 8.35e-3
p-value of test                       :    0.56

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

-----------------------------------------------
CPU time used                    :  00:00:45.32

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


-----------------------------------------------
Number of degrees of freedom          :    8
Chi-square statistic                  :   11.29
p-value of test                       :    0.19

-----------------------------------------------
Global longest run of 1               :   31.00
p-value of test                       :    0.69



-----------------------------------------------
CPU time used                    :  00:01:28.59

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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.31
p-value of test                       :    0.14

-----------------------------------------------
Global longest run of 1               :   33.00
p-value of test                       :    0.44



-----------------------------------------------
CPU time used                    :  00:01:31.13

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


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

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

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

Anderson-Darling statistic = A2       :    3.87
p-value of test                       :    0.01

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

-----------------------------------------------
CPU time used                    :  00:02:43.45

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


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

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

Kolmogorov-Smirnov- statistic = D-    :   0.059
p-value of test                       :    0.90

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

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

-----------------------------------------------
CPU time used                    :  00:02:43.54

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


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

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

Kolmogorov-Smirnov- statistic = D-    : 3.83e-3
p-value of test                       :    0.9960

Anderson-Darling statistic = A2       :    3.63
p-value of test                       :    0.01

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

-----------------------------------------------
CPU time used                    :  00:01:00.09

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


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

Kolmogorov-Smirnov+ statistic = D+    :   0.067
p-value of test                       :    0.88

Kolmogorov-Smirnov- statistic = D-    :    0.48
p-value of test                       :  6.6e-3

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

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

-----------------------------------------------
CPU time used                    :  00:01:03.70

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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



-----------------------------------------------
Normal statistic                      :   -0.18
p-value of test                       :    0.57

-----------------------------------------------
CPU time used                    :  00:01:14.70

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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



-----------------------------------------------
Normal statistic                      :   -0.26
p-value of test                       :    0.60

-----------------------------------------------
CPU time used                    :  00:01:11.02

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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



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

-----------------------------------------------
CPU time used                    :  00:04:41.17

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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.052
p-value of test                       :    0.92

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

Anderson-Darling statistic = A2       :    1.81
p-value of test                       :    0.12

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

-----------------------------------------------
CPU time used                    :  00:01:54.47

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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.096
p-value of test                       :    0.78

Kolmogorov-Smirnov- statistic = D-    :    0.25
p-value of test                       :    0.26

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

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

-----------------------------------------------
CPU time used                    :  00:01:59.11

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                  : 3999.85
p-value of test                       :    0.90

-----------------------------------------------
CPU time used                    :  00:01:23.79

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                  : 4063.79
p-value of test                       :    0.72

-----------------------------------------------
CPU time used                    :  00:01:27.23

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                  :11705.35
p-value of test                       :    0.78

-----------------------------------------------
CPU time used                    :  00:01:31.13

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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                  :11557.84
p-value of test                       :    0.96

-----------------------------------------------
CPU time used                    :  00:01:35.31

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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     :   67.77
p-value of test                       :    0.10


-----------------------------------------------
Total number of bits:  8000068896

Normal statistic for number of bits   :    0.54
p-value of test                       :    0.29



-----------------------------------------------
CPU time used                    :  00:01:12.79

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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     :   54.41
p-value of test                       :    0.46


-----------------------------------------------
Total number of bits:  8000094540

Normal statistic for number of bits   :    0.75
p-value of test                       :    0.23



-----------------------------------------------
CPU time used                    :  00:01:15.62

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


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

Kolmogorov-Smirnov+ statistic = D+    :    0.41
p-value of test                       :    0.02

Kolmogorov-Smirnov- statistic = D-    :   0.079
p-value of test                       :    0.84

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

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

Sample variance                       :    1.41
p-value of test                       :    0.18

-----------------------------------------------
CPU time used                    :  00:02:27.72

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, 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.69

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

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

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

Sample variance                       :    1.77
p-value of test                       :    0.07

-----------------------------------------------
CPU time used                    :  00:02:12.69

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


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

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

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

Anderson-Darling statistic = A2       :    0.28
p-value of test                       :    0.95

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

Sample variance                       :    0.84
p-value of test                       :    0.58

-----------------------------------------------
CPU time used                    :  00:02:26.15

Generator state:
N/A



***********************************************************
HOST = gc04016493.gdsc.susx.ac.uk, Linux

stdin


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


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

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

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

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

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

Sample variance                       :    1.62
p-value of test                       :    0.10

-----------------------------------------------
CPU time used                    :  00:02:09.37

Generator state:
N/A




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

 Version:          TestU01 1.2.3
 Generator:        stdin
 Number of statistics:  160
 Total CPU time:   03:55:55.44

 All tests were passed



# 
# End: 2022-04-07 08:17:17
# 
# Exit value: 0
# Bytes used: 1428443652096 >= 2^40 (1.4 TB)
# 
# Test duration: 239.52703333333335 minutes
# 
