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

Older Schreyer-style kernel computation, predecessor of schreyer-resolution/. More...

#include "polyring.hpp"
#include "gbring.hpp"
#include "schorder.hpp"
#include "matrix.hpp"
#include "monoid.hpp"
#include "comp.hpp"

Go to the source code of this file.

Classes

struct  GBMatrix
 gbvector-side matrix: a target FreeModule plus a list of gbvector* columns living in it. More...
class  GBKernelComputation
 Computes the kernel of a Schreyer-encoded GBMatrix and returns the syzygies in a Schreyer-compatible free module. More...

Detailed Description

Older Schreyer-style kernel computation, predecessor of schreyer-resolution/.

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

Declares GBKernelComputation — a Computation subclass that, given a matrix whose columns f_1, ..., f_n are a Groebner basis of their image, produces the kernel as a set of syzygy generators which are themselves a Groebner basis under the Schreyer order induced by (lt(f_1), ..., lt(f_n)) on the source free module. That structural guarantee is what makes the routine useful for iterated free resolutions: the kernel is in the right form to feed straight into the next step.

Also declares the lightweight GBMatrix — a matrix whose columns are owned gbvector* rather than opaque vec values, so the inner loop sidesteps a Matrix -> gbvector conversion every iteration. This single-row reduction loop is the live implementation behind interface/groebner.cpprawKernelOfGB; the newer schreyer-resolution/ family targets full free resolutions via Macaulay matrices and is not a drop-in replacement.

See also
gbring.hpp
schorder.hpp
comp.hpp

Definition in file Eschreyer.hpp.