atlas  0.6
Classes | Typedefs | Functions | Variables
atlas::kl Namespace Reference

Classes

class  KLContext
 
class  KLPolEntry
 

Typedefs

typedef unsigned int KLCoeff
 
typedef polynomials::Safe_Poly< KLCoeffKLPol
 
typedef unsigned int KLIndex
 
typedef KLCoeff MuCoeff
 
typedef std::vector< KLPolKLStore
 
typedef KLStore::const_reference KLPolRef
 
typedef std::vector< KLIndexKLRow
 
typedef std::vector< BlockEltPrimitiveRow
 
typedef std::vector< std::pair< BlockElt, MuCoeff > > MuRow
 

Functions

void wGraph (wgraph::WGraph &wg, const KLContext &klc)
 Puts in wg the W-graph for this block. More...
 

Variables

const KLPol Zero
 Polynomial 0, which is stored as a vector of size 0. More...
 
const KLPol One (0, KLCoeff(1))
 Polynomial 1.q^0. More...
 

Typedef Documentation

typedef unsigned int atlas::kl::KLCoeff
typedef unsigned int atlas::kl::KLIndex
typedef KLStore::const_reference atlas::kl::KLPolRef
typedef std::vector<KLIndex> atlas::kl::KLRow
typedef std::vector<KLPol> atlas::kl::KLStore
typedef std::vector<std::pair<BlockElt,MuCoeff> > atlas::kl::MuRow
typedef std::vector<BlockElt> atlas::kl::PrimitiveRow

Function Documentation

void atlas::kl::wGraph ( wgraph::WGraph wg,
const KLContext klc 
)

Puts in wg the W-graph for this block.

Explanation: the W-graph is a graph with one vertex for each element of the block; the corresponding descent set is the tau-invariant, i.e. the set of generators s that are either complex descents, real type I or II, or imaginary compact. Let x < y in the block such that mu(x,y) != 0, and descent(x) != descent(y). Then there is an edge from x to y unless descent(x) is contained in descent(y), and an edge from y to x unless descent(y) is contained in descent(x). Note that the latter containment always holds when the length difference is > 1, so that in that case there will only be an edge from x to y (the edge must be there because we already assumed that the descent sets were not equal.) In both cases, the coefficient corresponding to the edge is mu(x,y).

NOTE: if I'm not mistaken, the edgelists come already out sorted.

Variable Documentation

const KLPol atlas::kl::One(0, KLCoeff(1))

Polynomial 1.q^0.

const KLPol atlas::kl::Zero

Polynomial 0, which is stored as a vector of size 0.