Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Synopsis
- data Mag = Mag !(ForeignPtr CMag)
- data CMag = CMag CFmpz CMpLimb
- data Arf = Arf !(ForeignPtr CArf)
- data CArf = CFlint CArf
- newtype ArfRnd = ArfRnd {}
- arf_rnd_up :: ArfRnd
- arf_rnd_down :: ArfRnd
- arf_rnd_floor :: ArfRnd
- arf_rnd_ceil :: ArfRnd
- arf_rnd_near :: ArfRnd
- arf_prec_exact :: ArfRnd
- data Arb = Arb !(ForeignPtr CArb)
- data CArb = CArb CMag CArf
- type ArbStrOption = CULong
- arb_str_none :: ArbStrOption
- arb_str_more :: ArbStrOption
- arb_str_no_radius :: ArbStrOption
- arb_str_condense :: ArbStrOption
- data ArbPoly = ArbPoly !(ForeignPtr CArbPoly)
- type CArbPoly = CFlint ArbPoly
Documentation
Data structure containing the CMag pointer
Mag !(ForeignPtr CMag) |
Instances
Storable CMag Source # | |
Defined in Data.Number.Flint.Arb.Types.FFI |
Data structure containing the CArb pointer
Arf !(ForeignPtr CArf) |
Instances
Storable CArf Source # | |
Defined in Data.Number.Flint.Arb.Types.FFI |
Arf rounding
arf_rnd_up :: ArfRnd Source #
Specifies that the result of an operation should be rounded to the nearest representable number in the direction towards zero.
arf_rnd_down :: ArfRnd Source #
Specifies that the result of an operation should be rounded to the nearest representable number in the direction away from zero.
arf_rnd_floor :: ArfRnd Source #
Specifies that the result of an operation should be rounded to the nearest representable number in the direction towards minus infinity.
arf_rnd_ceil :: ArfRnd Source #
Specifies that the result of an operation should be rounded to the nearest representable number in the direction towards plus infinity.
arf_rnd_near :: ArfRnd Source #
Specifies that the result of an operation should be rounded to the nearest representable number, rounding to even if there is a tie between two values.
arf_prec_exact :: ArfRnd Source #
If passed as the precision parameter to a function, indicates that no rounding is to be performed. Warning: use of this value is unsafe in general. It must only be passed as input under the following two conditions:
- The operation in question can inherently be viewed as an exact operation in \(\mathbb{Z}[\tfrac{1}{2}]\) for all possible inputs, provided that the precision is large enough. Examples include addition, multiplication, conversion from integer types to arbitrary-precision floating-point types, and evaluation of some integer-valued functions.
- The exact result of the operation will certainly fit in memory. Note that, for example, adding two numbers whose exponents are far apart can easily produce an exact result that is far too large to store in memory.
The typical use case is to work with small integer values, double precision constants, and the like. It is also useful when writing test code. If in doubt, simply try with some convenient high precision instead of using this special value, and check that the result is exact.
Data structure containing the CArb pointer
Arb !(ForeignPtr CArb) |
Instances
Storable CArb Source # | |
Defined in Data.Number.Flint.Arb.Types.FFI |
type ArbStrOption = CULong Source #
string options
arb_str_none :: ArbStrOption Source #
Default print option
arb_str_more :: ArbStrOption Source #
If arb_str_more is added to flags, more (possibly incorrect) digits may be printed
arb_str_no_radius :: ArbStrOption Source #
If arb_str_no_radius is added to flags, the radius is not included in the output if at least 1 digit of the midpoint can be printed.
arb_str_condense :: ArbStrOption Source #
By adding a multiple m of arb_str_condense to flags, strings of more than three times m consecutive digits are condensed, only printing the leading and trailing m digits along with brackets indicating the number of digits omitted (useful when computing values to extremely high precision).
Data structure containing the CArb pointer
Instances
Storable CArbPoly Source # | |
Defined in Data.Number.Flint.Arb.Poly.FFI | |
IsList ArbPoly Source # | |
Show ArbPoly Source # | |
type Item ArbPoly Source # | |
Defined in Data.Number.Flint.Arb.Poly.Instances |