1------------------------------------------------------------------------ 2-- samequantum.decTest -- check quantums match -- 3-- Copyright (c) IBM Corporation, 2001, 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@uk.ibm.com -- 19------------------------------------------------------------------------ 20version: 2.59 21 22extended: 1 23precision: 9 24rounding: half_up 25maxExponent: 999 26minExponent: -999 27 28samq001 samequantum 0 0 -> 1 29samq002 samequantum 0 1 -> 1 30samq003 samequantum 1 0 -> 1 31samq004 samequantum 1 1 -> 1 32 33samq011 samequantum 10 1E+1 -> 0 34samq012 samequantum 10E+1 10E+1 -> 1 35samq013 samequantum 100 10E+1 -> 0 36samq014 samequantum 100 1E+2 -> 0 37samq015 samequantum 0.1 1E-2 -> 0 38samq016 samequantum 0.1 1E-1 -> 1 39samq017 samequantum 0.1 1E-0 -> 0 40samq018 samequantum 999 999 -> 1 41samq019 samequantum 999E-1 99.9 -> 1 42samq020 samequantum 111E-1 22.2 -> 1 43samq021 samequantum 111E-1 1234.2 -> 1 44 45-- zeros 46samq030 samequantum 0.0 1.1 -> 1 47samq031 samequantum 0.0 1.11 -> 0 48samq032 samequantum 0.0 0 -> 0 49samq033 samequantum 0.0 0.0 -> 1 50samq034 samequantum 0.0 0.00 -> 0 51samq035 samequantum 0E+1 0E+0 -> 0 52samq036 samequantum 0E+1 0E+1 -> 1 53samq037 samequantum 0E+1 0E+2 -> 0 54samq038 samequantum 0E-17 0E-16 -> 0 55samq039 samequantum 0E-17 0E-17 -> 1 56samq040 samequantum 0E-17 0E-18 -> 0 57samq041 samequantum 0E-17 0.0E-15 -> 0 58samq042 samequantum 0E-17 0.0E-16 -> 1 59samq043 samequantum 0E-17 0.0E-17 -> 0 60samq044 samequantum -0E-17 0.0E-16 -> 1 61samq045 samequantum 0E-17 -0.0E-17 -> 0 62samq046 samequantum 0E-17 -0.0E-16 -> 1 63samq047 samequantum -0E-17 0.0E-17 -> 0 64samq048 samequantum -0E-17 -0.0E-16 -> 1 65samq049 samequantum -0E-17 -0.0E-17 -> 0 66 67-- Nmax, Nmin, Ntiny 68samq051 samequantum 9.99999999E+999 9.99999999E+999 -> 1 69samq052 samequantum 1E-999 1E-999 -> 1 70samq053 samequantum 1.00000000E-999 1.00000000E-999 -> 1 71samq054 samequantum 1E-1007 1E-1007 -> 1 72samq055 samequantum 9.99999999E+999 9.99999999E+999 -> 1 73samq056 samequantum 1E-999 1E-999 -> 1 74samq057 samequantum 1.00000000E-999 1.00000000E-999 -> 1 75samq058 samequantum 1E-1007 1E-1007 -> 1 76 77samq061 samequantum -1E-1007 -1E-1007 -> 1 78samq062 samequantum -1.00000000E-999 -1.00000000E-999 -> 1 79samq063 samequantum -1E-999 -1E-999 -> 1 80samq064 samequantum -9.99999999E+999 -9.99999999E+999 -> 1 81samq065 samequantum -1E-1007 -1E-1007 -> 1 82samq066 samequantum -1.00000000E-999 -1.00000000E-999 -> 1 83samq067 samequantum -1E-999 -1E-999 -> 1 84samq068 samequantum -9.99999999E+999 -9.99999999E+999 -> 1 85 86samq071 samequantum -4E-1007 -1E-1007 -> 1 87samq072 samequantum -4.00000000E-999 -1.00004000E-999 -> 1 88samq073 samequantum -4E-999 -1E-999 -> 1 89samq074 samequantum -4.99999999E+999 -9.99949999E+999 -> 1 90samq075 samequantum -4E-1007 -1E-1007 -> 1 91samq076 samequantum -4.00000000E-999 -1.00400000E-999 -> 1 92samq077 samequantum -4E-999 -1E-999 -> 1 93samq078 samequantum -4.99999999E+999 -9.94999999E+999 -> 1 94 95samq081 samequantum -4E-1006 -1E-1007 -> 0 96samq082 samequantum -4.00000000E-999 -1.00004000E-996 -> 0 97samq083 samequantum -4E-996 -1E-999 -> 0 98samq084 samequantum -4.99999999E+999 -9.99949999E+996 -> 0 99samq085 samequantum -4E-1006 -1E-1007 -> 0 100samq086 samequantum -4.00000000E-999 -1.00400000E-996 -> 0 101samq087 samequantum -4E-996 -1E-999 -> 0 102samq088 samequantum -4.99999999E+999 -9.94999999E+996 -> 0 103 104-- specials & combinations 105samq0110 samequantum -Inf -Inf -> 1 106samq0111 samequantum -Inf Inf -> 1 107samq0112 samequantum -Inf NaN -> 0 108samq0113 samequantum -Inf -7E+3 -> 0 109samq0114 samequantum -Inf -7 -> 0 110samq0115 samequantum -Inf -7E-3 -> 0 111samq0116 samequantum -Inf -0E-3 -> 0 112samq0117 samequantum -Inf -0 -> 0 113samq0118 samequantum -Inf -0E+3 -> 0 114samq0119 samequantum -Inf 0E-3 -> 0 115samq0120 samequantum -Inf 0 -> 0 116samq0121 samequantum -Inf 0E+3 -> 0 117samq0122 samequantum -Inf 7E-3 -> 0 118samq0123 samequantum -Inf 7 -> 0 119samq0124 samequantum -Inf 7E+3 -> 0 120samq0125 samequantum -Inf sNaN -> 0 121 122samq0210 samequantum Inf -Inf -> 1 123samq0211 samequantum Inf Inf -> 1 124samq0212 samequantum Inf NaN -> 0 125samq0213 samequantum Inf -7E+3 -> 0 126samq0214 samequantum Inf -7 -> 0 127samq0215 samequantum Inf -7E-3 -> 0 128samq0216 samequantum Inf -0E-3 -> 0 129samq0217 samequantum Inf -0 -> 0 130samq0218 samequantum Inf -0E+3 -> 0 131samq0219 samequantum Inf 0E-3 -> 0 132samq0220 samequantum Inf 0 -> 0 133samq0221 samequantum Inf 0E+3 -> 0 134samq0222 samequantum Inf 7E-3 -> 0 135samq0223 samequantum Inf 7 -> 0 136samq0224 samequantum Inf 7E+3 -> 0 137samq0225 samequantum Inf sNaN -> 0 138 139samq0310 samequantum NaN -Inf -> 0 140samq0311 samequantum NaN Inf -> 0 141samq0312 samequantum NaN NaN -> 1 142samq0313 samequantum NaN -7E+3 -> 0 143samq0314 samequantum NaN -7 -> 0 144samq0315 samequantum NaN -7E-3 -> 0 145samq0316 samequantum NaN -0E-3 -> 0 146samq0317 samequantum NaN -0 -> 0 147samq0318 samequantum NaN -0E+3 -> 0 148samq0319 samequantum NaN 0E-3 -> 0 149samq0320 samequantum NaN 0 -> 0 150samq0321 samequantum NaN 0E+3 -> 0 151samq0322 samequantum NaN 7E-3 -> 0 152samq0323 samequantum NaN 7 -> 0 153samq0324 samequantum NaN 7E+3 -> 0 154samq0325 samequantum NaN sNaN -> 1 155 156samq0410 samequantum -7E+3 -Inf -> 0 157samq0411 samequantum -7E+3 Inf -> 0 158samq0412 samequantum -7E+3 NaN -> 0 159samq0413 samequantum -7E+3 -7E+3 -> 1 160samq0414 samequantum -7E+3 -7 -> 0 161samq0415 samequantum -7E+3 -7E-3 -> 0 162samq0416 samequantum -7E+3 -0E-3 -> 0 163samq0417 samequantum -7E+3 -0 -> 0 164samq0418 samequantum -7E+3 -0E+3 -> 1 165samq0419 samequantum -7E+3 0E-3 -> 0 166samq0420 samequantum -7E+3 0 -> 0 167samq0421 samequantum -7E+3 0E+3 -> 1 168samq0422 samequantum -7E+3 7E-3 -> 0 169samq0423 samequantum -7E+3 7 -> 0 170samq0424 samequantum -7E+3 7E+3 -> 1 171samq0425 samequantum -7E+3 sNaN -> 0 172 173samq0510 samequantum -7 -Inf -> 0 174samq0511 samequantum -7 Inf -> 0 175samq0512 samequantum -7 NaN -> 0 176samq0513 samequantum -7 -7E+3 -> 0 177samq0514 samequantum -7 -7 -> 1 178samq0515 samequantum -7 -7E-3 -> 0 179samq0516 samequantum -7 -0E-3 -> 0 180samq0517 samequantum -7 -0 -> 1 181samq0518 samequantum -7 -0E+3 -> 0 182samq0519 samequantum -7 0E-3 -> 0 183samq0520 samequantum -7 0 -> 1 184samq0521 samequantum -7 0E+3 -> 0 185samq0522 samequantum -7 7E-3 -> 0 186samq0523 samequantum -7 7 -> 1 187samq0524 samequantum -7 7E+3 -> 0 188samq0525 samequantum -7 sNaN -> 0 189 190samq0610 samequantum -7E-3 -Inf -> 0 191samq0611 samequantum -7E-3 Inf -> 0 192samq0612 samequantum -7E-3 NaN -> 0 193samq0613 samequantum -7E-3 -7E+3 -> 0 194samq0614 samequantum -7E-3 -7 -> 0 195samq0615 samequantum -7E-3 -7E-3 -> 1 196samq0616 samequantum -7E-3 -0E-3 -> 1 197samq0617 samequantum -7E-3 -0 -> 0 198samq0618 samequantum -7E-3 -0E+3 -> 0 199samq0619 samequantum -7E-3 0E-3 -> 1 200samq0620 samequantum -7E-3 0 -> 0 201samq0621 samequantum -7E-3 0E+3 -> 0 202samq0622 samequantum -7E-3 7E-3 -> 1 203samq0623 samequantum -7E-3 7 -> 0 204samq0624 samequantum -7E-3 7E+3 -> 0 205samq0625 samequantum -7E-3 sNaN -> 0 206 207samq0710 samequantum -0E-3 -Inf -> 0 208samq0711 samequantum -0E-3 Inf -> 0 209samq0712 samequantum -0E-3 NaN -> 0 210samq0713 samequantum -0E-3 -7E+3 -> 0 211samq0714 samequantum -0E-3 -7 -> 0 212samq0715 samequantum -0E-3 -7E-3 -> 1 213samq0716 samequantum -0E-3 -0E-3 -> 1 214samq0717 samequantum -0E-3 -0 -> 0 215samq0718 samequantum -0E-3 -0E+3 -> 0 216samq0719 samequantum -0E-3 0E-3 -> 1 217samq0720 samequantum -0E-3 0 -> 0 218samq0721 samequantum -0E-3 0E+3 -> 0 219samq0722 samequantum -0E-3 7E-3 -> 1 220samq0723 samequantum -0E-3 7 -> 0 221samq0724 samequantum -0E-3 7E+3 -> 0 222samq0725 samequantum -0E-3 sNaN -> 0 223 224samq0810 samequantum -0 -Inf -> 0 225samq0811 samequantum -0 Inf -> 0 226samq0812 samequantum -0 NaN -> 0 227samq0813 samequantum -0 -7E+3 -> 0 228samq0814 samequantum -0 -7 -> 1 229samq0815 samequantum -0 -7E-3 -> 0 230samq0816 samequantum -0 -0E-3 -> 0 231samq0817 samequantum -0 -0 -> 1 232samq0818 samequantum -0 -0E+3 -> 0 233samq0819 samequantum -0 0E-3 -> 0 234samq0820 samequantum -0 0 -> 1 235samq0821 samequantum -0 0E+3 -> 0 236samq0822 samequantum -0 7E-3 -> 0 237samq0823 samequantum -0 7 -> 1 238samq0824 samequantum -0 7E+3 -> 0 239samq0825 samequantum -0 sNaN -> 0 240 241samq0910 samequantum -0E+3 -Inf -> 0 242samq0911 samequantum -0E+3 Inf -> 0 243samq0912 samequantum -0E+3 NaN -> 0 244samq0913 samequantum -0E+3 -7E+3 -> 1 245samq0914 samequantum -0E+3 -7 -> 0 246samq0915 samequantum -0E+3 -7E-3 -> 0 247samq0916 samequantum -0E+3 -0E-3 -> 0 248samq0917 samequantum -0E+3 -0 -> 0 249samq0918 samequantum -0E+3 -0E+3 -> 1 250samq0919 samequantum -0E+3 0E-3 -> 0 251samq0920 samequantum -0E+3 0 -> 0 252samq0921 samequantum -0E+3 0E+3 -> 1 253samq0922 samequantum -0E+3 7E-3 -> 0 254samq0923 samequantum -0E+3 7 -> 0 255samq0924 samequantum -0E+3 7E+3 -> 1 256samq0925 samequantum -0E+3 sNaN -> 0 257 258samq1110 samequantum 0E-3 -Inf -> 0 259samq1111 samequantum 0E-3 Inf -> 0 260samq1112 samequantum 0E-3 NaN -> 0 261samq1113 samequantum 0E-3 -7E+3 -> 0 262samq1114 samequantum 0E-3 -7 -> 0 263samq1115 samequantum 0E-3 -7E-3 -> 1 264samq1116 samequantum 0E-3 -0E-3 -> 1 265samq1117 samequantum 0E-3 -0 -> 0 266samq1118 samequantum 0E-3 -0E+3 -> 0 267samq1119 samequantum 0E-3 0E-3 -> 1 268samq1120 samequantum 0E-3 0 -> 0 269samq1121 samequantum 0E-3 0E+3 -> 0 270samq1122 samequantum 0E-3 7E-3 -> 1 271samq1123 samequantum 0E-3 7 -> 0 272samq1124 samequantum 0E-3 7E+3 -> 0 273samq1125 samequantum 0E-3 sNaN -> 0 274 275samq1210 samequantum 0 -Inf -> 0 276samq1211 samequantum 0 Inf -> 0 277samq1212 samequantum 0 NaN -> 0 278samq1213 samequantum 0 -7E+3 -> 0 279samq1214 samequantum 0 -7 -> 1 280samq1215 samequantum 0 -7E-3 -> 0 281samq1216 samequantum 0 -0E-3 -> 0 282samq1217 samequantum 0 -0 -> 1 283samq1218 samequantum 0 -0E+3 -> 0 284samq1219 samequantum 0 0E-3 -> 0 285samq1220 samequantum 0 0 -> 1 286samq1221 samequantum 0 0E+3 -> 0 287samq1222 samequantum 0 7E-3 -> 0 288samq1223 samequantum 0 7 -> 1 289samq1224 samequantum 0 7E+3 -> 0 290samq1225 samequantum 0 sNaN -> 0 291 292samq1310 samequantum 0E+3 -Inf -> 0 293samq1311 samequantum 0E+3 Inf -> 0 294samq1312 samequantum 0E+3 NaN -> 0 295samq1313 samequantum 0E+3 -7E+3 -> 1 296samq1314 samequantum 0E+3 -7 -> 0 297samq1315 samequantum 0E+3 -7E-3 -> 0 298samq1316 samequantum 0E+3 -0E-3 -> 0 299samq1317 samequantum 0E+3 -0 -> 0 300samq1318 samequantum 0E+3 -0E+3 -> 1 301samq1319 samequantum 0E+3 0E-3 -> 0 302samq1320 samequantum 0E+3 0 -> 0 303samq1321 samequantum 0E+3 0E+3 -> 1 304samq1322 samequantum 0E+3 7E-3 -> 0 305samq1323 samequantum 0E+3 7 -> 0 306samq1324 samequantum 0E+3 7E+3 -> 1 307samq1325 samequantum 0E+3 sNaN -> 0 308 309samq1410 samequantum 7E-3 -Inf -> 0 310samq1411 samequantum 7E-3 Inf -> 0 311samq1412 samequantum 7E-3 NaN -> 0 312samq1413 samequantum 7E-3 -7E+3 -> 0 313samq1414 samequantum 7E-3 -7 -> 0 314samq1415 samequantum 7E-3 -7E-3 -> 1 315samq1416 samequantum 7E-3 -0E-3 -> 1 316samq1417 samequantum 7E-3 -0 -> 0 317samq1418 samequantum 7E-3 -0E+3 -> 0 318samq1419 samequantum 7E-3 0E-3 -> 1 319samq1420 samequantum 7E-3 0 -> 0 320samq1421 samequantum 7E-3 0E+3 -> 0 321samq1422 samequantum 7E-3 7E-3 -> 1 322samq1423 samequantum 7E-3 7 -> 0 323samq1424 samequantum 7E-3 7E+3 -> 0 324samq1425 samequantum 7E-3 sNaN -> 0 325 326samq1510 samequantum 7 -Inf -> 0 327samq1511 samequantum 7 Inf -> 0 328samq1512 samequantum 7 NaN -> 0 329samq1513 samequantum 7 -7E+3 -> 0 330samq1514 samequantum 7 -7 -> 1 331samq1515 samequantum 7 -7E-3 -> 0 332samq1516 samequantum 7 -0E-3 -> 0 333samq1517 samequantum 7 -0 -> 1 334samq1518 samequantum 7 -0E+3 -> 0 335samq1519 samequantum 7 0E-3 -> 0 336samq1520 samequantum 7 0 -> 1 337samq1521 samequantum 7 0E+3 -> 0 338samq1522 samequantum 7 7E-3 -> 0 339samq1523 samequantum 7 7 -> 1 340samq1524 samequantum 7 7E+3 -> 0 341samq1525 samequantum 7 sNaN -> 0 342 343samq1610 samequantum 7E+3 -Inf -> 0 344samq1611 samequantum 7E+3 Inf -> 0 345samq1612 samequantum 7E+3 NaN -> 0 346samq1613 samequantum 7E+3 -7E+3 -> 1 347samq1614 samequantum 7E+3 -7 -> 0 348samq1615 samequantum 7E+3 -7E-3 -> 0 349samq1616 samequantum 7E+3 -0E-3 -> 0 350samq1617 samequantum 7E+3 -0 -> 0 351samq1618 samequantum 7E+3 -0E+3 -> 1 352samq1619 samequantum 7E+3 0E-3 -> 0 353samq1620 samequantum 7E+3 0 -> 0 354samq1621 samequantum 7E+3 0E+3 -> 1 355samq1622 samequantum 7E+3 7E-3 -> 0 356samq1623 samequantum 7E+3 7 -> 0 357samq1624 samequantum 7E+3 7E+3 -> 1 358samq1625 samequantum 7E+3 sNaN -> 0 359 360samq1710 samequantum sNaN -Inf -> 0 361samq1711 samequantum sNaN Inf -> 0 362samq1712 samequantum sNaN NaN -> 1 363samq1713 samequantum sNaN -7E+3 -> 0 364samq1714 samequantum sNaN -7 -> 0 365samq1715 samequantum sNaN -7E-3 -> 0 366samq1716 samequantum sNaN -0E-3 -> 0 367samq1717 samequantum sNaN -0 -> 0 368samq1718 samequantum sNaN -0E+3 -> 0 369samq1719 samequantum sNaN 0E-3 -> 0 370samq1720 samequantum sNaN 0 -> 0 371samq1721 samequantum sNaN 0E+3 -> 0 372samq1722 samequantum sNaN 7E-3 -> 0 373samq1723 samequantum sNaN 7 -> 0 374samq1724 samequantum sNaN 7E+3 -> 0 375samq1725 samequantum sNaN sNaN -> 1 376-- noisy NaNs 377samq1730 samequantum sNaN3 sNaN3 -> 1 378samq1731 samequantum sNaN3 sNaN4 -> 1 379samq1732 samequantum NaN3 NaN3 -> 1 380samq1733 samequantum NaN3 NaN4 -> 1 381samq1734 samequantum sNaN3 3 -> 0 382samq1735 samequantum NaN3 3 -> 0 383samq1736 samequantum 4 sNaN4 -> 0 384samq1737 samequantum 3 NaN3 -> 0 385samq1738 samequantum Inf sNaN4 -> 0 386samq1739 samequantum -Inf NaN3 -> 0 387 388 389 390