A high level interface implementing a direct product of symmetric groups.
More...
#include <abstract_symmetric_product.h>
|
| template<typename InputIterator > |
| | AbstractSymmetricProduct (InputIterator begin, InputIterator end) |
| | constructor More...
|
| |
| virtual AbstractPermutationGroup * | setStabilizer (const std::vector< dom_int > &s) const |
| | computes the stabilizer of a set More...
|
| |
|
virtual OrbitList * | orbits () const |
| | computes all orbits
|
| |
| virtual OrbitList * | orbits (const std::vector< dom_int > &s) const |
| | computes all orbits which contain a given set of elements More...
|
| |
| virtual bool | isLexMinSet (const std::vector< dom_int > &setIndices, const std::vector< dom_int > &rankIndices) const |
| | checks whether a set is lexicographically minimal with respect to a given ordering of indices More...
|
| |
|
virtual AbstractGroupType | type () const |
| | implementation type of this abstract class
|
| |
|
virtual | ~AbstractPermutationGroup () |
| | destructor
|
| |
|
template<typename Integer > |
| Integer | order () const |
| | order of the group
|
| |
|
boost::uint64_t | order () const |
| | order of the group
|
| |
|
|
virtual void | transversalSizes (std::vector< unsigned long > &sizes) const |
| | fills a list with sizes of transversals along a stabilizer chain
|
| |
|
|
typedef std::list< std::set< dom_int > > | OrbitList |
| | typedef for a list of orbits, each of which is a set
|
| |
A high level interface implementing a direct product of symmetric groups.
◆ AbstractSymmetricProduct()
template<typename InputIterator >
| permlib::AbstractSymmetricProduct::AbstractSymmetricProduct |
( |
InputIterator |
begin, |
|
|
InputIterator |
end |
|
) |
| |
|
inline |
constructor
The group is constructed from a list of lists. Each inner list contains an orbit of indices on which a symmetric group acts.
- Parameters
-
| begin | begin iterator which in turn points to iterators |
| end | end iterator which in turn points to iterators |
◆ isLexMinSet()
| bool permlib::AbstractSymmetricProduct::isLexMinSet |
( |
const std::vector< dom_int > & |
setIndices, |
|
|
const std::vector< dom_int > & |
rankIndices |
|
) |
| const |
|
inlinevirtual |
checks whether a set is lexicographically minimal with respect to a given ordering of indices
- Parameters
-
| setIndices | indices of the set for which minimality has to checked |
| rankIndices | list of indices; the order of these indices defines a partial order on {1..n} |
- Returns
- true iff set is minimal with respect to given ordering
Implements permlib::AbstractPermutationGroup.
◆ orbits()
computes all orbits which contain a given set of elements
- Parameters
-
| s | set of elements of which orbit has to be computed; vector must be sorted |
- Returns
- all orbits of the group which contain an elements from s
Implements permlib::AbstractPermutationGroup.
◆ setStabilizer()
The documentation for this class was generated from the following file: