Я ищу C ++ -совместимый пакет, который может выполнять арифметику с алгебраическими числами.(Примечание: алгебраическое число означает число, являющееся корнем многочлена с целыми коэффициентами, поэтому оно не задается как десятичное или рациональное выражение).
Mathematica обрабатывает алгебраические числа как «корневые объекты», которыепредставлены полиномами с выбором корня.Затем два таких корневых объекта можно добавить, умножить и т. Д., А затем уменьшить, чтобы получить новый корневой объект.
Существует ли какое-либо программное обеспечение, которое делает то же самое в C ++?Я видел некоторые фантастические пакеты теории чисел, которые делают разные вещи с расширениями числовых полей, но я бы предпочел что-то простое, чем просто базовую арифметику с алгебраическими числами, то есть сложение, вычитание, умножение, деление, уменьшение, проверку на равенство..