1------------------------------------------------------------------------ 2-- dqSameQuantum.decTest -- check decQuad 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 22-- All operands and results are decQuads. 23extended: 1 24clamp: 1 25precision: 34 26maxExponent: 6144 27minExponent: -6143 28rounding: half_even 29 30dqsamq001 samequantum 0 0 -> 1 31dqsamq002 samequantum 0 1 -> 1 32dqsamq003 samequantum 1 0 -> 1 33dqsamq004 samequantum 1 1 -> 1 34 35dqsamq011 samequantum 10 1E+1 -> 0 36dqsamq012 samequantum 10E+1 10E+1 -> 1 37dqsamq013 samequantum 100 10E+1 -> 0 38dqsamq014 samequantum 100 1E+2 -> 0 39dqsamq015 samequantum 0.1 1E-2 -> 0 40dqsamq016 samequantum 0.1 1E-1 -> 1 41dqsamq017 samequantum 0.1 1E-0 -> 0 42dqsamq018 samequantum 999 999 -> 1 43dqsamq019 samequantum 999E-1 99.9 -> 1 44dqsamq020 samequantum 111E-1 22.2 -> 1 45dqsamq021 samequantum 111E-1 1234.2 -> 1 46 47-- zeros 48dqsamq030 samequantum 0.0 1.1 -> 1 49dqsamq031 samequantum 0.0 1.11 -> 0 50dqsamq032 samequantum 0.0 0 -> 0 51dqsamq033 samequantum 0.0 0.0 -> 1 52dqsamq034 samequantum 0.0 0.00 -> 0 53dqsamq035 samequantum 0E+1 0E+0 -> 0 54dqsamq036 samequantum 0E+1 0E+1 -> 1 55dqsamq037 samequantum 0E+1 0E+2 -> 0 56dqsamq038 samequantum 0E-17 0E-16 -> 0 57dqsamq039 samequantum 0E-17 0E-17 -> 1 58dqsamq040 samequantum 0E-17 0E-18 -> 0 59dqsamq041 samequantum 0E-17 0.0E-15 -> 0 60dqsamq042 samequantum 0E-17 0.0E-16 -> 1 61dqsamq043 samequantum 0E-17 0.0E-17 -> 0 62dqsamq044 samequantum -0E-17 0.0E-16 -> 1 63dqsamq045 samequantum 0E-17 -0.0E-17 -> 0 64dqsamq046 samequantum 0E-17 -0.0E-16 -> 1 65dqsamq047 samequantum -0E-17 0.0E-17 -> 0 66dqsamq048 samequantum -0E-17 -0.0E-16 -> 1 67dqsamq049 samequantum -0E-17 -0.0E-17 -> 0 68 69-- Nmax, Nmin, Ntiny 70dqsamq051 samequantum 9.99999999999999999999999999999999E+6144 9.99999999999999999999999999999999E+6144 -> 1 71dqsamq052 samequantum 1E-6143 1E-6143 -> 1 72dqsamq053 samequantum 1.00000000000000000000000000000000E-6143 1.00000000000000000000000000000000E-6143 -> 1 73dqsamq054 samequantum 1E-6176 1E-6176 -> 1 74dqsamq055 samequantum 9.99999999999999999999999999999999E+6144 9.99999999999999999999999999999999E+6144 -> 1 75dqsamq056 samequantum 1E-6143 1E-6143 -> 1 76dqsamq057 samequantum 1.00000000000000000000000000000000E-6143 1.00000000000000000000000000000000E-6143 -> 1 77dqsamq058 samequantum 1E-6176 1E-6176 -> 1 78 79dqsamq061 samequantum -1E-6176 -1E-6176 -> 1 80dqsamq062 samequantum -1.00000000000000000000000000000000E-6143 -1.00000000000000000000000000000000E-6143 -> 1 81dqsamq063 samequantum -1E-6143 -1E-6143 -> 1 82dqsamq064 samequantum -9.99999999999999999999999999999999E+6144 -9.99999999999999999999999999999999E+6144 -> 1 83dqsamq065 samequantum -1E-6176 -1E-6176 -> 1 84dqsamq066 samequantum -1.00000000000000000000000000000000E-6143 -1.00000000000000000000000000000000E-6143 -> 1 85dqsamq067 samequantum -1E-6143 -1E-6143 -> 1 86dqsamq068 samequantum -9.99999999999999999999999999999999E+6144 -9.99999999999999999999999999999999E+6144 -> 1 87 88dqsamq071 samequantum -4E-6176 -1E-6176 -> 1 89dqsamq072 samequantum -4.00000000000000000000000000000000E-6143 -1.00000000000000000000000000004000E-6143 -> 1 90dqsamq073 samequantum -4E-6143 -1E-6143 -> 1 91dqsamq074 samequantum -4.99999999999999999999999999999999E+6144 -9.99949999999999999999999999999999E+6144 -> 1 92dqsamq075 samequantum -4E-6176 -1E-6176 -> 1 93dqsamq076 samequantum -4.00000000000000000000000000000000E-6143 -1.00400000000000000000000000000000E-6143 -> 1 94dqsamq077 samequantum -4E-6143 -1E-6143 -> 1 95dqsamq078 samequantum -4.99999999999999999999999999999999E+6144 -9.94999999999999999999999999999999E+6144 -> 1 96 97dqsamq081 samequantum -4E-1006 -1E-6176 -> 0 98dqsamq082 samequantum -4.00000000000000000000000000000000E-6143 -1.00004000000000000000000000000000E-6136 -> 0 99dqsamq083 samequantum -4E-6140 -1E-6143 -> 0 100dqsamq084 samequantum -4.99999999999999999999999999999999E+6144 -9.99949999999999999999999999999999E+6136 -> 0 101dqsamq085 samequantum -4E-1006 -1E-6176 -> 0 102dqsamq086 samequantum -4.00000000000000000000000000000000E-6143 -1.00400000000000000000000000000000E-6136 -> 0 103dqsamq087 samequantum -4E-6133 -1E-6143 -> 0 104dqsamq088 samequantum -4.99999999999999999999999999999999E+6144 -9.94999999999999999999999999999999E+6136 -> 0 105 106-- specials & combinations 107dqsamq0110 samequantum -Inf -Inf -> 1 108dqsamq0111 samequantum -Inf Inf -> 1 109dqsamq0112 samequantum -Inf NaN -> 0 110dqsamq0113 samequantum -Inf -7E+3 -> 0 111dqsamq0114 samequantum -Inf -7 -> 0 112dqsamq0115 samequantum -Inf -7E-3 -> 0 113dqsamq0116 samequantum -Inf -0E-3 -> 0 114dqsamq0117 samequantum -Inf -0 -> 0 115dqsamq0118 samequantum -Inf -0E+3 -> 0 116dqsamq0119 samequantum -Inf 0E-3 -> 0 117dqsamq0120 samequantum -Inf 0 -> 0 118dqsamq0121 samequantum -Inf 0E+3 -> 0 119dqsamq0122 samequantum -Inf 7E-3 -> 0 120dqsamq0123 samequantum -Inf 7 -> 0 121dqsamq0124 samequantum -Inf 7E+3 -> 0 122dqsamq0125 samequantum -Inf sNaN -> 0 123 124dqsamq0210 samequantum Inf -Inf -> 1 125dqsamq0211 samequantum Inf Inf -> 1 126dqsamq0212 samequantum Inf NaN -> 0 127dqsamq0213 samequantum Inf -7E+3 -> 0 128dqsamq0214 samequantum Inf -7 -> 0 129dqsamq0215 samequantum Inf -7E-3 -> 0 130dqsamq0216 samequantum Inf -0E-3 -> 0 131dqsamq0217 samequantum Inf -0 -> 0 132dqsamq0218 samequantum Inf -0E+3 -> 0 133dqsamq0219 samequantum Inf 0E-3 -> 0 134dqsamq0220 samequantum Inf 0 -> 0 135dqsamq0221 samequantum Inf 0E+3 -> 0 136dqsamq0222 samequantum Inf 7E-3 -> 0 137dqsamq0223 samequantum Inf 7 -> 0 138dqsamq0224 samequantum Inf 7E+3 -> 0 139dqsamq0225 samequantum Inf sNaN -> 0 140 141dqsamq0310 samequantum NaN -Inf -> 0 142dqsamq0311 samequantum NaN Inf -> 0 143dqsamq0312 samequantum NaN NaN -> 1 144dqsamq0313 samequantum NaN -7E+3 -> 0 145dqsamq0314 samequantum NaN -7 -> 0 146dqsamq0315 samequantum NaN -7E-3 -> 0 147dqsamq0316 samequantum NaN -0E-3 -> 0 148dqsamq0317 samequantum NaN -0 -> 0 149dqsamq0318 samequantum NaN -0E+3 -> 0 150dqsamq0319 samequantum NaN 0E-3 -> 0 151dqsamq0320 samequantum NaN 0 -> 0 152dqsamq0321 samequantum NaN 0E+3 -> 0 153dqsamq0322 samequantum NaN 7E-3 -> 0 154dqsamq0323 samequantum NaN 7 -> 0 155dqsamq0324 samequantum NaN 7E+3 -> 0 156dqsamq0325 samequantum NaN sNaN -> 1 157 158dqsamq0410 samequantum -7E+3 -Inf -> 0 159dqsamq0411 samequantum -7E+3 Inf -> 0 160dqsamq0412 samequantum -7E+3 NaN -> 0 161dqsamq0413 samequantum -7E+3 -7E+3 -> 1 162dqsamq0414 samequantum -7E+3 -7 -> 0 163dqsamq0415 samequantum -7E+3 -7E-3 -> 0 164dqsamq0416 samequantum -7E+3 -0E-3 -> 0 165dqsamq0417 samequantum -7E+3 -0 -> 0 166dqsamq0418 samequantum -7E+3 -0E+3 -> 1 167dqsamq0419 samequantum -7E+3 0E-3 -> 0 168dqsamq0420 samequantum -7E+3 0 -> 0 169dqsamq0421 samequantum -7E+3 0E+3 -> 1 170dqsamq0422 samequantum -7E+3 7E-3 -> 0 171dqsamq0423 samequantum -7E+3 7 -> 0 172dqsamq0424 samequantum -7E+3 7E+3 -> 1 173dqsamq0425 samequantum -7E+3 sNaN -> 0 174 175dqsamq0510 samequantum -7 -Inf -> 0 176dqsamq0511 samequantum -7 Inf -> 0 177dqsamq0512 samequantum -7 NaN -> 0 178dqsamq0513 samequantum -7 -7E+3 -> 0 179dqsamq0514 samequantum -7 -7 -> 1 180dqsamq0515 samequantum -7 -7E-3 -> 0 181dqsamq0516 samequantum -7 -0E-3 -> 0 182dqsamq0517 samequantum -7 -0 -> 1 183dqsamq0518 samequantum -7 -0E+3 -> 0 184dqsamq0519 samequantum -7 0E-3 -> 0 185dqsamq0520 samequantum -7 0 -> 1 186dqsamq0521 samequantum -7 0E+3 -> 0 187dqsamq0522 samequantum -7 7E-3 -> 0 188dqsamq0523 samequantum -7 7 -> 1 189dqsamq0524 samequantum -7 7E+3 -> 0 190dqsamq0525 samequantum -7 sNaN -> 0 191 192dqsamq0610 samequantum -7E-3 -Inf -> 0 193dqsamq0611 samequantum -7E-3 Inf -> 0 194dqsamq0612 samequantum -7E-3 NaN -> 0 195dqsamq0613 samequantum -7E-3 -7E+3 -> 0 196dqsamq0614 samequantum -7E-3 -7 -> 0 197dqsamq0615 samequantum -7E-3 -7E-3 -> 1 198dqsamq0616 samequantum -7E-3 -0E-3 -> 1 199dqsamq0617 samequantum -7E-3 -0 -> 0 200dqsamq0618 samequantum -7E-3 -0E+3 -> 0 201dqsamq0619 samequantum -7E-3 0E-3 -> 1 202dqsamq0620 samequantum -7E-3 0 -> 0 203dqsamq0621 samequantum -7E-3 0E+3 -> 0 204dqsamq0622 samequantum -7E-3 7E-3 -> 1 205dqsamq0623 samequantum -7E-3 7 -> 0 206dqsamq0624 samequantum -7E-3 7E+3 -> 0 207dqsamq0625 samequantum -7E-3 sNaN -> 0 208 209dqsamq0710 samequantum -0E-3 -Inf -> 0 210dqsamq0711 samequantum -0E-3 Inf -> 0 211dqsamq0712 samequantum -0E-3 NaN -> 0 212dqsamq0713 samequantum -0E-3 -7E+3 -> 0 213dqsamq0714 samequantum -0E-3 -7 -> 0 214dqsamq0715 samequantum -0E-3 -7E-3 -> 1 215dqsamq0716 samequantum -0E-3 -0E-3 -> 1 216dqsamq0717 samequantum -0E-3 -0 -> 0 217dqsamq0718 samequantum -0E-3 -0E+3 -> 0 218dqsamq0719 samequantum -0E-3 0E-3 -> 1 219dqsamq0720 samequantum -0E-3 0 -> 0 220dqsamq0721 samequantum -0E-3 0E+3 -> 0 221dqsamq0722 samequantum -0E-3 7E-3 -> 1 222dqsamq0723 samequantum -0E-3 7 -> 0 223dqsamq0724 samequantum -0E-3 7E+3 -> 0 224dqsamq0725 samequantum -0E-3 sNaN -> 0 225 226dqsamq0810 samequantum -0 -Inf -> 0 227dqsamq0811 samequantum -0 Inf -> 0 228dqsamq0812 samequantum -0 NaN -> 0 229dqsamq0813 samequantum -0 -7E+3 -> 0 230dqsamq0814 samequantum -0 -7 -> 1 231dqsamq0815 samequantum -0 -7E-3 -> 0 232dqsamq0816 samequantum -0 -0E-3 -> 0 233dqsamq0817 samequantum -0 -0 -> 1 234dqsamq0818 samequantum -0 -0E+3 -> 0 235dqsamq0819 samequantum -0 0E-3 -> 0 236dqsamq0820 samequantum -0 0 -> 1 237dqsamq0821 samequantum -0 0E+3 -> 0 238dqsamq0822 samequantum -0 7E-3 -> 0 239dqsamq0823 samequantum -0 7 -> 1 240dqsamq0824 samequantum -0 7E+3 -> 0 241dqsamq0825 samequantum -0 sNaN -> 0 242 243dqsamq0910 samequantum -0E+3 -Inf -> 0 244dqsamq0911 samequantum -0E+3 Inf -> 0 245dqsamq0912 samequantum -0E+3 NaN -> 0 246dqsamq0913 samequantum -0E+3 -7E+3 -> 1 247dqsamq0914 samequantum -0E+3 -7 -> 0 248dqsamq0915 samequantum -0E+3 -7E-3 -> 0 249dqsamq0916 samequantum -0E+3 -0E-3 -> 0 250dqsamq0917 samequantum -0E+3 -0 -> 0 251dqsamq0918 samequantum -0E+3 -0E+3 -> 1 252dqsamq0919 samequantum -0E+3 0E-3 -> 0 253dqsamq0920 samequantum -0E+3 0 -> 0 254dqsamq0921 samequantum -0E+3 0E+3 -> 1 255dqsamq0922 samequantum -0E+3 7E-3 -> 0 256dqsamq0923 samequantum -0E+3 7 -> 0 257dqsamq0924 samequantum -0E+3 7E+3 -> 1 258dqsamq0925 samequantum -0E+3 sNaN -> 0 259 260dqsamq1110 samequantum 0E-3 -Inf -> 0 261dqsamq1111 samequantum 0E-3 Inf -> 0 262dqsamq1112 samequantum 0E-3 NaN -> 0 263dqsamq1113 samequantum 0E-3 -7E+3 -> 0 264dqsamq1114 samequantum 0E-3 -7 -> 0 265dqsamq1115 samequantum 0E-3 -7E-3 -> 1 266dqsamq1116 samequantum 0E-3 -0E-3 -> 1 267dqsamq1117 samequantum 0E-3 -0 -> 0 268dqsamq1118 samequantum 0E-3 -0E+3 -> 0 269dqsamq1119 samequantum 0E-3 0E-3 -> 1 270dqsamq1120 samequantum 0E-3 0 -> 0 271dqsamq1121 samequantum 0E-3 0E+3 -> 0 272dqsamq1122 samequantum 0E-3 7E-3 -> 1 273dqsamq1123 samequantum 0E-3 7 -> 0 274dqsamq1124 samequantum 0E-3 7E+3 -> 0 275dqsamq1125 samequantum 0E-3 sNaN -> 0 276 277dqsamq1210 samequantum 0 -Inf -> 0 278dqsamq1211 samequantum 0 Inf -> 0 279dqsamq1212 samequantum 0 NaN -> 0 280dqsamq1213 samequantum 0 -7E+3 -> 0 281dqsamq1214 samequantum 0 -7 -> 1 282dqsamq1215 samequantum 0 -7E-3 -> 0 283dqsamq1216 samequantum 0 -0E-3 -> 0 284dqsamq1217 samequantum 0 -0 -> 1 285dqsamq1218 samequantum 0 -0E+3 -> 0 286dqsamq1219 samequantum 0 0E-3 -> 0 287dqsamq1220 samequantum 0 0 -> 1 288dqsamq1221 samequantum 0 0E+3 -> 0 289dqsamq1222 samequantum 0 7E-3 -> 0 290dqsamq1223 samequantum 0 7 -> 1 291dqsamq1224 samequantum 0 7E+3 -> 0 292dqsamq1225 samequantum 0 sNaN -> 0 293 294dqsamq1310 samequantum 0E+3 -Inf -> 0 295dqsamq1311 samequantum 0E+3 Inf -> 0 296dqsamq1312 samequantum 0E+3 NaN -> 0 297dqsamq1313 samequantum 0E+3 -7E+3 -> 1 298dqsamq1314 samequantum 0E+3 -7 -> 0 299dqsamq1315 samequantum 0E+3 -7E-3 -> 0 300dqsamq1316 samequantum 0E+3 -0E-3 -> 0 301dqsamq1317 samequantum 0E+3 -0 -> 0 302dqsamq1318 samequantum 0E+3 -0E+3 -> 1 303dqsamq1319 samequantum 0E+3 0E-3 -> 0 304dqsamq1320 samequantum 0E+3 0 -> 0 305dqsamq1321 samequantum 0E+3 0E+3 -> 1 306dqsamq1322 samequantum 0E+3 7E-3 -> 0 307dqsamq1323 samequantum 0E+3 7 -> 0 308dqsamq1324 samequantum 0E+3 7E+3 -> 1 309dqsamq1325 samequantum 0E+3 sNaN -> 0 310 311dqsamq1410 samequantum 7E-3 -Inf -> 0 312dqsamq1411 samequantum 7E-3 Inf -> 0 313dqsamq1412 samequantum 7E-3 NaN -> 0 314dqsamq1413 samequantum 7E-3 -7E+3 -> 0 315dqsamq1414 samequantum 7E-3 -7 -> 0 316dqsamq1415 samequantum 7E-3 -7E-3 -> 1 317dqsamq1416 samequantum 7E-3 -0E-3 -> 1 318dqsamq1417 samequantum 7E-3 -0 -> 0 319dqsamq1418 samequantum 7E-3 -0E+3 -> 0 320dqsamq1419 samequantum 7E-3 0E-3 -> 1 321dqsamq1420 samequantum 7E-3 0 -> 0 322dqsamq1421 samequantum 7E-3 0E+3 -> 0 323dqsamq1422 samequantum 7E-3 7E-3 -> 1 324dqsamq1423 samequantum 7E-3 7 -> 0 325dqsamq1424 samequantum 7E-3 7E+3 -> 0 326dqsamq1425 samequantum 7E-3 sNaN -> 0 327 328dqsamq1510 samequantum 7 -Inf -> 0 329dqsamq1511 samequantum 7 Inf -> 0 330dqsamq1512 samequantum 7 NaN -> 0 331dqsamq1513 samequantum 7 -7E+3 -> 0 332dqsamq1514 samequantum 7 -7 -> 1 333dqsamq1515 samequantum 7 -7E-3 -> 0 334dqsamq1516 samequantum 7 -0E-3 -> 0 335dqsamq1517 samequantum 7 -0 -> 1 336dqsamq1518 samequantum 7 -0E+3 -> 0 337dqsamq1519 samequantum 7 0E-3 -> 0 338dqsamq1520 samequantum 7 0 -> 1 339dqsamq1521 samequantum 7 0E+3 -> 0 340dqsamq1522 samequantum 7 7E-3 -> 0 341dqsamq1523 samequantum 7 7 -> 1 342dqsamq1524 samequantum 7 7E+3 -> 0 343dqsamq1525 samequantum 7 sNaN -> 0 344 345dqsamq1610 samequantum 7E+3 -Inf -> 0 346dqsamq1611 samequantum 7E+3 Inf -> 0 347dqsamq1612 samequantum 7E+3 NaN -> 0 348dqsamq1613 samequantum 7E+3 -7E+3 -> 1 349dqsamq1614 samequantum 7E+3 -7 -> 0 350dqsamq1615 samequantum 7E+3 -7E-3 -> 0 351dqsamq1616 samequantum 7E+3 -0E-3 -> 0 352dqsamq1617 samequantum 7E+3 -0 -> 0 353dqsamq1618 samequantum 7E+3 -0E+3 -> 1 354dqsamq1619 samequantum 7E+3 0E-3 -> 0 355dqsamq1620 samequantum 7E+3 0 -> 0 356dqsamq1621 samequantum 7E+3 0E+3 -> 1 357dqsamq1622 samequantum 7E+3 7E-3 -> 0 358dqsamq1623 samequantum 7E+3 7 -> 0 359dqsamq1624 samequantum 7E+3 7E+3 -> 1 360dqsamq1625 samequantum 7E+3 sNaN -> 0 361 362dqsamq1710 samequantum sNaN -Inf -> 0 363dqsamq1711 samequantum sNaN Inf -> 0 364dqsamq1712 samequantum sNaN NaN -> 1 365dqsamq1713 samequantum sNaN -7E+3 -> 0 366dqsamq1714 samequantum sNaN -7 -> 0 367dqsamq1715 samequantum sNaN -7E-3 -> 0 368dqsamq1716 samequantum sNaN -0E-3 -> 0 369dqsamq1717 samequantum sNaN -0 -> 0 370dqsamq1718 samequantum sNaN -0E+3 -> 0 371dqsamq1719 samequantum sNaN 0E-3 -> 0 372dqsamq1720 samequantum sNaN 0 -> 0 373dqsamq1721 samequantum sNaN 0E+3 -> 0 374dqsamq1722 samequantum sNaN 7E-3 -> 0 375dqsamq1723 samequantum sNaN 7 -> 0 376dqsamq1724 samequantum sNaN 7E+3 -> 0 377dqsamq1725 samequantum sNaN sNaN -> 1 378-- noisy NaNs 379dqsamq1730 samequantum sNaN3 sNaN3 -> 1 380dqsamq1731 samequantum sNaN3 sNaN4 -> 1 381dqsamq1732 samequantum NaN3 NaN3 -> 1 382dqsamq1733 samequantum NaN3 NaN4 -> 1 383dqsamq1734 samequantum sNaN3 3 -> 0 384dqsamq1735 samequantum NaN3 3 -> 0 385dqsamq1736 samequantum 4 sNaN4 -> 0 386dqsamq1737 samequantum 3 NaN3 -> 0 387dqsamq1738 samequantum Inf sNaN4 -> 0 388dqsamq1739 samequantum -Inf NaN3 -> 0 389 390