3#ifndef _res_f4_computation_hpp_
4#define _res_f4_computation_hpp_
79 bool parallelizeByDegree);
86 bool parallelizeByDegree);
135 std::unique_ptr<SchreyerFrame>
mComp;
142 bool parallelizeByDegree);
M2_arrayint get_betti(int type) const
int complete_thru_degree() const
F4ResComputation(const PolynomialRing *origR, ResPolyRing *R, const Matrix *gbmatrix, int max_level, int numThreads, bool parallelizeByDegree)
bool stop_conditions_ok()
const Matrix * get_matrix(int level)
std::unique_ptr< SchreyerFrame > mComp
const FreeModule * get_free(int level)
M2_arrayint minimal_betti(M2_arrayint slanted_degree_limit, M2_arrayint length_limit)
virtual ~F4ResComputation()
void text_out(buffer &o) const
std::unique_ptr< ResPolyRing > mRing
friend ResolutionComputation * createF4Res(const Matrix *groebnerBasisMatrix, int max_level, int strategy, int numThreads, bool parallelizeByDegree)
const PolynomialRing & mOriginalRing
MutableMatrix * get_mutable_matrix(const Ring *R, int level)
const Matrix & mInputGroebnerBasis
Engine-side free module R^n over a Ring.
Abstract base class for mutable matrices over an arbitrary engine Ring, the in-place counterpart of t...
Abstract base for the engine's polynomial-ring hierarchy.
The polynomial-ring view the F4 resolution engine reduces against: coefficient arithmetic plus the en...
Base class for free resolution computation classes.
State container for the in-progress free resolution built by the F4 resolution engine.
ResolutionComputation — abstract base for every free-resolution algorithm in the engine.
PolynomialRing — abstract polynomial-ring base, the engine's most-reused class.
ResolutionComputation * createF4Res(const Matrix *m, int max_level, int strategy, int numThreads, bool parallelizeByDegree)
ResPolyRing and ResPolynomial — resolution-tuned polynomial-ring view and value type.