An open API service indexing awesome lists of open source software.

https://github.com/soupstraw/hafar

Affine arithmetic library for Haskell
https://github.com/soupstraw/hafar

affine-arithmetic haskell interval-arithmetic numerical-methods

Last synced: over 1 year ago
JSON representation

Affine arithmetic library for Haskell

Awesome Lists containing this project

README

          

# Hafar

Hafar is an implementation of affine arithmetic in haskell.

## Building

To build the library, simply run
```
# stack build
```
or if using cabal
```
# cabal install --only-dependencies
# cabal build
```

## Example

All operations with affine forms must be done inside the AFM monad.

```
import Numeric.Interval hiding (interval)

x1 = do
a <- newFromInterval $ 4...6
b <- newFromInterval $ 4...6
return . interval $ a - b

evalAFM x1 -- evaluates to approximately -2 ... 2

x2 = do
a <- newFromInterval $ 4...6
return . interval $ a - a

evalAFM x2 -- evaluates to approximately 0 ... 0

```