3 stable releases
2.0.0 | Aug 7, 2024 |
---|---|
1.1.0 | Apr 2, 2023 |
1.0.0 | Jul 9, 2022 |
0.15.0 |
|
0.2.1 |
|
#155 in Math
Used in 2 crates
215KB
4K
SLoC
🦊 inari
inari is a Rust implementation of interval arithmetic.
It conforms to IEEE Std 1788.1-2017. It also implements a subset of IEEE Std 1788-2015.
Supported Platforms
The following CPUs are supported and continuously tested:
-
x86-64
Haswell-based and newer processors are supported.
You need to specify the target CPU when building a crate that depends on inari. One way to do that is by using a configuration file in your project (see example; you may want to change
native
tohaswell
for the best compatibility if you are going to distribute binaries). -
AArch64 (ARM64)
When using the Cargo feature gmp
(see below), target platforms are limited to those that are supported by the gmp-mpfr-sys
crate. For example, MSVC is not supported.
Cargo Features
gmp
(enabled by default) - Enables operations that depend on GMP and MPFR. You can opt out of the feature to reduce dependencies. Even in that case, you still have access to all operations required by certain kinds of tasks, such as making fast robust predicates for computational geometry.
Changelog
Building the Documentation Locally
RUSTDOCFLAGS="--cfg docsrs --html-in-header /path/to/inari/src/_docs/header.html" cargo doc --open
Ensure that the absolute path to header.html
is specified.
Related Project
- Graphest - A faithful graphing calculator.
References
- IEEE Std 1788-2015 - IEEE Standard for Interval Arithmetic. DOI: 10.1109/IEEESTD.2015.7140721
- IEEE Std 1788.1-2017 - IEEE Standard for Interval Arithmetic (Simplified). DOI: 10.1109/IEEESTD.2018.8277144
Dependencies
~0–5.5MB
~127K SLoC