Imported Upstream version 1.0
[platform/upstream/mpc.git] / tests / norm.dat
1 # Data file for mpc_norm.
2 #
3 # Copyright (C) 2008, 2010, 2011 INRIA
4 #
5 # This file is part of GNU MPC.
6 #
7 # GNU MPC is free software; you can redistribute it and/or modify it under
8 # the terms of the GNU Lesser General Public License as published by the
9 # Free Software Foundation; either version 3 of the License, or (at your
10 #o ption) any later version.
11 #
12 # GNU MPC is distributed in the hope that it will be useful, but WITHOUT ANY
13 # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
14 # FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
15 # more details.
16 #
17 # You should have received a copy of the GNU Lesser General Public License
18 # along with this program. If not, see http://www.gnu.org/licenses/ .
19 #
20 # For explanations on the file format, see abs.dat.
21
22 # special values
23 0 7 +inf   7 -inf 7 -inf N
24 0 7 +inf   7 -inf 7   -1 N
25 0 7 +inf   7 -inf 7   -0 N
26 0 7 +inf   7 -inf 7   +0 N
27 0 7 +inf   7 -inf 7    1 N
28 0 7 +inf   7 -inf 7 +inf N
29 0 7 +inf   7 -inf 7  nan N
30 0 7 +inf   7   -1 7 -inf N
31 0 7 +inf   7   -1 7 +inf N
32 0 7  nan   7   -1 7  nan N
33 0 7 +inf   7   -0 7 -inf N
34 0 7 +inf   7   -0 7 +inf N
35 0 7  nan   7   -0 7  nan N
36 0 7 +inf   7   +0 7 -inf N
37 0 7 +inf   7   +0 7 +inf N
38 0 7  nan   7   +0 7  nan N
39 0 7 +inf   7    1 7 -inf N
40 0 7 +inf   7    1 7 +inf N
41 0 7  nan   7    1 7  nan N
42 0 7 +inf   7 +inf 7 -inf N
43 0 7 +inf   7 +inf 7   -1 N
44 0 7 +inf   7 +inf 7   -0 N
45 0 7 +inf   7 +inf 7   +0 N
46 0 7 +inf   7 +inf 7    1 N
47 0 7 +inf   7 +inf 7 +inf N
48 0 7 +inf   7 +inf 7  nan N
49 0 7 +inf   7  nan 7 -inf N
50 0 7  nan   7  nan 7   -1 N
51 0 7  nan   7  nan 7   -0 N
52 0 7  nan   7  nan 7   +0 N
53 0 7  nan   7  nan 7    1 N
54 0 7 +inf   7  nan 7 +inf N
55 0 7  nan   7  nan 7  nan N
56
57 # values with only 1, -1, +0, -0
58 0 7    2   7   -1 7   -1 N
59 0 7    1   7   -1 7   -0 N
60 0 7    1   7   -1 7   +0 N
61 0 7    2   7   -1 7    1 N
62 0 7    1   7   -0 7   -1 N
63 0 7   +0   7   -0 7   -0 N
64 0 7   +0   7   -0 7   +0 N
65 0 7    1   7   -0 7    1 N
66 0 7    1   7   +0 7   -1 N
67 0 7   +0   7   +0 7   -0 N
68 0 7   +0   7   +0 7   +0 N
69 0 7    1   7   +0 7    1 N
70 0 7    2   7    1 7   -1 N
71 0 7    1   7    1 7   -0 N
72 0 7    1   7    1 7   +0 N
73 0 7    2   7    1 7    1 N
74
75 # overflow
76 + 53 +inf  2 0x1p536870912 2 0x1p536870912 U
77
78 # infinite loop reported by E. Thome
79 - 250 +0 250 -0xf.fdda3457c3e69e5841461d505b42987feb42867a4a2d2872179c4efa20054c0@-136943039 250 -0xc.670d1beda685fdd771b6246e32ff49ec4fd70aec25367444e00933e6965d3c0@-136943040 N
80
81 # inexact values: norm (2+i)=5, in the middle between two values at precision 2
82 - 2 4  2 2 2 1 D
83 - 2 4  2 2 2 1 Z
84 + 2 6  2 2 2 1 U
85 - 2 4  2 2 2 1 N
86
87 # over- and underflows
88 + 10 inf                        10 0 10 0b1@536870912  N
89 + 10 inf                        10 0 10 0b1@536870912  U
90 - 10 0b1.111111111@1073741822   10 0 10 0b1@536870912  D
91 - 10 0b1.111111111@1073741822   10 0 10 0b1@536870912  Z
92 - 10 0                          10 0 10 0b1@-536870913 N
93 - 10 0                          10 0 10 0b1@-536870913 D
94 - 10 0                          10 0 10 0b1@-536870913 Z
95 + 10 0b1.000000000e-1073741824  10 0 10 0b1@-536870913 U
96
97 + 10 inf                        10 0b1@536870912  10 0 N
98 + 10 inf                        10 0b1@536870912  10 0 U
99 - 10 0b1.111111111@1073741822   10 0b1@536870912  10 0 D
100 - 10 0b1.111111111@1073741822   10 0b1@536870912  10 0 Z
101 - 10 0                          10 0b1@-536870913 10 0 N
102 - 10 0                          10 0b1@-536870913 10 0 D
103 - 10 0                          10 0b1@-536870913 10 0 Z
104 + 10 0b1.000000000e-1073741824  10 0b1@-536870913 10 0 U
105
106 + 10 inf                        10 1 10 0b1@536870912  N
107 + 10 inf                        10 1 10 0b1@536870912  U
108 - 10 0b1.111111111@1073741822   10 1 10 0b1@536870912  D
109 - 10 0b1.111111111@1073741822   10 1 10 0b1@536870912  Z
110 - 10 1                          10 1 10 0b1@-536870913 N
111 - 10 1                          10 1 10 0b1@-536870913 D
112 - 10 1                          10 1 10 0b1@-536870913 Z
113 + 10 0b1.000000001              10 1 10 0b1@-536870913 U
114
115 + 10 inf                        10 0b1@536870912  10 1 N
116 + 10 inf                        10 0b1@536870912  10 1 U
117 - 10 0b1.111111111@1073741822   10 0b1@536870912  10 1 D
118 - 10 0b1.111111111@1073741822   10 0b1@536870912  10 1 Z
119 - 10 1                          10 0b1@-536870913 10 1 N
120 - 10 1                          10 0b1@-536870913 10 1 D
121 - 10 1                          10 0b1@-536870913 10 1 Z
122 + 10 0b1.000000001              10 0b1@-536870913 10 1 U
123
124 + 3 inf                        10 0b1.1 10 0b1@536870912  N
125 + 3 inf                        10 0b1.1 10 0b1@536870912  U
126 - 3 0b1.11@1073741822          10 0b1.1 10 0b1@536870912  D
127 - 3 0b1.11@1073741822          10 0b1.1 10 0b1@536870912  Z
128 + 3 2.5                        10 0b1.1 10 0b1@-536870913 N
129 - 3 2                          10 0b1.1 10 0b1@-536870913 D
130 - 3 2                          10 0b1.1 10 0b1@-536870913 Z
131 + 3 0b1.01@1                   10 0b1.1 10 0b1@-536870913 U
132
133 + 3 inf                        10 0b1@536870912 10 0b1.1  N
134 + 3 inf                        10 0b1@536870912  10 0b1.1 U
135 - 3 0b1.11@1073741822          10 0b1@536870912  10 0b1.1 D
136 - 3 0b1.11@1073741822          10 0b1@536870912  10 0b1.1 Z
137 + 3 2.5                        10 0b1@-536870913 10 0b1.1 N
138 - 3 2                          10 0b1@-536870913 10 0b1.1 D
139 - 3 2                          10 0b1@-536870913 10 0b1.1 Z
140 + 3 0b1.01@1                   10 0b1@-536870913 10 0b1.1 U
141
142 + 10 inf                        10 0b1@-536870913 10 0b1@536870912  N
143 + 10 inf                        10 0b1@-536870913 10 0b1@536870912  U
144 - 10 0b1.111111111@1073741822   10 0b1@-536870913 10 0b1@536870912  D
145 - 10 0b1.111111111@1073741822   10 0b1@-536870912 10 0b1@536870912  Z
146 + 10 inf                        10 0b1@536870912 10 0b1@-536870913  N
147 + 10 inf                        10 0b1@536870912 10 0b1@-536870913  U
148 - 10 0b1.111111111@1073741822   10 0b1@536870912 10 0b1@-536870913  D
149 - 10 0b1.111111111@1073741822   10 0b1@536870912 10 0b1@-536870913  Z
150 + 10 inf                        10 0b1@536870912 10 0b1@536870912  N
151 + 10 inf                        10 0b1@536870912 10 0b1@536870912  U
152 - 10 0b1.111111111@1073741822   10 0b1@536870912 10 0b1@536870912  D
153 - 10 0b1.111111111@1073741822   10 0b1@536870912 10 0b1@536870912  Z
154 - 10 0                          10 0b1@-536870913 10 0b1@-536870913  N
155 - 10 0                          10 0b1@-536870913 10 0b1@-536870913  D
156 - 10 0                          10 0b1@-536870913 10 0b1@-536870913  Z
157 + 10 0b1@-1073741824            10 0b1@-536870913 10 0b1@-536870913  U
158
159 0 18 0b1.00100000000001001@-1073741811 2 0b1.1@-536870906 2 0b1.1@-536870913  N
160 0 18 0b1.00100000000001001@-1073741811 2 0b1.1@-536870913 2 0b1.1@-536870906  N
161 0 18 0b1.00100000000001001@-1073741811 2 0b1.1@-536870906 2 0b1.1@-536870913  Z
162 0 18 0b1.00100000000001001@-1073741811 2 0b1.1@-536870913 2 0b1.1@-536870906  Z
163 0 18 0b1.00100000000001001@-1073741811 2 0b1.1@-536870906 2 0b1.1@-536870913  D
164 0 18 0b1.00100000000001001@-1073741811 2 0b1.1@-536870913 2 0b1.1@-536870906  D
165 0 18 0b1.00100000000001001@-1073741811 2 0b1.1@-536870906 2 0b1.1@-536870913  U
166 0 18 0b1.00100000000001001@-1073741811 2 0b1.1@-536870913 2 0b1.1@-536870906  U