To focus the search input from anywhere on the page, press the 'S' key.
in-package search v0.1.0
Install
Authors
Maintainers
Sources
sha256=a2807d7860a9f965a3f91b40de17b98321e5c3f7da9e69dccf3dc20f1ac77e96
sha512=76196b171a41ce1374cae946b7c7a1dea6d614db61743ead14d628a12dce30a0dbd82db1960ad17b58f1f65a6f3fc61aaa5eac42face474baf840efb670feee8
CHANGES.md.html
1.6 2022-12-06
Use the standard
inf
andsup
for the bounds of the interval.Prefer
..._up
and..._dw
to mark the rounding of functions andRoundUp
andRoundDown
for the modules. Crlibm was updated
accordingly.Rename
Interval
asInterval_base
as it conflicted with theInterval
module in compiler libs (provoking a collision when this
library was used in the REPL).Add functions
mag
(magnitude) andmig
(mignitude),mid
(midpoint),singleton
(creation of intervals containing a single
value),is_singleton
,diam
(diameter),belong
(x ∈ I),floor
,ceil
andhypot
.Renamed
Interval_*.t
asInterval_*.interval
as to not import the
short typet
into the namespace (but still have access to the
record fields).Add functions
RoundDown.dist
andRoundUp.dist
(downward/upward
rounded distance).Use Dune 2.0.
1.5.1 2019-05-01
Fix the implementation of exponentiation (xⁿ, n ∈ ℤ).
Deprecate the
size…
functions in favor ofwidth…
.Add functions
mag
(magnitude) andmig
(mignitude).
1.5 2019-04-06
The library is now organized as 4 packages:
interval_base
defines the moduleInterval
that groups the
functions that work on any IEEE-754 processor and offers
basic module signatures;interval_intel
: defines a moduleInterval_intel
using assembly
instructions on Intel Processors;interval_crlibm
: defines a moduleInterval_crlibm
using the
library CRlibm to evaluate standard functions (sometimes a bit
slower but proved enclosures in contrast to the Intel package for
which enclosures are not always 100% correct).interval
: a meta-package that install all above three.
Interval.T
is a module signature to form the base of what is
expected of any interval package.New functions:
invx
(extended inverse),cancelminus
,cancelplus
,inter
inter_exn
,low
,high
.New binary relations
equal
,=
,subset
,<=
,>=
,precedes
,interior
,<
,>
,strict_precedes
,disjoint
.New predicates
is_bounded
,is_entire
.New constants
I.half_pi
∋ π/2 andI.entire
for [-∞, +∞].Interval_crlibm
: functionsexpm1
,log1p
,log2
,log10
,cospi
,sinpi
,tanpi
,acospi
,asinpi
,atanpi
, not present
in the Intel version.The module
I.U
also restores inequality relations.Speed and documentation improvements.
1.4 2018-03-01
Improved interface for the
Interval
library by using sub-modules
and standard mathematical names. In particular, all operations —
including infix operators — are in a sub-moduleI
which can
conveniently be used to introduce local scopes after issuingopen Interval
.Improved pretty-printing functions allowing to pass the format of
the interval bounds.The library functions now signal errors by exceptions
Division_by_zero
andDomain_error
that are local toInterval
.The
Fpu
module has been redesigned: the rounding up or down of
functions is controlled by the sub-module (Low
orHigh
) to which
they belong. This allows for natural expressions such asLow.(x**2. +. 2. *. x +. 1.)
.Jbuilder/dune is used to compile and install the library.
TravisCI and AppVeyor continuous integration ensure the library
works on a variety of OCaml versions and platforms.