Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

QEqnSolutionsInFreeGroup Class Reference

#include <QEqnSolutions.h>

List of all members.

Public Methods

 QEqnSolutionsInFreeGroup (const FreeGroup &G, const Word &equation, int numOfVar)
void startComputation ()
void continueComputation ()
void disableBuildingRegStab ()
void enableBuildingRegStab ()
void disableBuildingSolutions ()
void enableBuildingSolutions ()
bool isComputationDone () const
bool isComputationStarted () const
bool haveNewSolution () const
bool nextSolution ()
bool haveNewStabGenerator () const
bool nextStabGenerator ()
bool isBuildingSolutionsEnabled () const
bool isBuildingRegStabEnabled () const
Endomorphism getSolution ()
Automorphism getStabGenerator ()
Word surfaceForm ()
Automorphism toSurfaceForm ()
FreeGroup group () const
Word equation () const
int numberOfVariables () const
int numberOfGenerators () const
int numberOfConstants () const
int rank () const
VectorPtrOf<EndomorphismbasicSolutions () const
VectorPtrOf<AutomorphismregStabGenerators () const
Automorphism prefixMap () const
EquationStatus getProcessStatus () const
Endomorphism eliminator () const

Private Types

enum  { MUST_BE_MAPPED_TO_ITSELF, MUST_BE_MAPPED_TO_1, CAN_BE_MAPPED_TO_1 }

Private Methods

Bool isVariable (const Generator &g) const
bool isConstant (const Generator &g) const
void buildNewVerticesAndLoopsFrom (const Word &vertex)
RegularAuto buildPath (const Word &from, const Word &to)
RegularAuto buildPathTo (const Word &to)
void registerEdge (const Word &source, const ElementaryRegularAuto &edge, const Word &target)
void buildSolutionsOfOneVertex (const Word &w)
VectorOf<int> checkProperties (const Word &w)
ListOf<SingularEndobuildSingulars (const Word &w, const VectorOf< int > &varProperties)
void appendNewSolution (ListOf< SingularEndo > &solutions, const SingularEndo &newSolution)
int rankOfBasicSolution (const Endomorphism &solution) const
void processOneLoop (const Edge &edge)
void computeSurfaceForm ()
Word extractSquare (Word &w, int firstLocation, int secondLocation)
Word extractPinch (Word &w, int firstLocation, int secondLocation)
Word extractCommutator (Word &w, int xFirstLocation, int xSecondLocation, int yFirstLocation)
int getLocationOfArbitraryVariable (const Word &w, int start, int stop) const
int getPairOfVariable (Word &w, int &firstLocation, int &secondLocation, bool oppositeOrder) const
Word bringToCanonicForm (Word &squares, Word &commutators, Word constants, Word &pinches)

Private Attributes

Word theEquation
int theNumberOfGenerators
int theNumberOfVariables
FreeGroup theGroup
VectorPtrOf<AutomorphismtheRegStabGenerators
VectorPtrOf<EndomorphismtheBasicSolutions
int theRank
Word theSurfaceForm
Automorphism toSurface
bool computationIsStarted
bool computationIsDone
int solution
int generator
Endomorphism theEliminator
Automorphism startPath
Automorphism invStartPath
Word root
QuickAssociationsOf<Word,
ElementaryRegularAuto
maxSubTree
QueueOf<WordnewVertices
QueueOf<Edgeloops
Endomorphism removeVarEndo
SetOf<EndomorphismsetOfBasicSolutions
int tempRank
SetOf<AutomorphismregStabSet
bool surfaceFormIsComputed
EquationStatus status

Friends

ostream& operator<< (ostream &, const QEqnSolutionsInFreeGroup &)


Member Enumeration Documentation

anonymous enum [private]
 

Enumeration values:
MUST_BE_MAPPED_TO_ITSELF  
MUST_BE_MAPPED_TO_1  
CAN_BE_MAPPED_TO_1  

Definition at line 501 of file QEqnSolutions.h.


Constructor & Destructor Documentation

QEqnSolutionsInFreeGroup::QEqnSolutionsInFreeGroup ( const FreeGroup & G,
const Word & equation,
int numOfVar )
 


Member Function Documentation

void QEqnSolutionsInFreeGroup::startComputation ( )
 

void QEqnSolutionsInFreeGroup::continueComputation ( )
 

void QEqnSolutionsInFreeGroup::disableBuildingRegStab ( ) [inline]
 

Definition at line 142 of file QEqnSolutions.h.

void QEqnSolutionsInFreeGroup::enableBuildingRegStab ( ) [inline]
 

Definition at line 143 of file QEqnSolutions.h.

void QEqnSolutionsInFreeGroup::disableBuildingSolutions ( ) [inline]
 

Definition at line 150 of file QEqnSolutions.h.

void QEqnSolutionsInFreeGroup::enableBuildingSolutions ( ) [inline]
 

Definition at line 151 of file QEqnSolutions.h.

bool QEqnSolutionsInFreeGroup::isComputationDone ( ) const [inline]
 

Definition at line 160 of file QEqnSolutions.h.

bool QEqnSolutionsInFreeGroup::isComputationStarted ( ) const [inline]
 

