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: