We have developed a comprehensive software ecosystem that combines high-performance C libraries with user-friendly Julia packages for easy access to our specialised algorithms.
C Libraries
Our core C library LACE (Library for Algebraic Computations for Engineering) provides implementations of:
- Newton’s Method with Interval Arithmetic for guaranteed convergence
- Kantorovich Uniqueness Test for solution verification
- Interval polynomial evaluation
Julia Packages
Our Julia ecosystem is structured in two layers to provide both core functionality and domain-specific applications:
Core Package
PACE.jl is our main Julia package. It brings together wrappers to C-libraries and to several Julia packages:
- PACE Julia Packages
- MPFI.jl: A wrapper for the MPFI C-library for multi-precision interval computations in Julia.
- RS.jl: A wrapper for the RS C-Library : Polynomial root isolation and Implicit Function Plotting.
- LACE.jl: A wrapper for the LACE C-Library : Newton’s Method with Interval Arithmetic and Kantorovich Uniqueness Test, Polynomial evaluations.
- Wrapped external Julia Packages:
- DiscriminantVariety.jl: Computes the discriminant variety of a polynomial system.
- RationalUnivariateRepresentation.jl: RUR computation of zero-dimensional polynomial systems.
Application Packages
Built on top of PACE.jl, our application packages target specific domains:
- PaceRobots.jl: Specialized tools for robotics applications.
All our Julia packages are open-source and available under permissive licenses. For detailed installation instructions please visit our Installation Guide.