Definition at line 163 of file QEqnSolutions.h.

bool QEqnSolutionsInFreeGroup::haveNewSolution ( ) const [inline]
 

Definition at line 166 of file QEqnSolutions.h.

Referenced by getSolution(), and nextSolution().

bool QEqnSolutionsInFreeGroup::nextSolution ( ) [inline]
 

Definition at line 169 of file QEqnSolutions.h.

bool QEqnSolutionsInFreeGroup::haveNewStabGenerator ( ) const [inline]
 

Definition at line 177 of file QEqnSolutions.h.

Referenced by getStabGenerator(), and nextStabGenerator().

bool QEqnSolutionsInFreeGroup::nextStabGenerator ( ) [inline]
 

Definition at line 181 of file QEqnSolutions.h.

bool QEqnSolutionsInFreeGroup::isBuildingSolutionsEnabled ( ) const [inline]
 

Definition at line 189 of file QEqnSolutions.h.

bool QEqnSolutionsInFreeGroup::isBuildingRegStabEnabled ( ) const [inline]
 

Definition at line 193 of file QEqnSolutions.h.

Endomorphism QEqnSolutionsInFreeGroup::getSolution ( ) [inline]
 

Definition at line 203 of file QEqnSolutions.h.

Automorphism QEqnSolutionsInFreeGroup::getStabGenerator ( ) [inline]
 

Definition at line 214 of file QEqnSolutions.h.

Word QEqnSolutionsInFreeGroup::surfaceForm ( ) [inline]
 

Definition at line 226 of file QEqnSolutions.h.

Automorphism QEqnSolutionsInFreeGroup::toSurfaceForm ( ) [inline]
 

Definition at line 233 of file QEqnSolutions.h.

FreeGroup QEqnSolutionsInFreeGroup::group ( ) const [inline]
 

Definition at line 241 of file QEqnSolutions.h.

Word QEqnSolutionsInFreeGroup::equation ( ) const [inline]
 

Definition at line 242 of file QEqnSolutions.h.

int QEqnSolutionsInFreeGroup::numberOfVariables ( ) const [inline]
 

Definition at line 243 of file QEqnSolutions.h.

int QEqnSolutionsInFreeGroup::numberOfGenerators ( ) const [inline]
 

Definition at line 244 of file QEqnSolutions.h.

int QEqnSolutionsInFreeGroup::numberOfConstants ( ) const [inline]
 

Definition at line 245 of file QEqnSolutions.h.

int QEqnSolutionsInFreeGroup::rank ( ) const [inline]
 

Definition at line 247 of file QEqnSolutions.h.

VectorPtrOf< Endomorphism > QEqnSolutionsInFreeGroup::basicSolutions<Endomorphism> ( ) const [inline]
 

Definition at line 251 of file QEqnSolutions.h.

VectorPtrOf< Automorphism > QEqnSolutionsInFreeGroup::regStabGenerators<Automorphism> ( ) const [inline]
 

Definition at line 256 of file QEqnSolutions.h.

Automorphism QEqnSolutionsInFreeGroup::prefixMap ( ) const [inline]
 

Definition at line 262 of file QEqnSolutions.h.

EquationStatus QEqnSolutionsInFreeGroup::getProcessStatus ( ) const [inline]
 

Definition at line 269 of file QEqnSolutions.h.

Endomorphism QEqnSolutionsInFreeGroup::eliminator ( ) const [inline]
 

Definition at line 273 of file QEqnSolutions.h.

Bool QEqnSolutionsInFreeGroup::isVariable ( const Generator & g ) const [inline, private]
 

Definition at line 316 of file QEqnSolutions.h.

bool QEqnSolutionsInFreeGroup::isConstant ( const Generator & g ) const [inline, private]
 

Definition at line 325 of file QEqnSolutions.h.

void QEqnSolutionsInFreeGroup::buildNewVerticesAndLoopsFrom ( const Word & vertex ) [private]
 

RegularAuto QEqnSolutionsInFreeGroup::buildPath ( const Word & from,
const Word & to ) [private]
 

RegularAuto QEqnSolutionsInFreeGroup::buildPathTo ( const Word & to ) [private]
 

void QEqnSolutionsInFreeGroup::registerEdge ( const Word & source,
const ElementaryRegularAuto & edge,
const Word & target ) [private]
 

void QEqnSolutionsInFreeGroup::buildSolutionsOfOneVertex ( const Word & w ) [private]
 

VectorOf<int> QEqnSolutionsInFreeGroup::checkProperties ( const Word & w ) [private]
 

ListOf<SingularEndo> QEqnSolutionsInFreeGroup::buildSingulars ( const Word & w,
const VectorOf< int > & varProperties ) [private]
 

void QEqnSolutionsInFreeGroup::appendNewSolution ( ListOf< SingularEndo > & solutions,
const SingularEndo & newSolution ) [private]
 

int QEqnSolutionsInFreeGroup::rankOfBasicSolution ( const Endomorphism & solution ) const [private]
 

void QEqnSolutionsInFreeGroup::processOneLoop ( const Edge & edge ) [private]
 

