CAPD RedHom Library
HomAlgFunctors< P_FreeModule, P_ReducibleFreeChainComplexType > Class Template Reference

#include <capd/homAlgebra/homAlgFunctors.hpp>

Public Types

typedef P_FreeModule FreeModuleType
 
typedef FreeModuleType::IntType IntType
 
typedef FreeModuleType::MatrixType::ScalarType ScalarType
 
typedef HomologySignature< ScalarType, IntTypeHomologySignatureType
 
typedef P_ReducibleFreeChainComplexType ReducibleFreeChainComplexType
 
typedef FreeChainComplex< FreeModuleTypeFCComplex
 
typedef capd::auxil::Functor< CRef< HomologySignatureType >, CRef< ReducibleFreeChainComplexType > > HomSign_RFCComplex
 
typedef capd::auxil::Functor< CRef< QuotientGradedModule< FreeModuleType > >, CRef< FCComplex > > Homology_FCComplex
 

Static Public Member Functions

static CRef< QuotientGradedModule< FreeModuleType > > HomologyViaSmith (CRef< FreeChainComplex< FreeModuleType > > A_fccCR)
 
static CRef< HomologySignatureTypehomSignViaSmith (CRef< FreeChainComplex< FreeModuleType > > A_fccCR)
 
static CRef< HomologySignatureTypehomSignViaAR (CRef< ReducibleFreeChainComplexType > A_rfccCR)
 
static CRef< HomologySignatureTypehomSignViaAR_Random (CRef< ReducibleFreeChainComplexType > A_rfccCR)
 
static CRef< HomologySignatureTypehomSignViaAR_Sorted (CRef< ReducibleFreeChainComplexType > A_rfccCR)
 
static CRef< HomologySignatureTypehomSignViaAR_LocallySorted (CRef< ReducibleFreeChainComplexType > A_rfccCR)
 

Static Public Attributes

static Homology_FCComplex homology_Smith_FCComplex
 
static ReducibleFreeChainComplexType::ReducibleFreeChainComplex_void_Ptr reduce
 
static HomSign_RFCComplex homSign_ArRandom_RFCComplex
 
static HomSign_RFCComplex homSign_ArSorted_RFCComplex
 
static HomSign_RFCComplex homSign_ArLocallySorted_RFCComplex
 

Member Typedef Documentation

template<typename P_FreeModule , typename P_ReducibleFreeChainComplexType = ReducibleFreeChainComplex<P_FreeModule>>
typedef FreeChainComplex<FreeModuleType> HomAlgFunctors< P_FreeModule, P_ReducibleFreeChainComplexType >::FCComplex
template<typename P_FreeModule , typename P_ReducibleFreeChainComplexType = ReducibleFreeChainComplex<P_FreeModule>>
typedef P_FreeModule HomAlgFunctors< P_FreeModule, P_ReducibleFreeChainComplexType >::FreeModuleType
template<typename P_FreeModule , typename P_ReducibleFreeChainComplexType = ReducibleFreeChainComplex<P_FreeModule>>
typedef capd::auxil::Functor<CRef<QuotientGradedModule<FreeModuleType> >,CRef<FCComplex> > HomAlgFunctors< P_FreeModule, P_ReducibleFreeChainComplexType >::Homology_FCComplex
template<typename P_FreeModule , typename P_ReducibleFreeChainComplexType = ReducibleFreeChainComplex<P_FreeModule>>
typedef HomologySignature<ScalarType, IntType> HomAlgFunctors< P_FreeModule, P_ReducibleFreeChainComplexType >::HomologySignatureType
template<typename P_FreeModule , typename P_ReducibleFreeChainComplexType = ReducibleFreeChainComplex<P_FreeModule>>
typedef capd::auxil::Functor<CRef<HomologySignatureType>,CRef<ReducibleFreeChainComplexType> > HomAlgFunctors< P_FreeModule, P_ReducibleFreeChainComplexType >::HomSign_RFCComplex
template<typename P_FreeModule , typename P_ReducibleFreeChainComplexType = ReducibleFreeChainComplex<P_FreeModule>>
typedef FreeModuleType::IntType HomAlgFunctors< P_FreeModule, P_ReducibleFreeChainComplexType >::IntType
template<typename P_FreeModule , typename P_ReducibleFreeChainComplexType = ReducibleFreeChainComplex<P_FreeModule>>
typedef P_ReducibleFreeChainComplexType HomAlgFunctors< P_FreeModule, P_ReducibleFreeChainComplexType >::ReducibleFreeChainComplexType
template<typename P_FreeModule , typename P_ReducibleFreeChainComplexType = ReducibleFreeChainComplex<P_FreeModule>>
typedef FreeModuleType::MatrixType::ScalarType HomAlgFunctors< P_FreeModule, P_ReducibleFreeChainComplexType >::ScalarType

Member Function Documentation

template<typename P_FreeModule , typename P_ReducibleFreeChainComplexType = ReducibleFreeChainComplex<P_FreeModule>>
static CRef<HomologySignatureType> HomAlgFunctors< P_FreeModule, P_ReducibleFreeChainComplexType >::homSignViaAR ( CRef< ReducibleFreeChainComplexType A_rfccCR)
inlinestatic
template<typename P_FreeModule , typename P_ReducibleFreeChainComplexType = ReducibleFreeChainComplex<P_FreeModule>>
static CRef<HomologySignatureType> HomAlgFunctors< P_FreeModule, P_ReducibleFreeChainComplexType >::homSignViaSmith ( CRef< FreeChainComplex< FreeModuleType > >  A_fccCR)
inlinestatic

Member Data Documentation

template<typename P_FreeModule , typename P_ReducibleFreeChainComplexType = ReducibleFreeChainComplex<P_FreeModule>>
Homology_FCComplex HomAlgFunctors< P_FreeModule, P_ReducibleFreeChainComplexType >::homology_Smith_FCComplex
static
template<typename P_FreeModule , typename P_ReducibleFreeChainComplexType = ReducibleFreeChainComplex<P_FreeModule>>
HomSign_RFCComplex HomAlgFunctors< P_FreeModule, P_ReducibleFreeChainComplexType >::homSign_ArLocallySorted_RFCComplex
static
template<typename P_FreeModule , typename P_ReducibleFreeChainComplexType = ReducibleFreeChainComplex<P_FreeModule>>
HomSign_RFCComplex HomAlgFunctors< P_FreeModule, P_ReducibleFreeChainComplexType >::homSign_ArRandom_RFCComplex
static
template<typename P_FreeModule , typename P_ReducibleFreeChainComplexType = ReducibleFreeChainComplex<P_FreeModule>>
HomSign_RFCComplex HomAlgFunctors< P_FreeModule, P_ReducibleFreeChainComplexType >::homSign_ArSorted_RFCComplex
static
template<typename P_FreeModule , typename P_ReducibleFreeChainComplexType = ReducibleFreeChainComplex<P_FreeModule>>
ReducibleFreeChainComplexType::ReducibleFreeChainComplex_void_Ptr HomAlgFunctors< P_FreeModule, P_ReducibleFreeChainComplexType >::reduce
static