Macaulay2 Engine
Loading...
Searching...
No Matches
launcher.hpp File Reference

BIBasis::Launcher — monomial-order dispatcher between the engine boundary and BooleanInvolutiveBasis. More...

#include "involutive.hpp"
#include "matrix.hpp"

Go to the source code of this file.

Classes

class  BIBasis::Launcher
 Top-level entry point that runs a BIBasis (boolean involutive) computation on an engine Matrix and returns the result as a Matrix. More...

Namespaces

namespace  BIBasis

Detailed Description

BIBasis::Launcher — monomial-order dispatcher between the engine boundary and BooleanInvolutiveBasis.

Note
AI-generated documentation. Verify against the source before relying on it.

Declares the single Launcher class that the engine's rawBIBasis entry calls into. GetBIBasisMatrix(matrix, toGroebner) validates the input via CheckMatrix, reads the polynomial ring's monomial ordering off the Matrix, and instantiates BooleanInvolutiveBasis<MonomLex>, <MonomDL>, or <MonomDRL> accordingly — one specialisation per supported ordering, so the inner-loop comparators inline without virtual dispatch.

Centralising the template instantiations here keeps the engine boundary free of BIBasis-specific template noise: every other translation unit only sees Launcher::GetBIBasisMatrix, and the heavy templated machinery is compiled exactly once per order inside launcher.cpp.

See also
involutive.hpp
monom.hpp
monomLex.hpp
monomDL.hpp
monomDRL.hpp

Definition in file launcher.hpp.