application: group
The application group provides basic functionality for working with permutation groups. An object 'Group' is defined by a list of generators describing the permutation of some indices. The object 'GroupOfCone' encapsulates symmetry information of a cone. It can act on the indices of rays (DOMAIN=>1), of facets(2), or on coordinates(3).
imports from: common
Objects
-
A finite permutation group.
Properties of Group
-
-
-
GENERATORS: common::Array<Array<Int>>
Some generating set for the group. All generators must have the same length DEGREE. FIXME: Concrete description as second row of permutation representation
-
-
-
-
-
-
-
UNDOCUMENTED
Properties of GroupOfCone
-
-
REPRESENTATIVE_FACETS: common::Matrix<Rational, NonSymmetric>
Representatives for the orbits of facets of the cone under this group action. No redundancies are allowed. FIXME: Could cause problems since representatives are not unique! The order should correspond to the order of the orbits of facets!
-
REPRESENTATIVE_LINEAR_SPAN: common::Matrix<Rational, NonSymmetric>
Representatives for the orbits of the linear span of the cone under this group action. No redundancies are allowed. FIXME: Could cause problems since representatives are not unique! The order should correspond to the order of the orbits of facets!
-
REPRESENTATIVE_RAYS: common::Matrix<Rational, NonSymmetric>
Representatives for the orbits of rays of the cone under this group action. No redundancies are allowed. FIXME: Could cause problems since representatives are not unique! How to do canonicalization? The order should correspond to the order of the orbits of rays!
-
-
-
COORDINATES_IN_ORBITS: common::Array<Set<Int>>
An array that contains a set of indices (of rays) for each orbit of coordinates.
-
DOMAIN: common::Int
Indicates on which domain the group action is defined, see Enum defined in 'apps/polytope/rules/permlib.rules' . OnRays=1: action on the (indices of the) rays OnFacets=2: action on the facets OnCoords=3: action on the coordinates
-
FACETS_IN_ORBITS: common::Array<Set<Int>>
An array that contains a set of indices (of facets) for each orbit of facets. The indices of the facets correspond to their indices in the polymake object.
-
INEQUALITIES_IN_ORBITS: common::Array<Set<Int>>
An array that contains a set of indices (of inequalities) for each orbit of inequalities. The indices of the inequalities correspond to their indices in the polymake object.
-
INPUT_RAYS_IN_ORBITS: common::Array<Set<Int>>
An array that contains a set of indices (of input rays) for each orbit of rays. The indices of the input rays correspond to their indices in the polymake object.
-
-
-
-
-
-
-
-
RAYS_IN_ORBITS: common::Array<Set<Int>>
An array that contains a set of indices (of rays) for each orbit of rays. The indices of the rays correspond to their indices in the polymake object.
-
SYMMETRIC_FACETS: common::Matrix<Rational, NonSymmetric>
The symmetrized facets of the cone. Same order as in the FACETS-section. Explanation: The symmetry group of a cone also act on the facets. If the cone is not full-dimensional, however, the facets may appear unsymmetric. Nevertheless, there always exists some symmetric facet description.
-
SYMMETRIC_RAYS: common::Matrix<Rational, NonSymmetric>
The symmetrized rays of the cone. Same order as in the RAYS-section. Explanation: The symmetry group of a cone also act on the rays. If the cone has a non-trivial lineality space, however, the rays may appear unsymmetric. Nevertheless, there always exists some symmetric ray description.
-
-
-
UNDOCUMENTED
Properties of GroupOfPolytope
-
-
N_ORBITS_OF_POINTS: common::Int
The number of orbits of points. Alias for property N_ORBITS_OF_INPUT_RAYS.
-
N_ORBITS_OF_VERTICES: common::Int
The number of orbits of vertices. Alias for property N_ORBITS_OF_RAYS.
-
N_REPRESENTATIVE_VERTICES: common::Int
The number of vertex representatives. Alias for property N_REPRESENTATIVE_RAYS.
-
POINTS_IN_ORBITS: common::Array<Set<Int>>
An array that contains a set of indices (of points) for each orbit of points. The indices of the points correspond to their indices in the polymake object. Alias for property INPUT_RAYS_IN_ORBITS.
-
REPRESENTATIVE_AFFINE_HULL: common::Matrix<Rational, NonSymmetric>
Representatives for the orbits of linear span of the polytope under this group action. No redundancies are allowed. Alias for property REPRESENTATIVE_LINEAR_SPAN.
-
REPRESENTATIVE_VERTICES: common::Matrix<Rational, NonSymmetric>
Representatives for the orbits of vertices of the polytope under this group action. No redundancies are allowed. Alias for property REPRESENTATIVE_RAYS.
-
SYMMETRIC_VERTICES: common::Matrix<Rational, NonSymmetric>
The symmetrized vertices of the polytope. Same order as in the VERTICES-section. Explanation: The symmetry group of a polytope also act on the vertices. If the polytope has a non-trivial lineality space, however, the vertices may appear unsymmetric. Nevertheless, there always exists some symmetric vertex description.
-
VERTICES_IN_ORBITS: common::Array<Set<Int>>
An array that contains a set of indices (of vertices) for each orbit of vertices. The indices of the vertices correspond to their indices in the polymake object. Alias for property RAYS_IN_ORBITS.
-
-
User Functions
-
-
group_from_generators (gens, group)
-
-
-
are_in_same_orbit (group, vec1, vec2) → bool
-
compute_complete_coord_act_orbit (group, mat) → ListReturn
Computes the orbit of the set of all vectors of the matrix mat under group, which acts by permuting coordinates. The set of vectors does not have to be complete.
Parameters
Group group a group of coordinate permutationsMatrix<Scalar> mat some input vectorsReturns
ListReturn a matrix containing all generated vectors , and an array containing the orbits of generated vectors. -
compute_coord_act_orbits (group, mat) → Array
Computes the orbits of the vectors (homogenized) of a matrix mat by permuting the coordinates of the vectors (skipping the homogenizing coordinate). The group must act on the set of vectors. Choose the function 'compute_complete_coord_act_orbit' if your set is not complete.
Parameters
Group group a group acting on the cone by permuting the coordinatesMatrix<Scalar> mat a matrix with vectors on which the group acts by coordinate permutationReturns
Array an array of the orbits under the action on the coordinates -
compute_domain_orbits (group) → Array
-
compute_induced_orbits (group, inc) → Array
Computes the orbits of a set on which an action is induced. The incidences between the domain elements and the elements in the set are given by an incidence matrix inc.
Parameters
Group group a group of a coneIncidenceMatrix inc the incidences between domain elements and elements on which an action is inducedReturns
Array an array of the orbits of the induced action
-
-
-
construct_cyclic_group (degree) → Group
-
construct_symmetric_group (degree) → Group
-
-
-
stabilizer_of_set (group, set) → Group
-
stabilizer_of_vector (group, vec) → Group
-
-
-
group_from_cyclic_notation0 (group) → Group
-
group_from_cyclic_notation1 (group) → Group
-
group_from_permlib_cyclic_notation (gens, degree) → Group
Constructs a Group from generators given in permlib cyclic notation. (permlib cyc_not: indices seperated by whitespace, generators seperated by commas)
-
group_to_cyclic_notation (the) → String
-