Frobby 0.9.7
PivotEulerAlg Class Reference

#include <PivotEulerAlg.h>

Public Member Functions

 PivotEulerAlg ()
const mpz_class & computeEulerCharacteristic (const Ideal &ideal)
const mpz_class & computeEulerCharacteristic (const RawSquareFreeIdeal &ideal)
const mpz_class & getComputedEulerCharacteristic () const
void setPivotStrategy (unique_ptr< PivotStrategy > strategy)
void setInitialAutoTranspose (bool value)
bool getInitialAutoTranspose () const
void setAutoTranspose (bool value)
bool getAutoTranspose () const
void setUseUniqueDivSimplify (bool value)
bool getUseUniqueDivSimplify () const
void setUseManyDivSimplify (bool value)
bool getUseManyDivSimplify () const
void setUseAllPairsSimplify (bool value)
bool getUseAllPairsSimplify () const

Private Member Functions

void computeEuler (EulerState *state)
bool autoTranspose (EulerState &state)
EulerStateprocessState (EulerState &state)
void getPivot (const EulerState &state, Word *pivot)

Private Attributes

mpz_class _euler
Word_termTmp
vector< size_t > _divCountsTmp
bool _useUniqueDivSimplify
bool _useManyDivSimplify
bool _useAllPairsSimplify
bool _autoTranspose
bool _initialAutoTranspose
unique_ptr< PivotStrategy_pivotStrategy

Detailed Description

Definition at line 30 of file PivotEulerAlg.h.

Constructor & Destructor Documentation

◆ PivotEulerAlg()

PivotEulerAlg::PivotEulerAlg ( )

Definition at line 243 of file PivotEulerAlg.cpp.

Member Function Documentation

◆ autoTranspose()

bool PivotEulerAlg::autoTranspose ( EulerState & state)
private

Definition at line 311 of file PivotEulerAlg.cpp.

◆ computeEuler()

void PivotEulerAlg::computeEuler ( EulerState * state)
private

Definition at line 297 of file PivotEulerAlg.cpp.

◆ computeEulerCharacteristic() [1/2]

const mpz_class & PivotEulerAlg::computeEulerCharacteristic ( const Ideal & ideal)

Definition at line 253 of file PivotEulerAlg.cpp.

◆ computeEulerCharacteristic() [2/2]

const mpz_class & PivotEulerAlg::computeEulerCharacteristic ( const RawSquareFreeIdeal & ideal)

Definition at line 274 of file PivotEulerAlg.cpp.

◆ getAutoTranspose()

bool PivotEulerAlg::getAutoTranspose ( ) const
inline

Definition at line 46 of file PivotEulerAlg.h.

◆ getComputedEulerCharacteristic()

const mpz_class & PivotEulerAlg::getComputedEulerCharacteristic ( ) const
inline

Definition at line 36 of file PivotEulerAlg.h.

◆ getInitialAutoTranspose()

bool PivotEulerAlg::getInitialAutoTranspose ( ) const
inline

Definition at line 43 of file PivotEulerAlg.h.

◆ getPivot()

void PivotEulerAlg::getPivot ( const EulerState & state,
Word * pivot )
private

Definition at line 239 of file PivotEulerAlg.cpp.

◆ getUseAllPairsSimplify()

bool PivotEulerAlg::getUseAllPairsSimplify ( ) const
inline

Definition at line 55 of file PivotEulerAlg.h.

◆ getUseManyDivSimplify()

bool PivotEulerAlg::getUseManyDivSimplify ( ) const
inline

Definition at line 52 of file PivotEulerAlg.h.

◆ getUseUniqueDivSimplify()

bool PivotEulerAlg::getUseUniqueDivSimplify ( ) const
inline

Definition at line 49 of file PivotEulerAlg.h.

◆ processState()

EulerState * PivotEulerAlg::processState ( EulerState & state)
private

Definition at line 199 of file PivotEulerAlg.cpp.

◆ setAutoTranspose()

void PivotEulerAlg::setAutoTranspose ( bool value)
inline

Definition at line 45 of file PivotEulerAlg.h.

◆ setInitialAutoTranspose()

void PivotEulerAlg::setInitialAutoTranspose ( bool value)
inline

Definition at line 42 of file PivotEulerAlg.h.

◆ setPivotStrategy()

void PivotEulerAlg::setPivotStrategy ( unique_ptr< PivotStrategy > strategy)
inline

Definition at line 38 of file PivotEulerAlg.h.

◆ setUseAllPairsSimplify()

void PivotEulerAlg::setUseAllPairsSimplify ( bool value)
inline

Definition at line 54 of file PivotEulerAlg.h.

◆ setUseManyDivSimplify()

void PivotEulerAlg::setUseManyDivSimplify ( bool value)
inline

Definition at line 51 of file PivotEulerAlg.h.

◆ setUseUniqueDivSimplify()

void PivotEulerAlg::setUseUniqueDivSimplify ( bool value)
inline

Definition at line 48 of file PivotEulerAlg.h.

Member Data Documentation

◆ _autoTranspose

bool PivotEulerAlg::_autoTranspose
private

Definition at line 71 of file PivotEulerAlg.h.

◆ _divCountsTmp

vector<size_t> PivotEulerAlg::_divCountsTmp
private

Definition at line 66 of file PivotEulerAlg.h.

◆ _euler

mpz_class PivotEulerAlg::_euler
private

Definition at line 64 of file PivotEulerAlg.h.

◆ _initialAutoTranspose

bool PivotEulerAlg::_initialAutoTranspose
private

Definition at line 72 of file PivotEulerAlg.h.

◆ _pivotStrategy

unique_ptr<PivotStrategy> PivotEulerAlg::_pivotStrategy
private

Definition at line 73 of file PivotEulerAlg.h.

◆ _termTmp

Word* PivotEulerAlg::_termTmp
private

Definition at line 65 of file PivotEulerAlg.h.

◆ _useAllPairsSimplify

bool PivotEulerAlg::_useAllPairsSimplify
private

Definition at line 70 of file PivotEulerAlg.h.

◆ _useManyDivSimplify

bool PivotEulerAlg::_useManyDivSimplify
private

Definition at line 69 of file PivotEulerAlg.h.

◆ _useUniqueDivSimplify

bool PivotEulerAlg::_useUniqueDivSimplify
private

Definition at line 68 of file PivotEulerAlg.h.


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