Frobby  0.9.1
Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
EulerState Class Reference

#include <EulerState.h>

Public Member Functions

EulerState * inPlaceStdSplit (size_t pivotVar)
 
EulerState * inPlaceStdSplit (Word *pivot)
 
EulerState * inPlaceGenSplit (size_t pivotIndex)
 
bool toColonSubState (const Word *pivot)
 
bool toColonSubState (size_t pivotVar)
 
void toColonSubStateNoReminimizeNecessary (size_t pivotVar)
 
void toColonSubStateNoReminimizeNecessary (Word *pivot)
 
EulerState * makeSumSubState (size_t pivotVar)
 
EulerState * makeSumSubState (Word *pivot)
 
void flipSign ()
 
int getSign () const
 
void transpose ()
 
EulerState * getParent ()
 
RawSquareFreeIdeal & getIdeal ()
 
const RawSquareFreeIdeal & getIdeal () const
 
const Word * getEliminatedVars () const
 
size_t getVarCount () const
 
size_t getNonEliminatedVarCount () const
 
void removeGenerator (size_t index)
 
void compactEliminatedVariablesIfProfitable ()
 
void print (FILE *out)
 

Static Public Member Functions

static EulerState * construct (const Ideal &idealParam, Arena *arena)
 
static EulerState * construct (const RawSquareFreeIdeal &idealParam, Arena *arena)
 

Private Member Functions

 EulerState (const EulerState &)
 
void toZero ()
 
void allocateIdealAndEliminated (size_t varCount, size_t capacity)
 
void deallocate ()
 

Static Private Member Functions

static EulerState * rawConstruct (size_t varCount, size_t capacity, Arena *arena)
 

Private Attributes

RawSquareFreeIdeal * ideal
 
Word * eliminated
 
int sign
 
Arena * _alloc
 
EulerState * _parent
 

Detailed Description

Definition at line 25 of file EulerState.h.

Constructor & Destructor Documentation

◆ EulerState()

EulerState::EulerState ( const EulerState &  )
private

Member Function Documentation

◆ allocateIdealAndEliminated()

void EulerState::allocateIdealAndEliminated ( size_t  varCount,
size_t  capacity 
)
private

◆ compactEliminatedVariablesIfProfitable()

void EulerState::compactEliminatedVariablesIfProfitable ( )

Definition at line 196 of file EulerState.cpp.

◆ construct() [1/2]

EulerState * EulerState::construct ( const Ideal &  idealParam,
Arena *  arena 
)
static

Definition at line 28 of file EulerState.cpp.

◆ construct() [2/2]

EulerState * EulerState::construct ( const RawSquareFreeIdeal &  idealParam,
Arena *  arena 
)
static

Definition at line 43 of file EulerState.cpp.

◆ deallocate()

void EulerState::deallocate ( )
private

◆ flipSign()

void EulerState::flipSign ( )
inline

Definition at line 43 of file EulerState.h.

◆ getEliminatedVars()

const Word* EulerState::getEliminatedVars ( ) const
inline

Definition at line 51 of file EulerState.h.

◆ getIdeal() [1/2]

RawSquareFreeIdeal& EulerState::getIdeal ( )
inline

Definition at line 49 of file EulerState.h.

◆ getIdeal() [2/2]

const RawSquareFreeIdeal& EulerState::getIdeal ( ) const
inline

Definition at line 50 of file EulerState.h.

◆ getNonEliminatedVarCount()

size_t EulerState::getNonEliminatedVarCount ( ) const

Definition at line 240 of file EulerState.cpp.

◆ getParent()

EulerState* EulerState::getParent ( )
inline

Definition at line 48 of file EulerState.h.

◆ getSign()

int EulerState::getSign ( ) const
inline

Definition at line 44 of file EulerState.h.

◆ getVarCount()

size_t EulerState::getVarCount ( ) const
inline

Definition at line 52 of file EulerState.h.

◆ inPlaceGenSplit()

EulerState * EulerState::inPlaceGenSplit ( size_t  pivotIndex)

Definition at line 95 of file EulerState.cpp.

◆ inPlaceStdSplit() [1/2]

EulerState * EulerState::inPlaceStdSplit ( size_t  pivotVar)

Definition at line 81 of file EulerState.cpp.

◆ inPlaceStdSplit() [2/2]

EulerState * EulerState::inPlaceStdSplit ( Word *  pivot)

Definition at line 88 of file EulerState.cpp.

◆ makeSumSubState() [1/2]

EulerState * EulerState::makeSumSubState ( size_t  pivotVar)

Definition at line 158 of file EulerState.cpp.

◆ makeSumSubState() [2/2]

EulerState * EulerState::makeSumSubState ( Word *  pivot)

Definition at line 174 of file EulerState.cpp.

◆ print()

void EulerState::print ( FILE *  out)

Definition at line 206 of file EulerState.cpp.

◆ rawConstruct()

EulerState * EulerState::rawConstruct ( size_t  varCount,
size_t  capacity,
Arena *  arena 
)
staticprivate

Definition at line 57 of file EulerState.cpp.

◆ removeGenerator()

void EulerState::removeGenerator ( size_t  index)
inline

Definition at line 55 of file EulerState.h.

◆ toColonSubState() [1/2]

bool EulerState::toColonSubState ( const Word *  pivot)

Definition at line 118 of file EulerState.cpp.

◆ toColonSubState() [2/2]

bool EulerState::toColonSubState ( size_t  pivotVar)

Definition at line 129 of file EulerState.cpp.

◆ toColonSubStateNoReminimizeNecessary() [1/2]

void EulerState::toColonSubStateNoReminimizeNecessary ( size_t  pivotVar)

Definition at line 140 of file EulerState.cpp.

◆ toColonSubStateNoReminimizeNecessary() [2/2]

void EulerState::toColonSubStateNoReminimizeNecessary ( Word *  pivot)

Definition at line 149 of file EulerState.cpp.

◆ toZero()

void EulerState::toZero ( )
private

Definition at line 233 of file EulerState.cpp.

◆ transpose()

void EulerState::transpose ( )

Definition at line 190 of file EulerState.cpp.

Member Data Documentation

◆ _alloc

Arena* EulerState::_alloc
private

Definition at line 79 of file EulerState.h.

◆ _parent

EulerState* EulerState::_parent
private

Definition at line 80 of file EulerState.h.

◆ eliminated

Word* EulerState::eliminated
private

Definition at line 77 of file EulerState.h.

◆ ideal

RawSquareFreeIdeal* EulerState::ideal
private

Definition at line 76 of file EulerState.h.

◆ sign

int EulerState::sign
private

Definition at line 78 of file EulerState.h.


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