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 42 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 )

static private

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:

- src/EulerState.h
- src/EulerState.cpp