Named discrete groups

RepLAB provides constructions of standard discrete groups.

General (signed) permutation groups are the two groups below.

  • SymmetricGroup: Describes the symmetric group on a given domain.

  • S: Shorthand for the construction of a symmetric group.

  • SignedSymmetricGroup: Describes the signed symmetric group.

Then we distinguish particular groups.

  • A: Describes the alternating group on a given domain.

  • C: Describes the cyclic group on a given domain.

  • D: Describes the dihedral group on a given domain.

  • KleinFourGroup: Describes the Klein four-group

  • QuaternionGroup: Describes the quaternion group of order 8.

SymmetricGroup

class replab.SymmetricGroup(domainSize)

Bases: replab.PermutationGroup

The symmetric group S(n), i.e. all permutations over n = “domainSize” elements

Example

>>> S5 = replab.S(5);
>>> S5.order
   ans =
   120

Own members

irrep(self, partition, form)

Returns the irreducible representation of this symmetric group corresponding the given Young Diagram

Example

>>> S5 = replab.S(5); % doctest: +cyclotomic
>>> rep = S5.irrep([3 2], 'specht');
>>> rep.dimension
      5
>>> rep = S5.irrep([3 2], 'seminormal');
>>> rep.dimension
      5
>>> rep = S5.irrep([3 2], 'orthogonal');
>>> rep.dimension
      5
Parameters
  • partition (integer(1,*)) – The partition corresponding the Young Diagram, with elements listed in decreasing order (e.g [3 3 1] represents the partition of 7 elements: 7 = 3+3+1

  • form ('specht', 'seminormal', or 'orthogonal') – The form the irrep takes. Default is ‘specht’.

Note: ‘specht’ is slower to construct than ‘seminormal’ or ‘orthogonal’ but, unlike them, has integer entries.

Returns

The corresponding irreducible representation

Return type

replab.Rep

static irrepDimension(partition)

Returns the dimension of the irreducible representation of a symmetric group corresponding a Young Diagram

Example

>>> S5 = replab.S(5);
>>> rep = S5.irrep([3 2]);
>>> rep.dimension
      5
>>> S5.irrepDimension([3 2])
      5
Parameters

partition (integer(1,*)) – The partition corresponding the Young Diagram, with elements listed in decreasing order (e.g [5 3 1] represents the partition of 9 elements 9 = 5+3+1

Returns

The dimension of the corresponding irreducible representation.

Return type

integer

static make(n)

Constructs the symmetric over a given domain size

This static method keeps the constructed copies of S(n) in cache.

Parameters

domainSize (integer) – Domain size, must be > 0

Returns

The constructed or cached symmetric group

Return type

SymmetricGroup

S

replab.S(domainSize)

Returns the symmetric group acting on a certain domain size

Alias for replab.PermutationGroup.symmetric

Parameters

domainSize (integer) – Domain size, must be >= 0

Returns

Symmetric group

Return type

replab.PermutationGroup

SignedSymmetricGroup

replab.SignedSymmetricGroup

A

replab.A(n)

Constructs the alternating group

Parameters

n (integer) – Group degree

Returns

The alternating group of degree n

Return type

replab.PermutationGroup

C

replab.C(n)

Describes cyclic permutations over n = “domainSize” elements

Parameters

n (integer) – Cyclic group order and domain size

Returns

The cyclic group of given order/domain size

Return type

replab.PermutationGroup

D

replab.D(n)

Constructs the dihedral group of order 2*n

This corresponds to the group of symmetries of the polygon with n vertices

Parameters

n (integer) – Half the dihedral group order

Returns

The dihedral group permuting the vertices of the n-gon

Return type

replab.PermutationGroup

KleinFourGroup

replab.KleinFourGroup()

Constructs the Klein Four-Group

This corresponds to the symmetry group of a non-square rectangle, and corresponds to the direct product S2 x S2.

Returns

The Klein four-group as a permutation gorup

Return type

replab.PermutationGroup

QuaternionGroup

replab.QuaternionGroup()

Returns the quaternion group as a signed permutation group

The quaternion group acts on the {1, j, k, l} basis elements.

Returns

The quaternion group

Return type

SignedPermutationGroup