carl
24.04
Computer ARithmetic Library
|
Gebauer and Moeller style implementation of the Buchberger algorithm. More...
#include <Buchberger.h>
Public Member Functions | |
Buchberger () | |
virtual | ~Buchberger ()=default |
Buchberger (const Buchberger &rhs) | |
void | calculate (const std::list< Polynomial > &scheduledForAdding) |
void | setIdeal (const std::shared_ptr< Ideal< Polynomial >> &ideal) |
void | setCriticalPairs (const std::shared_ptr< CritPairs > &criticalPairs) |
void | update (size_t index) |
Protected Member Functions | |
bool | addToGb (const Polynomial &newPol) |
void | removeBuchbergerTriples (std::unordered_map< size_t, SPolPair > &spairs, std::vector< size_t > &primelist) |
void | reduce () |
Protected Attributes | |
std::shared_ptr< Ideal< Polynomial > > | pGb |
std::vector< size_t > | mGbElementsIndices |
std::shared_ptr< CritPairs > | pCritPairs |
UpdateFnct< Buchberger< Polynomial, AddingPolicy > > | mUpdateCallBack |
Gebauer and Moeller style implementation of the Buchberger algorithm.
For more information about this Algorithm. More information can be found in the Bachelor Thesis On Groebner Bases in SMT-Compliant Decision Procedures.
Definition at line 63 of file Buchberger.h.
|
inline |
Definition at line 77 of file Buchberger.h.
|
virtualdefault |
|
inline |
Definition at line 88 of file Buchberger.h.
|
inlineprotected |
Definition at line 111 of file Buchberger.h.
void carl::Buchberger< Polynomial, AddingPolicy >::calculate | ( | const std::list< Polynomial > & | scheduledForAdding | ) |
|
protected |
|
protected |
|
inline |
Definition at line 101 of file Buchberger.h.
|
inline |
Definition at line 97 of file Buchberger.h.
void carl::Buchberger< Polynomial, AddingPolicy >::update | ( | size_t | index | ) |
|
protected |
Definition at line 68 of file Buchberger.h.
|
protected |
Definition at line 70 of file Buchberger.h.
|
protected |
Definition at line 69 of file Buchberger.h.
|
protected |
Definition at line 67 of file Buchberger.h.