!b]])      !"#$%&'(SafeGSX\9 fixedprec$The type of fixed-precision numbers. fixedprec'Add 1000 digits to the given precision. fixedprec&Add 100 digits to the given precision. fixedprec%Add 10 digits to the given precision. fixedprec$Add 3 digits to the given precision. fixedprec#Add 1 digit to the given precision. fixedprecPrecision of 2000 digits. fixedprecPrecision of 1000 digits. fixedprecPrecision of 100 digits.  fixedprecPrecision of 10 digits.  fixedprecPrecision of 1 digit.  fixedprecPrecision of 0 digits.  fixedprecpA type class for type-level integers, capturing a precision parameter. Precision is measured in decimal digits.) fixedprec%Get the precision, in decimal digits.* fixedprecInteger division with rounding to the closest. Note: rounding could be improved. Right now, we always round up in case of a tie.+ fixedprecUShift the integer to the right by the given number of decimal digits, with rounding., fixedprechShift the integer to the right by the given number of decimal digits, without rounding (i.e., truncate)- fixedprecEShift the integer to the left by the given number of decimal digits.. fixedprecCReturn 1 + the position of the leftmost "1" bit of a non-negative /. Do this in time O(n log n ), where n) is the size of the integer (in digits).0 fixedprecFor n- "e 0, return the floor of the square root of nJ. This is done using integer arithmetic, so there are no rounding errors.1 fixedpreceFind the ceiling of the larger solution of a quadratic equation. Specifically, given the polynomial p(x) = x + bx + c, where b and c* are integers, find the smallest integer x "e -b/2 satisfying p(x ) "e 0, if b^2 - 4c "e 0.XThis is done using integer arithmetic, so there are no rounding errors. It generalizes 0.2 fixedprecGiven positive b > 1 and x > 0, return (n, r ) such thatx = r b[sup n ] and 1 "d r < b#. In other words, let n = # log[sub b] x# and r = x b[sup "n#]. This can be more efficient than 3 (4 b xJ) depending on the type; moreover, it also works for exact types such as 5 and QRootTwo.  fixedprec2A version of the natural logarithm that returns a 68. The logarithm of just about any value can fit into a 6a; so if not a lot of precision is required in the mantissa, this function is often faster than 7. fixedprecAGet the precision of a fixed-precision number, in decimal digits. fixedprecCast from any  type to another. fixedprecDCast to a fixed-point type with three additional digits of accuracy. fixedprec?Cast to a fixed-point type with three fewer digits of accuracy. fixedprec The function  d f x evaluates f(x ), adding d digits of accuracy to x during the computation.8 fixedprecMultiply an integer by a fixed-precision number. This is marginally more efficient than multiplying two fixed-precision numbers.9 fixedprec|Divide a fixed-precision number by an integer. This is marginally more efficient than dividing two fixed-precision numbers. fixedprecReturn the positive fractional part of a fixed-precision number. The result is always in [0,1), regardless of the sign of the input. fixedprecSolve the quadratic equation x^2 + bx + c\ = 0 with maximal possible precision, using a numerically stable method. Return the pair (x1, x2) of solutions with x1 <= x2, or : if no solution exists.aThis is far more precise, and probably more efficient, than naively using the quadratic formula.; fixedprecgDefine a list of rational numbers (i.e., the coefficients of a power series) from a recursive formula.< fixedprecThe power series stops when the last term is smaller than the precision. This is accurate for alternating and decreasing series, and provided |x| "d 1.= fixedprecThe Taylor series for sin x1, centered at 0. This implementation works for |x| "d 1.> fixedprecThe Taylor series for cos x1, centered at 0. This implementation works for |x| "d 1.? fixedprecThe Taylor series for [exp x2], centered at 0. This implementation works for |x| "d 1.@ fixedprecThe Taylor series for log x1, centered at 1. This implementation works for |x " 1| "d 1/4.A fixedprecThe Taylor series for atan x1, centered at 0. This implementation works for |x | "d 0.44.B fixedprecThe Taylor series for atan x1, centered at 0. This implementation works for |x-| "d 0.2, and is faster, in that range, than A.C fixedprecThe Taylor series for atan x1, centered at 0. This implementation works for |x/| "d 1/239, and is faster, in that range, than B.D fixedprec(Raw implementation of the sine function.E fixedprec*Raw implementation of the cosine function.F fixedprecRaw implementation of the exponential function. Note: the loss of precision is much more substantial than that of the other raw functions in this section. This is due to the multiplication of fixed-precision values by numbers much larger than 1.G fixedprec,Raw implementation of the natural logarithm.H fixedprec_Raw implementation of the power function. This is subject to similar loss of precision as the F function.I fixedprecRaw implementation of the 4@ function. This is subject to similar loss of precision as the F function.J fixedprec&Raw implementation of the square root.K fixedprec*Raw implementation of the inverse tangent.L fixedprecRaw implementation of .M fixedprec0Raw implementation of the inverse sine function.N fixedprec2Raw implementation of the inverse cosine function.O fixedprec*Raw implementation of the hyperbolic sine.P fixedprec,Raw implementation of the hyperbolic cosine.Q fixedprec5Raw implementation of the inverse hyperbolic tangent.R fixedprec2Raw implementation of the inverse hyperbolic sine.S fixedprec4Raw implementation of the inverse hyperbolic cosine.   *78797T      !"#$%&'()*+,-./01234567897:;78<=>?7:@AB7CDEFGHIJKLMNOPQRSTUVWXYZ[\]^(fixedprec-0.2.2.2-2m5IcFuvSV49Kq8slHd9NcData.Number.FixedPrec FixedPrec PPlus1000PPlus100PPlus10PPlus3PPlus1P2000P1000P100P10P1P0 Precision log_doublegetpreccastupcastdowncastwith_added_digits fractionalsolve_quadratic $fPrecisionP0 $fPrecisionP1$fPrecisionP10$fPrecisionP100$fPrecisionP1000$fPrecisionP2000$fPrecisionPPlus1$fPrecisionPPlus3$fPrecisionPPlus10$fPrecisionPPlus100$fPrecisionPPlus1000$fRandomFixedPrec$fFloatingFixedPrec$fRealFracFixedPrec$fRealFixedPrec$fFractionalFixedPrec$fNumFixedPrec$fShowFixedPrec $fEqFixedPrec$fOrdFixedPrecdigitsdivi decshiftR dectruncR decshiftLhibit integer-gmpGHC.Integer.TypeIntegerintsqrtintquadfloorlogbaseGHC.Realfloor GHC.FloatlogBaseRationalghc-prim GHC.TypesDoublelog..*/.. GHC.MaybeNothingaccs powerseriessin_pcos_pexp_plog_patan_patan_p2atan_p3sin_rawcos_rawexp_rawlog_raw power_raw logBase_rawsqrt_rawatan_rawpi_rawasin_rawacos_rawsinh_rawcosh_raw atanh_raw asinh_raw acosh_raw