|
Macaulay2 Engine
|
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... | |
Older Schreyer-style kernel computation, predecessor of schreyer-resolution/.
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.
Definition in file Eschreyer.hpp.