33 void basis(std::vector<matrix::Vector<int> >&,
const bitmap::BitMap&,
34 const FiniteAbelianGroup&);
36 void coset(bitmap::BitMap&,
const bitmap::BitMap&,
GrpNbr,
37 const FiniteAbelianGroup&);
39 const bitmap::BitMap&
cycGenerators(
const FiniteAbelianGroup&);
44 const FiniteAbelianGroup&);
49 bitmap::BitMap
quotReps(
const bitmap::BitMap& H,
const FiniteAbelianGroup& G);
56 const FiniteAbelianGroup&);
108 return d_type == A.
d_type;
115 unsigned int rank()
const {
return d_type.size(); }
119 unsigned long long order()
const {
return d_size; }
123 {
GrpArr result(rank());
to_array(result,x,d_type);
return result; }
126 {
GrpArr result(rank());
to_array(result,v,d_type);
return result; }
144 unsigned long annihilator()
const;
156 unsigned long order(
GrpNbr)
const;
160 unsigned long pairing(
const GrpArr&,
const GrpArr&)
const;
162 unsigned long pairing(
const GrpArr&,
const GrpArr&,
unsigned long)
const;
const bitmap::BitMap & cycGenerators(const FiniteAbelianGroup &A)
Definition: abelian.cpp:495
bool isElementaryAbelian(const std::vector< unsigned long > &c)
Definition: abelian.cpp:560
unsigned long long GrpNbr
element of Abelian group, compact repr.
Definition: abelian_fwd.h:27
bool operator!=(const type_expr &x, const type_expr &y)
Definition: axis-types.h:374
GroupType d_cosource
Definition: abelian.h:203
std::vector< unsigned long > GrpArr
group element, array repr.
Definition: abelian_fwd.h:29
matrix::Matrix_base< unsigned long > Endomorphism
Definition: abelian_fwd.h:32
const GroupType & type() const
Definition: abelian.h:116
GroupType d_type
Definition: abelian.h:88
FiniteAbelianGroup()
Definition: abelian.h:100
std::vector< GrpNbr > GrpNbrList
Definition: abelian_fwd.h:28
void generateSubgroup(bitmap::BitMap &B, GrpNbr x, const FiniteAbelianGroup &A)
Definition: abelian.cpp:530
RationalVector< C2 > operator*(const matrix::Matrix< C1 > &M, const RationalVector< C2 > &v)
Definition: ratvec.cpp:158
unsigned long d_annihilator
Definition: abelian.h:205
unsigned int rank() const
Definition: abelian.h:115
void generators(GrpNbrList &gen, const bitmap::BitMap &B, const FiniteAbelianGroup &A)
Definition: abelian.cpp:550
GroupType d_dest
Definition: abelian.h:202
Definition: abelian.h:197
unsigned long long order() const
Definition: abelian.h:119
matrix::PID_Matrix< unsigned long > d_matrix
Definition: abelian.h:206
GrpNbr toGrpNbr(const GrpArr &a) const
Definition: abelian.h:128
GroupType d_codest
Definition: abelian.h:204
std::vector< unsigned long > GroupType
Definition: abelian_fwd.h:31
bitmap::BitMap quotReps(const bitmap::BitMap &B, const FiniteAbelianGroup &A)
Definition: abelian.cpp:580
void to_array(GrpArr &a, GrpNbr x, const GroupType &t)
Definition: abelian.cpp:605
Definitions and declarations for the BitMap class.
GroupType d_cotype
Definition: abelian.h:95
void coset(bitmap::BitMap &C, const bitmap::BitMap &B, GrpNbr x, const FiniteAbelianGroup &A)
Definition: abelian.cpp:468
const GroupType & cotype() const
Definition: abelian.h:146
GrpArr toArray(GrpNbr x) const
Definition: abelian.h:122
bool operator==(const type_expr &x, const type_expr &y)
Definition: axis-types.cpp:257
Container of a large (more than twice the machine word size) set of bits.
Definition: bitmap.h:52
void basis(std::vector< matrix::Vector< int > > &b, const bitmap::BitMap &B, const FiniteAbelianGroup &A)
Definition: abelian.cpp:427
unsigned long long d_size
Definition: abelian.h:83
GrpArr toArray(const matrix::Vector< int > &v) const
Definition: abelian.h:125
void toEndomorphism(Endomorphism &e, const matrix::PID_Matrix< int > &q, const FiniteAbelianGroup &A)
Definition: abelian.cpp:636
GroupType d_source
Definition: abelian.h:201
GrpNbr to_GrpNbr(const GrpArr &a, const GroupType &t)
Definition: abelian.cpp:652
void transpose(Endomorphism &e, const FiniteAbelianGroup &A)
Definition: abelian.cpp:675
Vertex v
Definition: graph.cpp:116