Aerobus is a C++-20 pure header library for general algebra on polynomials, discrete rings and associated structures.
Everything in Aerobus is expressed as types.
We say that again as it is the most fundamental characteristic of Aerobus :
Everything is expressed as types
The library serves two main purposes :
Express algebra structures and associated operations in type arithmetic, compile-time;
Provide portable and fast evaluation functions for polynomials.
It is designed to be 'quite easily' extensible.
Given these functions are "generated" at compile time and do not rely on inline assembly, they are actually platform independent, yielding exact same results if processors have same capabilities (such as Fused-Multiply-Add instructions).
Full documentation at : https://aerobus-open-source.github.io/aerobus/docs/