1 /*
2 Copyright (C) 2014 Fredrik Johansson
3
4 This file is part of Arb.
5
6 Arb is free software: you can redistribute it and/or modify it under
7 the terms of the GNU Lesser General Public License (LGPL) as published
8 by the Free Software Foundation; either version 2.1 of the License, or
9 (at your option) any later version. See <http://www.gnu.org/licenses/>.
10 */
11
12 #include "arb.h"
13
14 void
arb_set_round_fmpz_2exp(arb_t y,const fmpz_t x,const fmpz_t exp,slong prec)15 arb_set_round_fmpz_2exp(arb_t y, const fmpz_t x, const fmpz_t exp, slong prec)
16 {
17 int inexact;
18 inexact = arf_set_round_fmpz_2exp(arb_midref(y), x, exp, prec, ARB_RND);
19
20 if (inexact)
21 arf_mag_set_ulp(arb_radref(y), arb_midref(y), prec);
22 else
23 mag_zero(arb_radref(y));
24 }
25
26