AERN-RnToRm- polynomial function enclosures (PFEs) approximating exact real functions

Portabilitynon-portable (requires fenv.h)



This module bundles some of the most important functionality of the AERN-RnToRm package. It is intended to be imported *qualified*.

AERN-RnToRm provides datatypes and abstractions for approximating functions of type D -> R^m where D is a bounded interval in R^n with non-empty interior.

Abstractions are provided via 4 type classes:

  • ERUnitFnBase: generalises polynomials with floating point coefficients. (Not exported here, used only internally.)
  • ERFnApprox: generalises functions enclosures on a certain unspecified domain.
  • ERUnitFnApprox (extends ERFnApprox): generalises function graph enclosures on the domain [-1,1]^n. (Not exported here, used only internally.)
  • ERFnDomApprox (extends ERFnApprox): generalises function enclosures over a specified and queriable domain box (instance of class DomainBox).

At all levels, all field operations are supported as well as some elementary operations, namely exp, sin and cos. Log and sqrt are planned to be added soon.

Implementations of ERUnitFnBase:

By using the Chebyshev basis on domain [-1,1]^n, we gain simple and optimally rounding degree reduction as well as relatively simple handling of rounding in other operations.

Implementations of ERUnitFnApprox:

Implementations of ERFnDomApprox: