State container for the in-progress free resolution built by the F4 resolution engine.
More...
|
| | SchreyerFrame (const ResPolyRing &R, int max_level, int numThreads, bool parallelizeByDegree) |
| | ~SchreyerFrame () |
| const ResMonoid & | monoid () const |
| const ResPolyRing & | ring () const |
| const VectorArithmetic & | vectorArithmetic () const |
| ResMemoryBlock< res_monomial_word > & | monomialBlock () |
| void | show (int len) const |
| long | memoryUsage () const |
| void | showMemoryUsage () const |
| bool | debugCheckOrder (int lev) const |
| bool | debugCheckOrderAll () const |
| M2_arrayint | getBetti (int type) |
| void | getBounds (int &loDegree, int &hiDegree, int &length) const |
| void | insertLevelZero (res_packed_monomial monom, int degree, int maxdeglevel0) |
| bool | insertLevelOne (res_packed_monomial monom, int degree, ResPolynomial &syzygy) |
| void | endLevel () |
| void | start_computation (StopConditions &stop) |
| void | insertBasic (int lev, res_packed_monomial monom, int degree) |
| void | setSchreyerOrder (int lev) |
| component_index | computeNextLevel () |
| res_packed_monomial | monomial (int lev, component_index component) |
| M2_arrayint | getBettiFrame () const |
| void | setBettiDisplays () |
| int | rank (int slanted_degree, int lev) |
| template<typename Gen> |
| int | rankUsingSparseMatrix (Gen &D) |
| template<typename Gen> |
| int | rankUsingDenseMatrix (Gen &D, bool transposed=true) |
| template<typename Gen> |
| int | rankUsingDenseMatrixFlint (Gen &D, bool transposed=true) |
| bool | computeFrame () |
| void | computeSyzygies (int slanted_degree, int maxlevel) |
| void | computeRanks (int slanted_degree, int maxlevel) |
| BettiDisplay | minimalBettiNumbers (bool stop_after_degree, int top_slanted_degree, int length_limit) |
| ResSchreyerOrder & | schreyerOrder (int lev) |
| const ResSchreyerOrder & | schreyerOrder (int lev) const |
| int | maxLevel () const |
| std::vector< FrameElement > & | level (int lev) |
| const std::vector< FrameElement > & | level (int lev) const |
State container for the in-progress free resolution built by the F4 resolution engine.
- Note
- AI-generated documentation. Verify against the source before relying on it.
Organises the resolution as a vector of Levels indexed by homological degree; each level holds a vector of FrameElements plus its ResSchreyerOrder for tie-breaking. The frame is grown incrementally: callers insertLevelZero / insertLevelOne / insertBasic to add generators, endLevel to finalise descendant slices, and computeNextLevel / computeFrame to push the computation forward. F4Res reads off the frame to build the Macaulay matrix for the next level, and minimalBettiNumbers produces a BettiDisplay directly from the level shapes without revisiting source polynomials. When built with TBB, the DependencyGraph is a friend so per-(level, slanted_degree) work cells can be scheduled in parallel.
Definition at line 152 of file res-schreyer-frame.hpp.