haskell / statistics

A fast, high quality library for computing with statistics in Haskell.
http://hackage.haskell.org/package/statistics
BSD 2-Clause "Simplified" License
300 stars 68 forks source link

Test failures with QuickCheck 2.14.3 #205

Closed felixonmars closed 11 months ago

felixonmars commented 1 year ago
  Correlation
    Pearson correlation:                                                                     FAIL
      *** Failed! Falsified (after 11 tests and 4 shrinks):
      [(0.0,0.0),(0.0,0.0)]
      NaN /=~ NaN
      Use --quickcheck-replay=167843 to reproduce.
      Use -p '/Pearson correlation/' to rerun this test only.
  Matrix
    t_row:                                                                                   OK
      +++ OK, passed 100 tests.
    t_column:                                                                                OK
      +++ OK, passed 100 tests.
    t_center:                                                                                OK
      +++ OK, passed 100 tests.
    t_transpose:                                                                             OK
      +++ OK, passed 100 tests.
    t_qr:                                                                                    FAIL
      *** Failed! Falsified, Falsified (after 25 tests):
      (5,3)  0.3885 -2.25   -5
             2       0.7584  0
             0       0.1136  0.1754
             0      -0.25    0
             0.8121  4.5    -4

      (1,2): 0.0 /=~ -1.3877787807814457e-16

      Use --quickcheck-replay=235837 to reproduce.
      Use -p '/t_qr/' to rerun this test only.
    Tests for: FDistribution
      C.D.F. sanity:                                                                         OK
        +++ OK, passed 100 tests.
      CDF limit at +inf:                                                                     OK
        +++ OK, passed 100 tests.
      CDF limit at -inf:                                                                     OK
        +++ OK, passed 100 tests.
      CDF at +inf = 1:                                                                       OK
        +++ OK, passed 100 tests.
      CDF at -inf = 1:                                                                       OK
        +++ OK, passed 100 tests.
      CDF is nondecreasing:                                                                  OK
        +++ OK, passed 100 tests.
      1-CDF is correct:                                                                      FAIL
        *** Failed! Falsified (after 4 tests):
        fDistributionReal 3.0 1.0
        1.0
        err. tolerance = 4.440892098500626e-16
        difference     = 8.881784197001252e-16
        Use --quickcheck-replay=106112 to reproduce.
        Use -p '/Tests for: FDistribution.1-CDF is correct/' to rerun this test only.

They all pass with QuickCheck 2.14.2 or older versions, with everything else unchanged.

torgeirsh commented 1 year ago

I got a random failure on the Pearson correlation test with QuickCheck 2.14.2, so it's not limited to 2.14.3:

Pearson correlation: FAIL (44.06s) *** Failed! Falsified (after 90 tests and 990 shrinks): [(-4.0,0.0),(-79.0,32.6),(-5.4,-57.0),(-54.0,14.4),(-44.4,55.6),(60.8,-85.7),(-20.0,88.0),(61.0,29.9),(15.1,50.0),(76.5,54.1),(11.8,-37.0),(-67.7,-85.8),(16.2,88.0),(35.9,-52.4),(85.0,-14.4),(54.8,-31.6),(-58.1,-31.8),(-6.1,-30.0),(32.3,-32.1),(-18.8,73.0),(-67.3,40.0),(26.0,9.0),(20.5,67.3),(14.0,7.4),(29.0,-2.3),(-23.0,5.0),(-66.8,-14.81),(63.65,40.104),(-33.7,59.3),(-62.698,-59.7379)] -2.50969995085811e-5 /=~ -2.509699950855431e-5 Use --quickcheck-replay=106195 to reproduce. Use -p '/Pearson correlation/' to rerun this test only.

Shimuuar commented 11 months ago

Fixed in 0.16.2.1