Macaulay2 Engine
Loading...
Searching...
No Matches
hilb-fcn.hpp File Reference

HilbertController — early-exit driver for F4 given a known Hilbert series. More...

#include "newdelete.hpp"
#include "ringelem.hpp"

Go to the source code of this file.

Classes

class  HilbertController
 Hilbert-function-driven early termination helper used by F4GB to skip degrees the user-supplied Hilbert series predicts hold no new basis elements. More...

Detailed Description

HilbertController — early-exit driver for F4 given a known Hilbert series.

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

Declares HilbertController, the helper F4 consults when the user supplies the expected Hilbert series of the input ideal. setDegree(d) reads the expected number of new generators in degree d off the supplied Hilbert series and stores it in hilb_n_in_degree; addMonomial(...) decrements the counter each time F4 commits a new leading monomial of that degree; nRemainingExpected() lets F4 abandon any remaining degree-d S-pairs once the counter hits zero. Skipping the unproductive pairs avoids the matrix builds they would have triggered and the cascading work at later degrees.

Constructed from a target FreeModule* (so the Hilbert function is interpreted in the right multi-grading) and a RingElement* hf carrying the user-supplied series. hilb.hpp is what produces the series in the first place.

See also
f4.hpp
hilb.hpp

Definition in file hilb-fcn.hpp.