Warning, /testsuites/samples/paranoia/paranoia.scn is written in an unsupported language. File is not indexed.
0001
0002
0003 *** PARANOIA TEST ***
0004 paranoia version 1.1 [cygnus]
0005 Program is now RUNNING tests on small integers:
0006 TEST: 0+0 != 0, 1-1 != 0, 1 <= 0, or 1+1 != 2
0007 PASS: 0+0 != 0, 1-1 != 0, 1 <= 0, or 1+1 != 2
0008 TEST: 3 != 2+1, 4 != 3+1, 4+2*(-2) != 0, or 4-3-1 != 0
0009 PASS: 3 != 2+1, 4 != 3+1, 4+2*(-2) != 0, or 4-3-1 != 0
0010 TEST: -1+1 != 0, (-1)+abs(1) != 0, or -1+(-1)*(-1) != 0
0011 PASS: -1+1 != 0, (-1)+abs(1) != 0, or -1+(-1)*(-1) != 0
0012 TEST: 1/2 + (-1) + 1/2 != 0
0013 PASS: 1/2 + (-1) + 1/2 != 0
0014 TEST: 9 != 3*3, 27 != 9*3, 32 != 8*4, or 32-27-4-1 != 0
0015 PASS: 9 != 3*3, 27 != 9*3, 32 != 8*4, or 32-27-4-1 != 0
0016 TEST: 5 != 4+1, 240/3 != 80, 240/4 != 60, or 240/5 != 48
0017 PASS: 5 != 4+1, 240/3 != 80, 240/4 != 60, or 240/5 != 48
0018 -1, 0, 1/2, 1, 2, 3, 4, 5, 9, 27, 32 & 240 are O.K.
0019
0020 Searching for Radix and Precision.
0021 Radix = 2.000000 .
0022 Closest relative separation found is U1 = 1.1102230e-16 .
0023
0024 Recalculating radix and precision
0025 confirms closest relative separation U1 .
0026 Radix confirmed.
0027 TEST: Radix is too big: roundoff problems
0028 PASS: Radix is too big: roundoff problems
0029 TEST: Radix is not as good as 2 or 10
0030 PASS: Radix is not as good as 2 or 10
0031 TEST: (1-U1)-1/2 < 1/2 is FALSE, prog. fails?
0032 PASS: (1-U1)-1/2 < 1/2 is FALSE, prog. fails?
0033 TEST: Comparison is fuzzy,X=1 but X-1/2-1/2 != 0
0034 PASS: Comparison is fuzzy,X=1 but X-1/2-1/2 != 0
0035 The number of significant digits of the Radix is 53.000000 .
0036 TEST: Precision worse than 5 decimal figures
0037 PASS: Precision worse than 5 decimal figures
0038 TEST: Subtraction is not normalized X=Y,X+Z != Y+Z!
0039 PASS: Subtraction is not normalized X=Y,X+Z != Y+Z!
0040 Subtraction appears to be normalized, as it should be.
0041 Checking for guard digit in *, /, and -.
0042 TEST: * gets too many final digits wrong.
0043
0044 PASS: * gets too many final digits wrong.
0045
0046 TEST: Division lacks a Guard Digit, so error can exceed 1 ulp
0047 or 1/3 and 3/9 and 9/27 may disagree
0048 PASS: Division lacks a Guard Digit, so error can exceed 1 ulp
0049 or 1/3 and 3/9 and 9/27 may disagree
0050 TEST: Computed value of 1/1.000..1 >= 1
0051 PASS: Computed value of 1/1.000..1 >= 1
0052 TEST: * and/or / gets too many last digits wrong
0053 PASS: * and/or / gets too many last digits wrong
0054 *, /, and - appear to have guard digits, as they should.
0055 Checking rounding on multiply, divide and add/subtract.
0056 TEST: X * (1/X) differs from 1
0057 PASS: X * (1/X) differs from 1
0058 * is neither chopped nor correctly rounded.
0059 / is neither chopped nor correctly rounded.
0060 TEST: Radix * ( 1 / Radix ) differs from 1
0061 PASS: Radix * ( 1 / Radix ) differs from 1
0062 TEST: Incomplete carry-propagation in Addition
0063 PASS: Incomplete carry-propagation in Addition
0064 Addition/Subtraction neither rounds nor chops.
0065 Sticky bit used incorrectly or not at all.
0066 TEST: lack(s) of guard digits or failure(s) to correctly round or chop
0067 (noted above) count as one flaw in the final tally below
0068 ERROR: Severity: FLAW: lack(s) of guard digits or failure(s) to correctly round or chop
0069 (noted above) count as one flaw in the final tally below.
0070 PASS: lack(s) of guard digits or failure(s) to correctly round or chop
0071 (noted above) count as one flaw in the final tally below
0072
0073 Does Multiplication commute? Testing on 20 random pairs.
0074 No failures found in 20 integer pairs.
0075
0076 Running test of square root(x).
0077 TEST: Square root of 0.0, -0.0 or 1.0 wrong
0078 PASS: Square root of 0.0, -0.0 or 1.0 wrong
0079 Testing if sqrt(X * X) == X for 20 Integers X.
0080 Test for sqrt monotonicity.
0081 sqrt has passed a test for Monotonicity.
0082 Testing whether sqrt is rounded or chopped.
0083 Square root is neither chopped nor correctly rounded.
0084 Observed errors run from -5.0000000e-01 to 5.0000000e-01 ulps.
0085 TEST: sqrt gets too many last digits wrong
0086 PASS: sqrt gets too many last digits wrong
0087 Testing powers Z^i for small Integers Z and i.
0088 ... no discrepancies found.
0089
0090 Seeking Underflow thresholds UfThold and E0.
0091 Smallest strictly positive number found is E0 = 4.94066e-324 .
0092 Since comparison denies Z = 0, evaluating (Z + Z) / Z should be safe.
0093 What the machine gets for (Z + Z) / Z is 2.00000000000000000e+00 .
0094 This is O.K., provided Over/Underflow has NOT just been signaled.
0095 Underflow is gradual; it incurs Absolute Error =
0096 (roundoff in UfThold) < E0.
0097 The Underflow threshold is 2.22507385850720188e-308, below which
0098 calculation may suffer larger Relative error than merely roundoff.
0099 Since underflow occurs below the threshold
0100 UfThold = (2.00000000000000000e+00) ^ (-1.02200000000000000e+03)
0101 only underflow should afflict the expression
0102 (2.00000000000000000e+00) ^ (-2.04400000000000000e+03);
0103 actually calculating yields: 0.00000000000000000e+00 .
0104 This computed value is O.K.
0105
0106 Testing X^((X + 1) / (X - 1)) vs. exp(2) = 7.38905609893065218e+00 as X -> 1.
0107 Accuracy seems adequate.
0108 Testing powers Z^Q at four nearly extreme values.
0109 ... no discrepancies found.
0110
0111 Searching for Overflow threshold:
0112 This may generate an error.
0113 Can `Z = -Y' overflow?
0114 Trying it on Y = -inf .
0115 Seems O.K.
0116 Overflow threshold is V = 1.79769313486231571e+308 .
0117 Overflow saturates at V0 = inf .
0118 No Overflow should be signaled for V * 1 = 1.79769313486231571e+308
0119 nor for V / 1 = 1.79769313486231571e+308 .
0120 Any overflow signal separating this * from the one
0121 above is a DEFECT.
0122
0123
0124 What message and/or values does Division by Zero produce?
0125 Trying to compute 1 / 0 produces ... inf .
0126
0127 Trying to compute 0 / 0 produces ... nan .
0128
0129 The number of FLAWs discovered = 1.
0130
0131 The arithmetic diagnosed seems Satisfactory though flawed.
0132 END OF TEST.
0133 *** END OF PARANOIA TEST ***