1*5273c5e4Smrg# Data file for mpc_rootofunity.
2*5273c5e4Smrg#
3*5273c5e4Smrg# Copyright (C) 2008, 2010, 2016 INRIA
4*5273c5e4Smrg#
5*5273c5e4Smrg# This file is part of GNU MPC.
6*5273c5e4Smrg#
7*5273c5e4Smrg# GNU MPC is free software; you can redistribute it and/or modify it under
8*5273c5e4Smrg# the terms of the GNU Lesser General Public License as published by the
9*5273c5e4Smrg# Free Software Foundation; either version 3 of the License, or (at your
10*5273c5e4Smrg#o ption) any later version.
11*5273c5e4Smrg#
12*5273c5e4Smrg# GNU MPC is distributed in the hope that it will be useful, but WITHOUT ANY
13*5273c5e4Smrg# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
14*5273c5e4Smrg# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
15*5273c5e4Smrg# more details.
16*5273c5e4Smrg#
17*5273c5e4Smrg# You should have received a copy of the GNU Lesser General Public License
18*5273c5e4Smrg# along with this program. If not, see http://www.gnu.org/licenses/ .
19*5273c5e4Smrg#
20*5273c5e4Smrg# The line format respects the parameter order in function prototype as
21*5273c5e4Smrg# follow:
22*5273c5e4Smrg#
23*5273c5e4Smrg# INEX_RE  INEX_IM  PREC_ROP_RE  ROP_RE  PREC_ROP_IM  ROP_IM  OP1 OP2  RND_RE  RND_IM
24*5273c5e4Smrg
25*5273c5e4Smrg# special values
26*5273c5e4Smrg0 0 53 nan 53 nan  0 0 N N
27*5273c5e4Smrg0 0 53 nan 53 nan  0 1 N N
28*5273c5e4Smrg
29*5273c5e4Smrg# roots of unity of small order, some of them with exact results
30*5273c5e4Smrg0 0 53 1   53 0   1 1 Z U
31*5273c5e4Smrg0 0 53 -1  53 0   2 1 N N
32*5273c5e4Smrg0 0 53 0   53 1   4 1 U Z
33*5273c5e4Smrg0 0 53 -1  53 0   4 2 U Z
34*5273c5e4Smrg0 0 53 0   53 -1  4 3 U Z
35*5273c5e4Smrg0 0 53 1   53 0   4 4 U Z
36*5273c5e4Smrg0 - 53 -0.5 53  0b1.1011101101100111101011101000010110000100110010101010e-1  3 1 N D
37*5273c5e4Smrg0 + 53 -0.5 53  0b1.1011101101100111101011101000010110000100110010101011e-1  3 1 N U
38*5273c5e4Smrg0 - 53 -0.5 53 -0b1.1011101101100111101011101000010110000100110010101011e-1  3 2 N D
39*5273c5e4Smrg0 + 53 -0.5 53 -0b1.1011101101100111101011101000010110000100110010101010e-1  3 2 N U
40*5273c5e4Smrg0 - 53  0.5 53  0b1.1011101101100111101011101000010110000100110010101010e-1  6 1 D Z
41*5273c5e4Smrg0 - 53  0.5 53 -0b1.1011101101100111101011101000010110000100110010101011e-1  6 5 D D
42*5273c5e4Smrg0 + 53  0.5 53 -0b1.1011101101100111101011101000010110000100110010101010e-1  6 5 D U
43*5273c5e4Smrg- 0 53  0b1.1011101101100111101011101000010110000100110010101010e-1 53  0.5  12  1 N Z
44*5273c5e4Smrg- 0 53  0b1.1011101101100111101011101000010110000100110010101010e-1 53  0.5  12  1 D Z
45*5273c5e4Smrg+ 0 53  0b1.1011101101100111101011101000010110000100110010101011e-1 53  0.5  12  1 U Z
46*5273c5e4Smrg- 0 53 -0b1.1011101101100111101011101000010110000100110010101011e-1 53  0.5  12  5 D Z
47*5273c5e4Smrg+ 0 53 -0b1.1011101101100111101011101000010110000100110010101010e-1 53  0.5  12  5 U Z
48*5273c5e4Smrg- 0 53 -0b1.1011101101100111101011101000010110000100110010101011e-1 53 -0.5  12  7 D Z
49*5273c5e4Smrg+ 0 53 -0b1.1011101101100111101011101000010110000100110010101010e-1 53 -0.5  12  7 U Z
50*5273c5e4Smrg- 0 53  0b1.1011101101100111101011101000010110000100110010101010e-1 53 -0.5  12 11 D Z
51*5273c5e4Smrg+ 0 53  0b1.1011101101100111101011101000010110000100110010101011e-1 53 -0.5  12 11 U Z
52*5273c5e4Smrg+ + 53  0b1.0110101000001001111001100110011111110011101111001101e-1 53  0b1.0110101000001001111001100110011111110011101111001101e-1  8 1 N N
53*5273c5e4Smrg+ - 53  0b1.0110101000001001111001100110011111110011101111001101e-1 53  0b1.0110101000001001111001100110011111110011101111001100e-1  8 1 U D
54*5273c5e4Smrg- + 53  0b1.0110101000001001111001100110011111110011101111001100e-1 53  0b1.0110101000001001111001100110011111110011101111001101e-1  8 1 D U
55*5273c5e4Smrg+ - 53 -0b1.0110101000001001111001100110011111110011101111001100e-1 53  0b1.0110101000001001111001100110011111110011101111001100e-1  8 3 U D
56*5273c5e4Smrg- + 53 -0b1.0110101000001001111001100110011111110011101111001101e-1 53  0b1.0110101000001001111001100110011111110011101111001101e-1  8 3 D U
57*5273c5e4Smrg+ - 53 -0b1.0110101000001001111001100110011111110011101111001100e-1 53 -0b1.0110101000001001111001100110011111110011101111001101e-1  8 5 U D
58*5273c5e4Smrg- + 53 -0b1.0110101000001001111001100110011111110011101111001101e-1 53 -0b1.0110101000001001111001100110011111110011101111001100e-1  8 5 D U
59*5273c5e4Smrg+ - 53  0b1.0110101000001001111001100110011111110011101111001101e-1 53 -0b1.0110101000001001111001100110011111110011101111001101e-1  8 7 U D
60*5273c5e4Smrg- + 53  0b1.0110101000001001111001100110011111110011101111001100e-1 53 -0b1.0110101000001001111001100110011111110011101111001100e-1  8 7 D U
61*5273c5e4Smrg
62*5273c5e4Smrg# example with large n=2^32-1 and small real or imaginary part
63*5273c5e4Smrg+ + 53 1 53 0b1.1001001000011111101101010100010111010100111100010100e-30  4294967295 1 N N
64*5273c5e4Smrg- + 53 -0b1.1001001000011111101101010100010111010100111100010100e-32 53 1  4294967295 1073741824 N N
65*5273c5e4Smrg
66