GAP (semigroups) - Chapter 16: Attributes of inverse semigroups

Goto Chapter: Top 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 Bib Ind
[Top of Book] [Contents] [Previous Chapter] [Next Chapter]

[MathJax off]

16 Attributes of inverse semigroups
16.1 Attributes of inverse semigroups
16.1-1 NaturalLeqInverseSemigroup
16.1-2 JoinIrreducibleDClasses
16.1-3 MajorantClosure
16.1-4 Minorants
16.1-5 PrimitiveIdempotents
16.1-6 RightCosetsOfInverseSemigroup
16.1-7 SameMinorantsSubgroup
16.1-8 SmallerDegreePartialPermRepresentation
16.1-9 VagnerPrestonRepresentation
16.1-10 CharacterTableOfInverseSemigroup

### 16 Attributes of inverse semigroups

In this chapter we describe the attributes which are specific to inverse semigroups that can be determined using Semigroups.

The functions

- `IsJoinIrreducible` (17.2-5)

- `IsMajorantlyClosed` (17.2-6)

- `JoinIrreducibleDClasses` (16.1-2)

- `MajorantClosure` (16.1-3)

- `Minorants` (16.1-4)

- `RightCosetsOfInverseSemigroup` (16.1-6)

- `SmallerDegreePartialPermRepresentation` (16.1-8)

- `VagnerPrestonRepresentation` (16.1-9)

were written by Wilf Wilson and Robert Hancock.

The function `CharacterTableOfInverseSemigroup` (16.1-10) was written by Jhevon Smith and Ben Steinberg.

#### 16.1 Attributes of inverse semigroups

##### 16.1-1 NaturalLeqInverseSemigroup

`‣ NaturalLeqInverseSemigroup`( S ) | ( attribute )

Returns: An function.

`NaturalLeqInverseSemigroup` returns a function that, when given two elements `x, y` of the inverse semigroup S, returns `true` if `x` is less than or equal to `y` in the natural partial order on S.

    gap> S := Monoid(Transformation([1, 3, 4, 4]),
    >                Transformation([1, 4, 2, 4]));
    <transformation monoid of degree 4 with 2 generators>
    gap> IsInverseSemigroup(S);
    true
    gap> Size(S);
    6
    gap> NaturalPartialOrder(S);
    [ [ 2, 5, 6 ], [ 6 ], [ 6 ], [ 6 ], [ 6 ], [  ] ]

##### 16.1-2 JoinIrreducibleDClasses

`‣ JoinIrreducibleDClasses`( S ) | ( attribute )

Returns: A list of \(\mathscr{D}\)-classes.

`JoinIrreducibleDClasses` returns a list of the join irreducible \(\mathscr{D}\)-classes of the inverse semigroup of partial permutations, block bijections or partial permutation bipartitions S.

A join irreducible \(\mathscr{D}\)-class is a \(\mathscr{D}\)-class containing only join irreducible elements. See `IsJoinIrreducible` (17.2-5). If a \(\mathscr{D}\)-class contains one join irreducible element, then all of the elements in the \(\mathscr{D}\)-class are join irreducible.

    gap> S := SymmetricInverseSemigroup(3);
    <symmetric inverse monoid of degree 3>
    gap> JoinIrreducibleDClasses(S);
    [ <Green's D-class: <identity partial perm on [ 2 ]>> ]
    gap> T := InverseSemigroup(
    > PartialPerm([1, 2, 3, 4], [1, 2, 4, 3]),
    > PartialPerm([1], [1]), PartialPerm([2], [2]));
    <inverse partial perm semigroup of rank 4 with 3 generators>
    gap> JoinIrreducibleDClasses(T);
    [ <Green's D-class: <identity partial perm on [ 1, 2, 3, 4 ]>>,
      <Green's D-class: <identity partial perm on [ 1 ]>>,
      <Green's D-class: <identity partial perm on [ 2 ]>> ]
    gap> D := DualSymmetricInverseSemigroup(3);
    <inverse bipartition monoid of degree 3 with 3 generators>
    gap> JoinIrreducibleDClasses(D);
    [ <Green's D-class: <block bijection: [ 1, 2, -1, -2 ], [ 3, -3 ]>> ]

##### 16.1-3 MajorantClosure

`‣ MajorantClosure`( S, T ) | ( operation )

Returns: A majorantly closed list of elements.

`MajorantClosure` returns a majorantly closed subset of an inverse semigroup of partial permutations, block bijections or partial permutation bipartitions, S, as a list. See `IsMajorantlyClosed` (17.2-6).

The result contains all elements of S which are greater than or equal to any element of T (with respect to the natural partial order `NaturalLeqPartialPerm` (Reference: NaturalLeqPartialPerm)). In particular, the result is a superset of T.

Note that T can be a subset of S or a subsemigroup of S.

    gap> S := SymmetricInverseSemigroup(4);
    <symmetric inverse monoid of degree 4>
    gap> T := [PartialPerm([1, 0, 3, 0])];
    [ <identity partial perm on [ 1, 3 ]> ]
    gap> U := MajorantClosure(S,T);
    [ <identity partial perm on [ 1, 3 ]>,
      <identity partial perm on [ 1, 2, 3 ]>, [2,4](1)(3), [4,2](1)(3),
      <identity partial perm on [ 1, 3, 4 ]>,
      <identity partial perm on [ 1, 2, 3, 4 ]>, (1)(2,4)(3) ]
    gap> B := InverseSemigroup([
    >  Bipartition([[1, -2], [2, -1], [3, -3], [4, 5, -4, -5]]),
    >  Bipartition([[1, -3], [2, -4], [3, -2], [4, -1], [5, -5]])]);;
    gap> T := [Bipartition([[1, -2], [2, 3, 5, -1, -3, -5], [4, -4]]),
    >  Bipartition([[1, -4], [2, 3, 5, -1, -3, -5], [4, -2]])];;
    gap> IsMajorantlyClosed(B,T);
    false
    gap> MajorantClosure(B,T);
    [ <block bijection: [ 1, -2 ], [ 2, 3, 5, -1, -3, -5 ], [ 4, -4 ]>,
      <block bijection: [ 1, -4 ], [ 2, 3, 5, -1, -3, -5 ], [ 4, -2 ]>,
      <block bijection: [ 1, -2 ], [ 2, 5, -1, -5 ], [ 3, -3 ], [ 4, -4 ]>
        , <block bijection: [ 1, -2 ], [ 2, -1 ], [ 3, 5, -3, -5 ],
         [ 4, -4 ]>,
      <block bijection: [ 1, -4 ], [ 2, 5, -3, -5 ], [ 3, -1 ], [ 4, -2 ]>
        , <block bijection: [ 1, -4 ], [ 2, -3 ], [ 3, 5, -1, -5 ],
         [ 4, -2 ]>, <block bijection: [ 1, -4 ], [ 2, -3 ], [ 3, -1 ],
         [ 4, -2 ], [ 5, -5 ]> ]
    gap> IsMajorantlyClosed(B, last);
    true

##### 16.1-4 Minorants

`‣ Minorants`( S, f ) | ( operation )

Returns: A list of elements.

`Minorants` takes an element f from an inverse semigroup of partial permutations, block bijections or partial permutation bipartitions S, and returns a list of the minorants of f in S.

A minorant of f is an element of S which is strictly less than f in the natural partial order of S. See `NaturalLeqPartialPerm` (Reference: NaturalLeqPartialPerm).

    gap> S := SymmetricInverseSemigroup(3);
    <symmetric inverse monoid of degree 3>
    gap> x := Elements(S)[13];
    [1,3](2)
    gap> Minorants(S, x);
    [ <empty partial perm>, [1,3], <identity partial perm on [ 2 ]> ]
    gap> x := PartialPerm([3, 2, 4, 0]);
    [1,3,4](2)
    gap> S := InverseSemigroup(x);
    <inverse partial perm semigroup of rank 4 with 1 generator>
    gap> Minorants(S, x);
    [ <identity partial perm on [ 2 ]>, [1,3](2), [3,4](2) ]

##### 16.1-5 PrimitiveIdempotents

`‣ PrimitiveIdempotents`( S ) | ( attribute )

Returns: A list of idempotent partial permutations.

An idempotent in an inverse semigroup S is primitive if it is non-zero and minimal with respect to the `NaturalPartialOrder` (Reference: NaturalPartialOrder) on S. `PrimitiveIdempotents` returns the list of primitive idempotents in the inverse semigroup of partial permutations S.

    gap> S := InverseMonoid(
    > PartialPerm([1], [4]),
    > PartialPerm([1, 2, 3], [2, 1, 3]),
    > PartialPerm([1, 2, 3], [3, 1, 2]));;
    gap> MultiplicativeZero(S);
    <empty partial perm>
    gap> Set(PrimitiveIdempotents(S));
    [ <identity partial perm on [ 1 ]>, <identity partial perm on [ 2 ]>,
      <identity partial perm on [ 3 ]>, <identity partial perm on [ 4 ]> ]
    gap> S := DualSymmetricInverseMonoid(4);
    <inverse bipartition monoid of degree 4 with 3 generators>
    gap> Set(PrimitiveIdempotents(S));
    [ <block bijection: [ 1, 2, 3, -1, -2, -3 ], [ 4, -4 ]>,
      <block bijection: [ 1, 2, 4, -1, -2, -4 ], [ 3, -3 ]>,
      <block bijection: [ 1, 2, -1, -2 ], [ 3, 4, -3, -4 ]>,
      <block bijection: [ 1, 3, 4, -1, -3, -4 ], [ 2, -2 ]>,
      <block bijection: [ 1, 3, -1, -3 ], [ 2, 4, -2, -4 ]>,
      <block bijection: [ 1, 4, -1, -4 ], [ 2, 3, -2, -3 ]>,
      <block bijection: [ 1, -1 ], [ 2, 3, 4, -2, -3, -4 ]> ]

##### 16.1-6 RightCosetsOfInverseSemigroup

`‣ RightCosetsOfInverseSemigroup`( S, T ) | ( operation )

Returns: A list of lists of elements.

`RightCosetsOfInverseSemigroup` takes a majorantly closed inverse subsemigroup T of an inverse semigroup of partial permutations, block bijections or partial permutation bipartitions S. See `IsMajorantlyClosed` (17.2-6). The result is a list of the right cosets of T in S.

For \(s \in S\), the right coset \(\overline{Ts}\) is defined if and only if \(ss^{-1} \in T\), in which case it is defined to be the majorant closure of the set \(Ts\). See `MajorantClosure` (16.1-3). Distinct cosets are disjoint but do not necessarily partition S.

    gap> S := SymmetricInverseSemigroup(3);
    <symmetric inverse monoid of degree 3>
    gap> T := InverseSemigroup(MajorantClosure(S, [PartialPerm([1])]));
    <inverse partial perm monoid of rank 3 with 6 generators>
    gap> IsMajorantlyClosed(S, T);
    true
    gap> RC := RightCosetsOfInverseSemigroup(S, T);
    [ [ <identity partial perm on [ 1 ]>,
          <identity partial perm on [ 1, 2 ]>, [2,3](1), [3,2](1),
          <identity partial perm on [ 1, 3 ]>,
          <identity partial perm on [ 1, 2, 3 ]>, (1)(2,3) ],
      [ [1,3], [2,1,3], [1,3](2), (1,3), [1,3,2], (1,3,2), (1,3)(2) ],
      [ [1,2], (1,2), [1,2,3], [3,1,2], [1,2](3), (1,2)(3), (1,2,3) ] ]

##### 16.1-7 SameMinorantsSubgroup

`‣ SameMinorantsSubgroup`( H ) | ( attribute )

Returns: A list of elements of the group \(\mathscr{H}\)-class H.

Given a group \(\mathscr{H}\)-class H in an inverse semigroup of partial permutations, block bijections or partial permutation bipartitions `S`, `SameMinorantsSubgroup` returns a list of the elements of H which have the same strict minorants as the identity element of H. A strict minorant of `x` in H is an element of `S` which is less than `x` (with respect to the natural partial order), but is not equal to `x`.

The returned list of elements of H describe a subgroup of H.

    gap> S := SymmetricInverseSemigroup(3);
    <symmetric inverse monoid of degree 3>
    gap> H := GroupHClass(DClass(S, PartialPerm([1, 2, 3])));
    <Green's H-class: <identity partial perm on [ 1, 2, 3 ]>>
    gap> Elements(H);
    [ <identity partial perm on [ 1, 2, 3 ]>, (1)(2,3), (1,2)(3),
      (1,2,3), (1,3,2), (1,3)(2) ]
    gap> SameMinorantsSubgroup(H);
    [ <identity partial perm on [ 1, 2, 3 ]> ]
    gap> T := InverseSemigroup(
    > PartialPerm([1, 2, 3, 4], [1, 2, 4, 3]),
    > PartialPerm([1], [1]), PartialPerm([2], [2]));
    <inverse partial perm semigroup of rank 4 with 3 generators>
    gap> Elements(T);
    [ <empty partial perm>, <identity partial perm on [ 1 ]>,
      <identity partial perm on [ 2 ]>,
      <identity partial perm on [ 1, 2, 3, 4 ]>, (1)(2)(3,4) ]
    gap> x := GroupHClass(DClass(T, PartialPerm([1, 2, 3, 4])));
    <Green's H-class: <identity partial perm on [ 1, 2, 3, 4 ]>>
    gap> Elements(x);
    [ <identity partial perm on [ 1, 2, 3, 4 ]>, (1)(2)(3,4) ]
    gap> AsSet(SameMinorantsSubgroup(x));
    [ <identity partial perm on [ 1, 2, 3, 4 ]>, (1)(2)(3,4) ]

##### 16.1-8 SmallerDegreePartialPermRepresentation

`‣ SmallerDegreePartialPermRepresentation`( S ) | ( attribute )

Returns: An isomorphism.

`SmallerDegreePartialPermRepresentation` attempts to find an isomorphism from the inverse semigroup S of partial permutations to another inverse semigroup of partial permutations with smaller degree. If the function cannot reduce the degree, the identity mapping is returned.

There is no guarantee that the smallest possible degree representation is returned. For more information see [Sch92].

    gap> S := InverseSemigroup(PartialPerm([2, 1, 4, 3, 6, 5, 8, 7]));
    <commutative inverse partial perm semigroup of rank 8 with 1
     generator>
    gap> Elements(S);
    [ <identity partial perm on [ 1, 2, 3, 4, 5, 6, 7, 8 ]>,
      (1,2)(3,4)(5,6)(7,8) ]
    gap> T := SmallerDegreePartialPermRepresentation(S);
    MappingByFunction( <partial perm group of size 2, rank 8 with
      1 generator>, <commutative inverse partial perm semigroup of rank 2
    with 1 generator>, function( x ) ... end, function( x ) ... end )
    gap> R := Range(T);
    <commutative inverse partial perm semigroup of rank 2 with 1
     generator>
    gap> Elements(R);
    [ <identity partial perm on [ 1, 2 ]>, (1,2) ]
    gap> S := DualSymmetricInverseMonoid(5);;
    gap> T := Range(IsomorphismPartialPermSemigroup(S));
    <inverse partial perm monoid of rank 6721 with 3 generators>
    gap> SmallerDegreePartialPermRepresentation(T);
    MappingByFunction( <inverse partial perm monoid of rank 6721 with 3
     generators>, <inverse partial perm semigroup of rank 30 with 3
     generators>, function( x ) ... end, function( x ) ... end )

##### 16.1-9 VagnerPrestonRepresentation

`‣ VagnerPrestonRepresentation`( S ) | ( attribute )

Returns: An isomorphism to an inverse semigroup of partial permutations.

`VagnerPrestonRepresentation` returns an isomorphism from an inverse semigroup S where the elements of S have a unique semigroup inverse accessible via `Inverse` (Reference: Inverse), to the inverse semigroup of partial permutations T of degree equal to the size of S, which is obtained using the Vagner-Preston Representation Theorem.

More precisely, if \(f:S\to T\) is the isomorphism returned by `VagnerPrestonRepresentation(S)` and \(x\) is in S, then \(f(x)\) is the partial permutation with domain \(Sx^{-1}\) and range \(Sx^{-1}x\) defined by \(f(x): sx^{-1}\mapsto sx^{-1}x\).

In many cases, it is possible to find a smaller degree representation than that provided by `VagnerPrestonRepresentation` using `IsomorphismPartialPermSemigroup` (Reference: IsomorphismPartialPermSemigroup) or `SmallerDegreePartialPermRepresentation` (16.1-8).

    gap> S := SymmetricInverseSemigroup(2);
    <symmetric inverse monoid of degree 2>
    gap> Size(S);
    7
    gap> iso := VagnerPrestonRepresentation(S);
    MappingByFunction( <symmetric inverse monoid of degree 2>,
    <inverse partial perm monoid of rank 7 with 2 generators>
     , function( x ) ... end, function( x ) ... end )
    gap> RespectsMultiplication(iso);
    true
    gap> inv := InverseGeneralMapping(iso);;
    gap> ForAll(S, x-> (x ^ iso) ^ inv = x);
    true
    gap> V := InverseSemigroup(
    > Bipartition([[1, -4], [2, -1], [3, -5],
    >              [4], [5], [-2], [-3]]),
    > Bipartition([[1, -5], [2, -1], [3, -3],
    >              [4], [5], [-2], [-4]]),
    > Bipartition([[1, -2], [2, -4], [3, -5],
    >              [4, -1], [5, -3]]));
    <inverse bipartition semigroup of degree 5 with 3 generators>
    gap> IsInverseSemigroup(V);
    true
    gap> VagnerPrestonRepresentation(V);
    MappingByFunction( <inverse bipartition semigroup of size 394,
     degree 5 with 3 generators>, <inverse partial perm semigroup of
     rank 394 with 5 generators>
     , function( x ) ... end, function( x ) ... end )

##### 16.1-10 CharacterTableOfInverseSemigroup

`‣ CharacterTableOfInverseSemigroup`( S ) | ( attribute )

Returns: The character table of the inverse semigroup S and a list of conjugacy class representatives of S.

Returns a list with two entries: the first entry being the character table of the inverse semigroup S as a matrix, while the second entry is a list of conjugacy class representatives of S.

The order of the columns in the character table matrix follows the order of the conjugacy class representatives list. The conjugacy representatives are grouped by \(\mathscr{D}\)-class and then sorted by rank. Also, as is typical of character tables, the rows of the matrix correspond to the irreducible characters and the columns correspond to the conjugacy classes.

This function was contributed by Jhevon Smith and Ben Steinberg.

    gap> S := InverseMonoid( [ PartialPerm( [ 1, 2 ], [ 3, 1 ] ),
    > PartialPerm( [ 1, 2, 3 ], [ 1, 3, 4 ] ),
    > PartialPerm( [ 1, 2, 3 ], [ 2, 4, 1 ] ),
    > PartialPerm( [ 1, 3, 4 ], [ 3, 4, 1 ] ) ] );;
    gap> CharacterTableOfInverseSemigroup(S);
    [ [ [ 1, 0, 0, 0, 0, 0, 0, 0 ], [ 3, 1, 1, 1, 0, 0, 0, 0 ],
          [ 3, 1, E(3), E(3)^2, 0, 0, 0, 0 ],
          [ 3, 1, E(3)^2, E(3), 0, 0, 0, 0 ], [ 6, 3, 0, 0, 1, -1, 0, 0 ],
          [ 6, 3, 0, 0, 1, 1, 0, 0 ], [ 4, 3, 0, 0, 2, 0, 1, 0 ],
          [ 1, 1, 1, 1, 1, 1, 1, 1 ] ],
      [ <identity partial perm on [ 1, 2, 3, 4 ]>,
          <identity partial perm on [ 1, 3, 4 ]>, (1,3,4), (1,4,3),
          <identity partial perm on [ 1, 3 ]>, (1,3),
          <identity partial perm on [ 3 ]>, <empty partial perm> ] ]
    gap> S := SymmetricInverseMonoid(4);;
    gap> CharacterTableOfInverseSemigroup(S);
    [ [ [ 1, -1, 1, 1, -1, 0, 0, 0, 0, 0, 0, 0 ],
          [ 3, -1, 0, -1, 1, 0, 0, 0, 0, 0, 0, 0 ],
          [ 2, 0, -1, 2, 0, 0, 0, 0, 0, 0, 0, 0 ],
          [ 3, 1, 0, -1, -1, 0, 0, 0, 0, 0, 0, 0 ],
          [ 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0 ],
          [ 4, -2, 1, 0, 0, 1, -1, 1, 0, 0, 0, 0 ],
          [ 8, 0, -1, 0, 0, 2, 0, -1, 0, 0, 0, 0 ],
          [ 4, 2, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0 ],
          [ 6, 0, 0, -2, 0, 3, -1, 0, 1, -1, 0, 0 ],
          [ 6, 2, 0, 2, 0, 3, 1, 0, 1, 1, 0, 0 ],
          [ 4, 2, 1, 0, 0, 3, 1, 0, 2, 0, 1, 0 ],
          [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ] ],
      [ <identity partial perm on [ 1, 2, 3, 4 ]>, (1)(2)(3,4),
          (1)(2,3,4), (1,2)(3,4), (1,2,3,4),
          <identity partial perm on [ 1, 2, 3 ]>, (1)(2,3), (1,2,3),
          <identity partial perm on [ 2, 3 ]>, (2,3),
          <identity partial perm on [ 1 ]>, <empty partial perm> ] ]

[Top of Book] [Contents] [Previous Chapter] [Next Chapter]
Goto Chapter: Top 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 Bib Ind

generated by GAPDoc2HTML