Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members

/home/r0/dav/atlas.dir/atlas3/sources/gkmod/klcomputations.h

Go to the documentation of this file.
00001 /*!
00002 \file 
00003 \brief Class definition and function declarations for the class KLComputations.
00004 
00005   [This class has barely been started. It is part of Fokko's plan to
00006   define an ownership structure for the Kazhdan-Lusztig
00007   computations. DV 7/23/06.]
00008 */
00009 /*
00010   This is klcomputations.h
00011   
00012   Copyright (C) 2004,2005 Fokko du Cloux
00013   part of the Atlas of Reductive Lie Groups  
00014 
00015   See file main.cpp for full copyright notice
00016 */
00017 
00018 #ifndef KLCOMPUTATIONS_H  /* guard against multiple inclusions */
00019 #define KLCOMPUTATIONS_H
00020 
00021 #include "klcomputations_fwd.h"
00022 
00023 #include "blocks_fwd.h"
00024 #include "complexredgp_fwd.h"
00025 #include "kgb_fwd.h"
00026 
00027 #include "involutions.h"
00028 
00029 namespace atlas {
00030 
00031 /******** type declarations *************************************************/
00032 
00033 /******** function declarations *********************************************/
00034 
00035 /******** type definitions **************************************************/
00036 
00037 namespace klcomputations {
00038 
00039   /*!
00040 \brief Holding class for computations related to a block of representations.
00041 
00042   Most prominent among these is the computation of
00043   Kazhdan-Lusztig-Vogan polynomials. The idea is to mostly apply a
00044   principle of "lazy evaluation": things are computed when they are
00045   requested, but always remembered once they are computed.
00046 
00047   We make an exception to the laziness principle for the "involutions" part,
00048   which is computed right away.
00049 
00050   [This class has barely been started. It is part of Fokko's plan to
00051   define an ownership structure for the Kazhdan-Lusztig
00052   computations. DV 7/23/06.]
00053   */
00054 class KLComputations {
00055 
00056  private:
00057 
00058   involutions::InvolutionSet d_involutionSet;
00059   std::vector<kgb::KGB> d_kgb;
00060   std::vector<kgb::KGB> d_dualkgb;
00061   std::vector<blocks::Block> d_block;
00062   std::vector<blocks::Block> d_dualblock;
00063 
00064   complexredgp::ComplexReductiveGroup* d_G;
00065 
00066  public:
00067 
00068   KLComputations();
00069   
00070   KLComputations(complexredgp::ComplexReductiveGroup&);  // un-owned pointer
00071 };
00072 
00073 }
00074 
00075 }
00076 
00077 #endif

Generated on Wed Mar 26 16:49:34 2008 for atlas by  doxygen 1.3.9.1