Equation Class Reference

#include <Equation.h>

List of all members.

Public Member Functions

 Equation (int nGen, int nVar, const Word &eq)
int getTheNumberOfGenerators () const
 Get the number of the generators of the group.
int getTheNumberOfVariables () const
 Get the number of variables in the formula.
const WordgetTheEquation () const
 Get the word presentation of the equation.
bool isQuadratic () const
 Determine if the equation is quadratic.
pair< IntLabeledGraph, map<
Word, int > > 
constructTransformationGraph () const
 Construct the transformation graph for the equation (finite for quadratic equation).
bool trivialSolution () const
 Determine if the equation has trivial solution.

Private Member Functions

bool isGenerator (int g) const
bool isVariable (int g) const
void addEquationToTransformationGraph (const Word &eq, set< Word > &chk_eq, set< Word > &new_eq, const set< int > &permutableGenerators, int x, const Word &im) const
 (Auxiliary) Used in constructTransformationGraph(...)

Private Attributes

int theNumberOfGenerators
 the number of the generators of the group
int theNumberOfVariables
 the number of variables in the formula (the actual number of variables in the equation can be lesser)
Word theEquation
 the presentation of the equation

Friends

ostream & operator<< (ostream &os, const Equation &eq)


Detailed Description

Definition at line 27 of file Equation.h.


Constructor & Destructor Documentation

Equation::Equation int  nGen,
int  nVar,
const Word eq
 


Member Function Documentation

void Equation::addEquationToTransformationGraph const Word eq,
set< Word > &  chk_eq,
set< Word > &  new_eq,
const set< int > &  permutableGenerators,
int  x,
const Word im
const [private]
 

(Auxiliary) Used in constructTransformationGraph(...)

pair< IntLabeledGraph , map< Word , int > > Equation::constructTransformationGraph  )  const
 

Construct the transformation graph for the equation (finite for quadratic equation).

const Word& Equation::getTheEquation  )  const [inline]
 

Get the word presentation of the equation.

Definition at line 54 of file Equation.h.

References theEquation.

int Equation::getTheNumberOfGenerators  )  const [inline]
 

Get the number of the generators of the group.

Definition at line 50 of file Equation.h.

References theNumberOfGenerators.

int Equation::getTheNumberOfVariables  )  const [inline]
 

Get the number of variables in the formula.

Definition at line 52 of file Equation.h.

References theNumberOfVariables.

bool Equation::isGenerator int  g  )  const [private]
 

bool Equation::isQuadratic  )  const
 

Determine if the equation is quadratic.

bool Equation::isVariable int  g  )  const [private]
 

bool Equation::trivialSolution  )  const
 

Determine if the equation has trivial solution.


Friends And Related Function Documentation

ostream& operator<< ostream &  os,
const Equation eq
[friend]
 


Member Data Documentation

Word Equation::theEquation [private]
 

the presentation of the equation

A word theEquation is a sequence of generators. Each generator $g$ is interpreted the following way:

  • if $|g| \le theNumberOfGenerators$ then $g$ is the corresponding generator of the group
  • if $|g| > theNumberOfGenerators$ then $g$ is a variable with index $|g| - theNumberOfGenerators$ raised in the power $\pm 1$ depending on the sign of $g$ .

Definition at line 109 of file Equation.h.

Referenced by getTheEquation().

int Equation::theNumberOfGenerators [private]
 

the number of the generators of the group

Definition at line 99 of file Equation.h.

Referenced by getTheNumberOfGenerators().

int Equation::theNumberOfVariables [private]
 

the number of variables in the formula (the actual number of variables in the equation can be lesser)

Definition at line 101 of file Equation.h.

Referenced by getTheNumberOfVariables().


The documentation for this class was generated from the following file:
Generated on Mon Feb 27 22:47:11 2006 for CRyptography And Groups (CRAG) by  doxygen 1.4.4