Frobby 0.9.7
BigattiHilbertAlgorithm Class Reference

#include <BigattiHilbertAlgorithm.h>

Public Member Functions

 BigattiHilbertAlgorithm (unique_ptr< Ideal > ideal, const TermTranslator &translator, const BigattiParams &params, unique_ptr< BigattiPivotStrategy > pivot, CoefBigTermConsumer &consumer)
 Construct an object for running the Bigatti et.al.
void setPrintStatistics (bool value)
void setPrintDebug (bool value)
void setUseSimplification (bool value)
void setDoCanonicalOutput (bool value)
void setComputeUnivariate (bool value)
void run ()

Private Member Functions

void processState (unique_ptr< BigattiState > state)
void getPivot (BigattiState &state, size_t &var, Exponent &e)
void simplify (BigattiState &state)
void freeState (unique_ptr< BigattiState > state)

Private Attributes

size_t _varCount
const TermTranslator_translator
CoefBigTermConsumer_consumer
TaskEngine _tasks
ObjectCache< BigattiState_stateCache
Term _tmp_processState_pivot
Term _tmp_simplify_gcd
BigattiBaseCase _baseCase
unique_ptr< BigattiPivotStrategy_pivot
bool _computeUnivariate
BigattiParams _params

Friends

class BigattiState

Detailed Description

Definition at line 32 of file BigattiHilbertAlgorithm.h.

Constructor & Destructor Documentation

◆ BigattiHilbertAlgorithm()

BigattiHilbertAlgorithm::BigattiHilbertAlgorithm ( unique_ptr< Ideal > ideal,
const TermTranslator & translator,
const BigattiParams & params,
unique_ptr< BigattiPivotStrategy > pivot,
CoefBigTermConsumer & consumer )

Construct an object for running the Bigatti et.al.

algorithm on ideal. Both translator and consumer must remain valid for the lifetime of this object.

Definition at line 25 of file BigattiHilbertAlgorithm.cpp.

Member Function Documentation

◆ freeState()

void BigattiHilbertAlgorithm::freeState ( unique_ptr< BigattiState > state)
private

Definition at line 125 of file BigattiHilbertAlgorithm.cpp.

◆ getPivot()

void BigattiHilbertAlgorithm::getPivot ( BigattiState & state,
size_t & var,
Exponent & e )
private

◆ processState()

void BigattiHilbertAlgorithm::processState ( unique_ptr< BigattiState > state)
private

Definition at line 75 of file BigattiHilbertAlgorithm.cpp.

◆ run()

void BigattiHilbertAlgorithm::run ( )

Definition at line 54 of file BigattiHilbertAlgorithm.cpp.

◆ setComputeUnivariate()

void BigattiHilbertAlgorithm::setComputeUnivariate ( bool value)

Definition at line 50 of file BigattiHilbertAlgorithm.cpp.

◆ setDoCanonicalOutput()

void BigattiHilbertAlgorithm::setDoCanonicalOutput ( bool value)

◆ setPrintDebug()

void BigattiHilbertAlgorithm::setPrintDebug ( bool value)

◆ setPrintStatistics()

void BigattiHilbertAlgorithm::setPrintStatistics ( bool value)

◆ setUseSimplification()

void BigattiHilbertAlgorithm::setUseSimplification ( bool value)

◆ simplify()

void BigattiHilbertAlgorithm::simplify ( BigattiState & state)
private

Definition at line 109 of file BigattiHilbertAlgorithm.cpp.

◆ BigattiState

friend class BigattiState
friend

Definition at line 75 of file BigattiHilbertAlgorithm.h.

Member Data Documentation

◆ _baseCase

BigattiBaseCase BigattiHilbertAlgorithm::_baseCase
private

Definition at line 68 of file BigattiHilbertAlgorithm.h.

◆ _computeUnivariate

bool BigattiHilbertAlgorithm::_computeUnivariate
private

Definition at line 72 of file BigattiHilbertAlgorithm.h.

◆ _consumer

CoefBigTermConsumer* BigattiHilbertAlgorithm::_consumer
private

Definition at line 61 of file BigattiHilbertAlgorithm.h.

◆ _params

BigattiParams BigattiHilbertAlgorithm::_params
private

Definition at line 73 of file BigattiHilbertAlgorithm.h.

◆ _pivot

unique_ptr<BigattiPivotStrategy> BigattiHilbertAlgorithm::_pivot
private

Definition at line 70 of file BigattiHilbertAlgorithm.h.

◆ _stateCache

ObjectCache<BigattiState> BigattiHilbertAlgorithm::_stateCache
private

Definition at line 63 of file BigattiHilbertAlgorithm.h.

◆ _tasks

TaskEngine BigattiHilbertAlgorithm::_tasks
private

Definition at line 62 of file BigattiHilbertAlgorithm.h.

◆ _tmp_processState_pivot

Term BigattiHilbertAlgorithm::_tmp_processState_pivot
private

Definition at line 65 of file BigattiHilbertAlgorithm.h.

◆ _tmp_simplify_gcd

Term BigattiHilbertAlgorithm::_tmp_simplify_gcd
private

Definition at line 66 of file BigattiHilbertAlgorithm.h.

◆ _translator

const TermTranslator& BigattiHilbertAlgorithm::_translator
private

Definition at line 60 of file BigattiHilbertAlgorithm.h.

◆ _varCount

size_t BigattiHilbertAlgorithm::_varCount
private

Definition at line 59 of file BigattiHilbertAlgorithm.h.


The documentation for this class was generated from the following files: