Goto Chapter: Top 1 2 3 4 5 6 7 Ind

### 7 Signed Permutations

We provide signed permutations, that is permutations that can additionally change the sign of their result.

Assume $$n \in \mathbb{N}$$, then a signed permutation on $$n$$ points is a permutation $$\pi$$ on $$\{ 1 \ldots n \}$$ together with signs $$sgn : \{ 1 .. n \} \rightarrow \{-1,1\}$$. A signed permutation on $$n$$ points acts on the set $$\{ -n \ldots 1, 1 \ldots n \}$$ by $$\omega ^ { (\pi, sgn) } = sgn(\omega)\cdot sgn(|\omega|^\pi) \cdot (|\omega|^\pi)$$.

We provide two representations of signed permutations, one as a list of images IsSignedPermListRep (7.2-8) and one formed as pair of a permutation and a sign map IsSignedPermRep (7.2-7). Our benchmarks indicate that a list of images is the better representation, and hence this is the default.

To get started with signed permutations consider the following example

gap> s := SignedPerm([2,-1]);
<signed permutation in list rep>
gap> 1 ^ s;
2
gap> 2 ^ s;
-1
gap> OnPoints(2, s);
-1


One can form groups out of signed permutations

gap> r := SignedPerm([-1,3,-2,4]);; t := SignedPerm([3,1,4,2]);;
gap> G := Group(r,t);
<group with 2 generators>
gap> Size(G);
32
gap> Orbit(G, 1, OnPoints);
[ 1, -1, 3, -3, -2, 4, 2, -4 ]
gap> Stabilizer(G, 1, OnPoints);
<group of size 4 with 9 generators>


Note that currently the package does not make an effort to exploit the special structure of signed permutation groups as permutation groups.

#### 7.1 Different Representations

To create signed permutations in the different representations, we provide a constructor.

gap> r := NewSignedPerm(IsSignedPermRep, [-1,3,-2,4]);;
gap> t := SignedPerm(IsSignedPermRep, [3,1,4,2]);;
gap> G := Group(r,t);
<group with 2 generators>
gap> Size(G);
32
gap> r := NewSignedPerm(IsSignedPermListRep, [-1,3,-2,4]);;
gap> t := SignedPerm(IsSignedPermListRep, [3,1,4,2]);;
gap> G := Group(r,t);
<group with 2 generators>
gap> Size(G);
32


#### 7.2 Low-Level Descriptions

##### 7.2-1 IsSignedPerm
 ‣ IsSignedPerm( arg ) ( filter )

Returns: true or false

Category of signed permutations

##### 7.2-2 ListSignedPerm
 ‣ ListSignedPerm( perm ) ( operation )

Convert a signed permutation into a list of images, equivalent to List([1..LargestMovedPoint(s)], x -> x^s);

##### 7.2-3 ListSignedPerm
 ‣ ListSignedPerm( arg1, arg2 ) ( operation )

Convert a signed permutation to a list of images of length len. Arguments perm, len

##### 7.2-4 SignedPerm
 ‣ SignedPerm( arg ) ( function )

Given a list of signed images create a signed permutation object in IsSignedPermListRep (7.2-8).

##### 7.2-5 NewSignedPerm
 ‣ NewSignedPerm( arg1, arg2 ) ( constructor )

##### 7.2-6 NewSignedPerm
 ‣ NewSignedPerm( arg1, arg2, arg3 ) ( constructor )

##### 7.2-7 IsSignedPermRep
 ‣ IsSignedPermRep( arg ) ( filter )

Returns: true or false

Representation of signed permutations as a permutation and a vector of signs.

##### 7.2-8 IsSignedPermListRep
 ‣ IsSignedPermListRep( arg ) ( filter )

Returns: true or false

Representation of signed permutations as a list of signed images

##### 7.2-9 OnPosPoints
 ‣ OnPosPoints( arg ) ( function )

Only act as a permutation on $$\{ 1\ldots n\}$$

##### 7.2-10 LargestMovedPoint
 ‣ LargestMovedPoint( arg ) ( attribute )

The largest point that is moved by the signed permutation, where moving includes changing the sign.

##### 7.2-11 RandomSignedPermList
 ‣ RandomSignedPermList( arg ) ( function )

Create a random list of images that can be used to create a signed permutation.

##### 7.2-12 RandomSignedPerm
 ‣ RandomSignedPerm( arg ) ( function )

Create a random signed permutation

Goto Chapter: Top 1 2 3 4 5 6 7 Ind

generated by GAPDoc2HTML