|
Macaulay2 Engine
|
BIBasis::Launcher — monomial-order dispatcher between the engine boundary and BooleanInvolutiveBasis. More...
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 |
BIBasis::Launcher — monomial-order dispatcher between the engine boundary and BooleanInvolutiveBasis.
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.
Definition in file launcher.hpp.