atlas  0.6
Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
atlas::kgb::KGB Class Reference

#include <kgb.h>

Inheritance diagram for atlas::kgb::KGB:
Inheritance graph
Collaboration diagram for atlas::kgb::KGB:
Collaboration graph

Public Member Functions

 KGB (RealReductiveGroup &GR, const BitMap &Cartan_classes, bool dual_twist=false)
 ~KGB ()
const TitsCoset & basedTitsGroup () const
 The based Tits group. More...
const TitsGroup & titsGroup () const
 The Tits group. More...
TorusPart torus_part (KGBElt x) const
RatCoweight base_grading_vector () const
RatCoweight torus_factor (KGBElt x) const
TitsElt titsElt (KGBElt x) const
size_t torus_rank () const
Grading base_grading () const
bool simple_imaginary_grading (KGBElt x, RootNbr alpha) const
KGBElt lookup (TitsElt a) const
BruhatOrder & bruhatOrder ()
const poset::PosetbruhatPoset ()
virtual std::ostream & print (std::ostream &strm, KGBElt x) const
- Public Member Functions inherited from atlas::kgb::KGB_base
 KGB_base (const KGB_base &org)
virtual ~KGB_base ()
size_t rank () const
size_t size () const
inv_index nr_involutions () const
const InnerClass & innerClass () const
const RootDatum & rootDatum () const
const WeylGroup & weylGroup () const
const TwistedWeylGroup & twistedWeylGroup () const
KGBElt cross (weyl::Generator s, KGBElt x) const
KGBElt cayley (weyl::Generator s, KGBElt x) const
KGBEltPair inverseCayley (weyl::Generator s, KGBElt x) const
KGBElt any_Cayley (weyl::Generator s, KGBElt x) const
KGBElt cross (const WeylWord &ww, KGBElt x) const
KGBElt cross (KGBElt x, const WeylWord &ww) const
unsigned int length (KGBElt x) const
KGBElt Hermitian_dual (KGBElt x) const
const TwistedInvolution & nth_involution (inv_index n) const
const TwistedInvolution & involution (KGBElt x) const
const WeightInvolutioninvolution_matrix (KGBElt x) const
InvolutionNbr inv_nr (KGBElt x) const
const DescentSetdescent (KGBElt x) const
bool isDescent (weyl::Generator s, KGBElt x) const
const gradings::Statusstatus (KGBElt x) const
gradings::Status::Value status (weyl::Generator s, KGBElt x) const
bool isComplexDescent (weyl::Generator s, KGBElt x) const
bool isDoubleCayleyImage (weyl::Generator s, KGBElt x) const
bool isAscent (weyl::Generator s, KGBElt x) const
size_t weylLength (KGBElt x) const
KGBEltPair packet (KGBElt x) const
KGBEltPair tauPacket (const TwistedInvolution &) const
size_t packet_size (const TwistedInvolution &) const
virtual CartanNbr Cartan_class (KGBElt x) const

Private Types

enum  State { BruhatConstructed, NumStates }

Private Member Functions

 KGB (const KGB &)
KGBoperator= (const KGB &)
bool is_dual_twist_stable (const RealReductiveGroup &GR, TorusPart &shift) const
void fillBruhat ()

Private Attributes

const RealReductiveGroup & G
std::vector< inv_indexCartan
 records Cartan classes of involutions More...
std::vector< TorusPart > left_torus_part
BitSet< NumStatesd_state
BruhatOrder * d_bruhat
 Owned pointer to the Bruhat order on KGB (or NULL). More...
TitsCoset * d_base
 Owned pointer to the based Tits group. More...

Additional Inherited Members

- Protected Types inherited from atlas::kgb::KGB_base
typedef unsigned int inv_index
- Protected Member Functions inherited from atlas::kgb::KGB_base
 KGB_base (const InnerClass &GC, unsigned int ss_rank)
void reserve (size_t n)
void add_element ()
- Protected Attributes inherited from atlas::kgb::KGB_base
const InnerClass & ic
std::vector< std::vector< KGBfields > > data
std::vector< EltInfoinfo
std::vector< InvolutionNbrinv_nrs
std::vector< inv_indexinv_loc
std::vector< KGBEltfirst_of_tau
 to help find range of elements with fixed twisted involution More...

Member Enumeration Documentation

enum atlas::kgb::KGB::State

Constructor & Destructor Documentation

atlas::kgb::KGB::KGB ( RealReductiveGroup &  GR,
const BitMap &  Cartan_classes,
bool  dual_twist = false 
atlas::kgb::KGB::~KGB ( )
atlas::kgb::KGB::KGB ( const KGB )

Member Function Documentation

Grading atlas::kgb::KGB::base_grading ( ) const
RatCoweight atlas::kgb::KGB::base_grading_vector ( ) const
const TitsCoset& atlas::kgb::KGB::basedTitsGroup ( ) const

The based Tits group.

BruhatOrder& atlas::kgb::KGB::bruhatOrder ( )
const poset::Poset & atlas::kgb::KGB::bruhatPoset ( )
void atlas::kgb::KGB::fillBruhat ( )
bool atlas::kgb::KGB::is_dual_twist_stable ( const RealReductiveGroup &  GR,
TorusPart &  shift 
) const
KGBElt atlas::kgb::KGB::lookup ( TitsElt  a) const
KGB& atlas::kgb::KGB::operator= ( const KGB )
std::ostream & atlas::kgb::KGB::print ( std::ostream &  strm,
KGBElt  x 
) const

Reimplemented from atlas::kgb::KGB_base.

bool atlas::kgb::KGB::simple_imaginary_grading ( KGBElt  x,
RootNbr  alpha 
) const
TitsElt atlas::kgb::KGB::titsElt ( KGBElt  x) const
const TitsGroup& atlas::kgb::KGB::titsGroup ( ) const

The Tits group.

RatCoweight atlas::kgb::KGB::torus_factor ( KGBElt  x) const
TorusPart atlas::kgb::KGB::torus_part ( KGBElt  x) const
size_t atlas::kgb::KGB::torus_rank ( ) const

Member Data Documentation

std::vector<inv_index> atlas::kgb::KGB::Cartan

records Cartan classes of involutions

TitsCoset* atlas::kgb::KGB::d_base

Owned pointer to the based Tits group.

BruhatOrder* atlas::kgb::KGB::d_bruhat

Owned pointer to the Bruhat order on KGB (or NULL).

The class BruhatOrder contains a Poset describing the full partial order, and in addition the Hasse diagram (set of all covering relations).

BitSet<NumStates> atlas::kgb::KGB::d_state
const RealReductiveGroup& atlas::kgb::KGB::G
std::vector<TorusPart> atlas::kgb::KGB::left_torus_part

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