void QEqnSolutionsInFreeGroup::computeSurfaceForm ( ) [private]
 

Referenced by surfaceForm(), and toSurfaceForm().

Word QEqnSolutionsInFreeGroup::extractSquare ( Word & w,
int firstLocation,
int secondLocation ) [private]
 

Word QEqnSolutionsInFreeGroup::extractPinch ( Word & w,
int firstLocation,
int secondLocation ) [private]
 

Word QEqnSolutionsInFreeGroup::extractCommutator ( Word & w,
int xFirstLocation,
int xSecondLocation,
int yFirstLocation ) [private]
 

int QEqnSolutionsInFreeGroup::getLocationOfArbitraryVariable ( const Word & w,
int start,
int stop ) const [private]
 

int QEqnSolutionsInFreeGroup::getPairOfVariable ( Word & w,
int & firstLocation,
int & secondLocation,
bool oppositeOrder ) const [private]
 

Word QEqnSolutionsInFreeGroup::bringToCanonicForm ( Word & squares,
Word & commutators,
Word constants,
Word & pinches ) [private]
 


Friends And Related Function Documentation

ostream& operator<< ( ostream &,
const QEqnSolutionsInFreeGroup & ) [friend]
 


Member Data Documentation

Word QEqnSolutionsInFreeGroup::theEquation [private]
 

Definition at line 418 of file QEqnSolutions.h.

int QEqnSolutionsInFreeGroup::theNumberOfGenerators [private]
 

Definition at line 419 of file QEqnSolutions.h.

int QEqnSolutionsInFreeGroup::theNumberOfVariables [private]
 

Definition at line 420 of file QEqnSolutions.h.

FreeGroup QEqnSolutionsInFreeGroup::theGroup [private]
 

Definition at line 421 of file QEqnSolutions.h.

VectorPtrOf<Automorphism> QEqnSolutionsInFreeGroup::theRegStabGenerators [private]
 

Definition at line 423 of file QEqnSolutions.h.

VectorPtrOf<Endomorphism> QEqnSolutionsInFreeGroup::theBasicSolutions [private]
 

Definition at line 424 of file QEqnSolutions.h.

int QEqnSolutionsInFreeGroup::theRank [private]
 

Definition at line 426 of file QEqnSolutions.h.

Word QEqnSolutionsInFreeGroup::theSurfaceForm [private]
 

Definition at line 427 of file QEqnSolutions.h.

Automorphism QEqnSolutionsInFreeGroup::toSurface [private]
 

Definition at line 428 of file QEqnSolutions.h.

bool QEqnSolutionsInFreeGroup::computationIsStarted [private]
 

Definition at line 432 of file QEqnSolutions.h.

bool QEqnSolutionsInFreeGroup::computationIsDone [private]
 

Definition at line 433 of file QEqnSolutions.h.

int QEqnSolutionsInFreeGroup::solution [private]
 

Definition at line 435 of file QEqnSolutions.h.

int QEqnSolutionsInFreeGroup::generator [private]
 

Definition at line 436 of file QEqnSolutions.h.

Endomorphism QEqnSolutionsInFreeGroup::theEliminator [private]
 

Definition at line 439 of file QEqnSolutions.h.

Automorphism QEqnSolutionsInFreeGroup::startPath [private]
 

Definition at line 479 of file QEqnSolutions.h.

Automorphism QEqnSolutionsInFreeGroup::invStartPath [private]
 

Definition at line 481 of file QEqnSolutions.h.

Word QEqnSolutionsInFreeGroup::root [private]
 

Definition at line 482 of file QEqnSolutions.h.

QuickAssociationsOf<Word, ElementaryRegularAuto> QEqnSolutionsInFreeGroup::maxSubTree [private]
 

Definition at line 483 of file QEqnSolutions.h.

QueueOf<Word> QEqnSolutionsInFreeGroup::newVertices [private]
 

Definition at line 487 of file QEqnSolutions.h.

QueueOf<Edge> QEqnSolutionsInFreeGroup::loops [private]
 

Definition at line 489 of file QEqnSolutions.h.

Endomorphism QEqnSolutionsInFreeGroup::removeVarEndo [private]
 

Definition at line 494 of file QEqnSolutions.h.

SetOf<Endomorphism> QEqnSolutionsInFreeGroup::setOfBasicSolutions [private]
 

Definition at line 497 of file QEqnSolutions.h.

int QEqnSolutionsInFreeGroup::tempRank [private]
 

Definition at line 511 of file QEqnSolutions.h.

SetOf<Automorphism> QEqnSolutionsInFreeGroup::regStabSet [private]
 

Definition at line 517 of file QEqnSolutions.h.

bool QEqnSolutionsInFreeGroup::surfaceFormIsComputed [private]
 

Definition at line 522 of file QEqnSolutions.h.

EquationStatus QEqnSolutionsInFreeGroup::status [private]
 

Definition at line 526 of file QEqnSolutions.h.


The documentation for this class was generated from the following file:
Generated at Tue Jun 19 09:50:03 2001 for Magnus Classes by doxygen1.2.6 written by Dimitri van Heesch, © 1997-2001