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

sagbi — subduction helpers for canonical-subalgebra (SAGBI) bases. More...

#include "matrix.hpp"
#include "comp-gb.hpp"

Go to the source code of this file.

Classes

class  sagbi
 Helper routines for computing Sagbi bases. Not currently functional? More...

Detailed Description

sagbi — subduction helpers for canonical-subalgebra (SAGBI) bases.

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

Declares the static-only sagbi namespace-class holding the subduction primitives that would drive a native SAGBI engine. Four overloads cover two shapes. The simple subduct(numslots, R, f, phi, J) takes a polynomial f in a single ring R, a candidate subalgebra basis delivered through RingMap phi, and a GBComputation J for the ambient ideal, and returns an element of the subalgebra whose leading term cancels f's (or zero when no such reduction exists); a matrix overload does the same column-by-column on a Matrix. The two subduct1(...) overloads add the two-ring tensor setup — a tensor ring T, a poly ring S, three RingMaps (inclusionAmbient, fullSubstitution, substitutionInclusion), and two GBs (gbI for the subalgebra ideal, gbReductionIdeal for the reduction ideal) — and are what interface/groebner.cpprawSubduction1 dispatches to (the single-ring rawSubduction calls the four-arg subduct).

The header flags itself as "not currently functional" — the in-engine helpers stop short of a complete SAGBI driver, and the production SAGBI work today happens in the M2-side SubalgebraBases package, which builds on top of the standard GB infrastructure rather than these primitives. The file remains as a starting point for a future native implementation.

See also
comp-gb.hpp
ringmap.hpp

Definition in file sagbi.hpp.