Home | History | Annotate | Download | only in decimaltestdata
      1 ------------------------------------------------------------------------
      2 -- ddNextMinus.decTest -- decDouble next that is less [754r nextdown] --
      3 -- Copyright (c) IBM Corporation, 1981, 2008.  All rights reserved.   --
      4 ------------------------------------------------------------------------
      5 -- Please see the document "General Decimal Arithmetic Testcases"     --
      6 -- at http://www2.hursley.ibm.com/decimal for the description of      --
      7 -- these testcases.                                                   --
      8 --                                                                    --
      9 -- These testcases are experimental ('beta' versions), and they       --
     10 -- may contain errors.  They are offered on an as-is basis.  In       --
     11 -- particular, achieving the same results as the tests here is not    --
     12 -- a guarantee that an implementation complies with any Standard      --
     13 -- or specification.  The tests are not exhaustive.                   --
     14 --                                                                    --
     15 -- Please send comments, suggestions, and corrections to the author:  --
     16 --   Mike Cowlishaw, IBM Fellow                                       --
     17 --   IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK         --
     18 --   mfc (a] uk.ibm.com                                                   --
     19 ------------------------------------------------------------------------
     20 version: 2.59
     21 
     22 -- All operands and results are decDoubles.
     23 precision:   16
     24 maxExponent: 384
     25 minExponent: -383
     26 extended:    1
     27 clamp:       1
     28 rounding:    half_even
     29 
     30 ddnextm001 nextminus  0.9999999999999995 ->   0.9999999999999994
     31 ddnextm002 nextminus  0.9999999999999996 ->   0.9999999999999995
     32 ddnextm003 nextminus  0.9999999999999997 ->   0.9999999999999996
     33 ddnextm004 nextminus  0.9999999999999998 ->   0.9999999999999997
     34 ddnextm005 nextminus  0.9999999999999999 ->   0.9999999999999998
     35 ddnextm006 nextminus  1.000000000000000  ->   0.9999999999999999
     36 ddnextm007 nextminus  1.0         ->   0.9999999999999999
     37 ddnextm008 nextminus  1           ->   0.9999999999999999
     38 ddnextm009 nextminus  1.000000000000001  ->   1.000000000000000
     39 ddnextm010 nextminus  1.000000000000002  ->   1.000000000000001
     40 ddnextm011 nextminus  1.000000000000003  ->   1.000000000000002
     41 ddnextm012 nextminus  1.000000000000004  ->   1.000000000000003
     42 ddnextm013 nextminus  1.000000000000005  ->   1.000000000000004
     43 ddnextm014 nextminus  1.000000000000006  ->   1.000000000000005
     44 ddnextm015 nextminus  1.000000000000007  ->   1.000000000000006
     45 ddnextm016 nextminus  1.000000000000008  ->   1.000000000000007
     46 ddnextm017 nextminus  1.000000000000009  ->   1.000000000000008
     47 ddnextm018 nextminus  1.000000000000010  ->   1.000000000000009
     48 ddnextm019 nextminus  1.000000000000011  ->   1.000000000000010
     49 ddnextm020 nextminus  1.000000000000012  ->   1.000000000000011
     50 
     51 ddnextm021 nextminus -0.9999999999999995 ->  -0.9999999999999996
     52 ddnextm022 nextminus -0.9999999999999996 ->  -0.9999999999999997
     53 ddnextm023 nextminus -0.9999999999999997 ->  -0.9999999999999998
     54 ddnextm024 nextminus -0.9999999999999998 ->  -0.9999999999999999
     55 ddnextm025 nextminus -0.9999999999999999 ->  -1.000000000000000
     56 ddnextm026 nextminus -1.000000000000000  ->  -1.000000000000001
     57 ddnextm027 nextminus -1.0         ->  -1.000000000000001
     58 ddnextm028 nextminus -1           ->  -1.000000000000001
     59 ddnextm029 nextminus -1.000000000000001  ->  -1.000000000000002
     60 ddnextm030 nextminus -1.000000000000002  ->  -1.000000000000003
     61 ddnextm031 nextminus -1.000000000000003  ->  -1.000000000000004
     62 ddnextm032 nextminus -1.000000000000004  ->  -1.000000000000005
     63 ddnextm033 nextminus -1.000000000000005  ->  -1.000000000000006
     64 ddnextm034 nextminus -1.000000000000006  ->  -1.000000000000007
     65 ddnextm035 nextminus -1.000000000000007  ->  -1.000000000000008
     66 ddnextm036 nextminus -1.000000000000008  ->  -1.000000000000009
     67 ddnextm037 nextminus -1.000000000000009  ->  -1.000000000000010
     68 ddnextm038 nextminus -1.000000000000010  ->  -1.000000000000011
     69 ddnextm039 nextminus -1.000000000000011  ->  -1.000000000000012
     70 
     71 -- ultra-tiny inputs
     72 ddnextm062 nextminus  1E-398         ->   0E-398
     73 ddnextm065 nextminus -1E-398         ->  -2E-398
     74 
     75 -- Zeros
     76 ddnextm100 nextminus -0           -> -1E-398
     77 ddnextm101 nextminus  0           -> -1E-398
     78 ddnextm102 nextminus  0.00        -> -1E-398
     79 ddnextm103 nextminus -0.00        -> -1E-398
     80 ddnextm104 nextminus  0E-300      -> -1E-398
     81 ddnextm105 nextminus  0E+300      -> -1E-398
     82 ddnextm106 nextminus  0E+30000    -> -1E-398
     83 ddnextm107 nextminus -0E+30000    -> -1E-398
     84 
     85 -- specials
     86 ddnextm150 nextminus   Inf    ->  9.999999999999999E+384
     87 ddnextm151 nextminus  -Inf    -> -Infinity
     88 ddnextm152 nextminus   NaN    ->  NaN
     89 ddnextm153 nextminus  sNaN    ->  NaN   Invalid_operation
     90 ddnextm154 nextminus   NaN77  ->  NaN77
     91 ddnextm155 nextminus  sNaN88  ->  NaN88 Invalid_operation
     92 ddnextm156 nextminus  -NaN    -> -NaN
     93 ddnextm157 nextminus -sNaN    -> -NaN   Invalid_operation
     94 ddnextm158 nextminus  -NaN77  -> -NaN77
     95 ddnextm159 nextminus -sNaN88  -> -NaN88 Invalid_operation
     96 
     97 -- Nmax, Nmin, Ntiny, subnormals
     98 ddnextm170 nextminus  9.999999999999999E+384   -> 9.999999999999998E+384
     99 ddnextm171 nextminus  9.999999999999998E+384   -> 9.999999999999997E+384
    100 ddnextm172 nextminus  1E-383                   -> 9.99999999999999E-384
    101 ddnextm173 nextminus  1.000000000000000E-383   -> 9.99999999999999E-384
    102 ddnextm174 nextminus  9E-398                   -> 8E-398
    103 ddnextm175 nextminus  9.9E-397                 -> 9.8E-397
    104 ddnextm176 nextminus  9.99999999999E-387       -> 9.99999999998E-387
    105 ddnextm177 nextminus  9.99999999999999E-384    -> 9.99999999999998E-384
    106 ddnextm178 nextminus  9.99999999999998E-384    -> 9.99999999999997E-384
    107 ddnextm179 nextminus  9.99999999999997E-384    -> 9.99999999999996E-384
    108 ddnextm180 nextminus  0E-398                   -> -1E-398
    109 ddnextm181 nextminus  1E-398                   -> 0E-398
    110 ddnextm182 nextminus  2E-398                   -> 1E-398
    111 
    112 ddnextm183 nextminus  -0E-398                  -> -1E-398
    113 ddnextm184 nextminus  -1E-398                  -> -2E-398
    114 ddnextm185 nextminus  -2E-398                  -> -3E-398
    115 ddnextm186 nextminus  -10E-398                 -> -1.1E-397
    116 ddnextm187 nextminus  -100E-398                -> -1.01E-396
    117 ddnextm188 nextminus  -100000E-398             -> -1.00001E-393
    118 ddnextm189 nextminus  -1.00000000000E-383      -> -1.000000000000001E-383
    119 ddnextm190 nextminus  -1.000000000000000E-383  -> -1.000000000000001E-383
    120 ddnextm191 nextminus  -1E-383                  -> -1.000000000000001E-383
    121 ddnextm192 nextminus  -9.999999999999998E+384  -> -9.999999999999999E+384
    122 ddnextm193 nextminus  -9.999999999999999E+384  -> -Infinity
    123 
    124 -- Null tests
    125 ddnextm900 nextminus  # -> NaN Invalid_operation
    126 
    127