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
[legend]
Collaboration diagram for atlas::kgb::KGB:
Collaboration graph
[legend]

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
private
Enumerator
BruhatConstructed 
NumStates 

Constructor & Destructor Documentation

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

Member Function Documentation

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

The based Tits group.

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

Reimplemented from atlas::kgb::KGB_base.

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

The Tits group.

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

Member Data Documentation

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

records Cartan classes of involutions

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

Owned pointer to the based Tits group.

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

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
private
const RealReductiveGroup& atlas::kgb::KGB::G
private
std::vector<TorusPart> atlas::kgb::KGB::left_torus_part
private

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