Представление булевых многочленов в виде ZDD-диаграмм
Булевы базисы Грёбнера проявили свою практическую применимость для ряда задач, таких как HFE (Hidden Field Equations) в криптографии, моделирование квантовых вычислений и к задаче «Выполнимость» для конъюнктивной нормальной формы. Алгоритмы построения базисов Грёбнера имеют экспоненциальную сложность построения как по времени выполнения, так и по требуемой памяти. Для более компактного хранения булевых многочленов было предложено использовать ZDD-диаграммы. Показана связь ZDD-диаграмм с специальным видом рекурсивным представлением многочленов, которое отождествляет ZDD-диаграмму с некоторым набором равенств. Доказана лемма дающая число вершин в ZDD-диаграмме для представления булевого многочлена, состоящего из всех мономов до степени d включительно. Представлен пакет на языке C++11 для работы с ZDD-диаграммами. В состав пакета входят собственная реализация красно-чёрных деревьев, списков и менеджера памяти. Пакет разрабатывался для использования как внутреннее представление булевых многочленов, в ней реализованы операции сложения и умножение двух многочленов, а также умножение на переменную, которое используются при построении инволютивных базисов Грёбнера.