Dom::PermutationGroup
--
permutation group
Dom::PermutationGroup
(n, generators <, options>)
creates a domain for the group of permutations of {1,...,n}
generated by generators
.
Dom::PermutationGroup(n)
n | - | positive integer |
generators | - | list of permutations of {1,...,n} |
The domain element Dom::PermutationGroup
(n)(l)
represents the bijective
mapping of the first n positive integers that maps the integer i
to l[i]
, for 1 ≤i ≤n.
Dom::PermutationGroup
(n)(l)
l | - | list or array consisting of the first n integers in some order. |
Cat::Group
Dom::DihedralGroup
, Dom::SymmetricGroup
, combinat::permutations
the identical mapping of the set {1, ..., n } to itself.
_mult(dom a1...)
a1*a2*...*ak
of permutations is defined to
be the mapping that assigns, to every integer i
between 1
and n, the integer a1(a2(...ak(i)
...))
._mult
.
_invert(dom a)
b
such that a*b
is the identity mapping._invert
.
func_call(dom a, integer i)
(...)
, i.e. it
may be called in the form a(i)
.a
at i
, i.e., the integer that i
is mapped to by
the permutation a
; i
must be an integer between 1 and
n.
cycles(dom a)
a
. A cycle
representation is a list [orbit1, ..., orbitk]
; each of the
orbits is a list of integers of the form [i, a(i), a(a(i)),
...]
with just as many elements such that i
does not occur
in it
for a second time; and each integer between 1 and n appears in
exactly one of the orbits.
order(dom a)
a
is defined to be the least positive integer
k
for which ak is the identity.
inversions(dom a)
sign(dom a)
a
. The sign
of a permutation is defined to be 1 if its number of inversions is
even, and -1 otherwise.
random()
allElements()
size()
convert(any x)
x
into a permutation. This is
only possible if x
is a list or an array in which each of the
integers 1 through n occurs exactly once.
convert_to(dom a, any T)
a
into type T
. Currently, only a
conversion into a list of type DOM_LIST
is possible.
expr(dom a)
a
.We construct the cyclic group of order 4, generated by the cycle (1,2,3,4).:
>> G := Dom::PermutationGroup(4, [[[1,2,3,4]]])
Dom::PermutationGroup(4, [[[1, 2, 3, 4]]])
It has 4 elements:
>> G::size;
G::allElements();
4 [[2, 3, 4, 1], [3, 4, 1, 2], [4, 1, 2, 3], [1, 2, 3, 4]]
We construct a permutation of G
by providing the images
of 1, 2, etc.:
>> p := G([3,4,1,2]);
p(1), p(2), p(3), p(4);
[3, 4, 1, 2] 3, 4, 1, 2
We construct a permutation from its cycle notation:
>> G([[1,2],[3,4]])
[2, 1, 4, 3]
Ax::canonicalRep
MuPAD Combinat, an open source algebraic combinatorics package