The orbits of the (\varphi,\psi)-twisted conjugacy action are called the (\varphi,\psi)-twisted conjugacy classes or the Reidemeister classes of (\varphi,\psi). We denote the twisted conjugacy class of g \in G by [g]_{\varphi,\psi}.
‣ TwistedConjugacyClass( hom1[, hom2], g ) | ( function ) |
‣ ReidemeisterClass( hom1[, hom2], g ) | ( function ) |
Returns: the (hom1,hom2)-twisted conjugacy class of g.
‣ Representative( tcc ) | ( attribute ) |
Returns: the group element that was used to construct tcc.
‣ ActingDomain( tcc ) | ( attribute ) |
Returns: the group whose twisted conjugacy action tcc is an orbit of.
‣ FunctionAction( tcc ) | ( attribute ) |
Returns: the twisted conjugacy action that tcc is an orbit of.
‣ \in( g, tcc ) | ( operation ) |
Returns: true if g is an element of tcc, otherwise false.
‣ Size( tcc ) | ( attribute ) |
Returns: the number of elements in tcc.
This is calculated using the orbit-stabiliser theorem.
‣ StabiliserOfExternalSet( tcc ) | ( attribute ) |
Returns: the stabiliser of Representative(tcc) under the action FunctionAction(tcc).
‣ List( tcc ) | ( function ) |
Returns: a list containing the elements of tcc.
If tcc is infinite, this will run forever. It is recommended to first test the finiteness of tcc using Size (4.2-5).
‣ Random( tcc ) | ( operation ) |
Returns: a random element in tcc.
‣ \=( tcc1, tcc2 ) | ( operation ) |
Returns: true if tcc1 is equal to tcc2, otherwise false.
‣ TwistedConjugacyClasses( hom1[, hom2][, N] ) | ( function ) |
‣ ReidemeisterClasses( hom1[, hom2][, N] ) | ( function ) |
Returns: a list containing the (hom1, hom2)-twisted conjugacy classes if there are finitely many, or fail otherwise.
If the argument N is provided, it must be a normal subgroup of Range(hom1); the function will then only return the Reidemeister classes that intersect N non-trivially. It is guaranteed that the Reidemeister class of the identity is in the first position, and that the representatives of the classes belong to N if this argument is provided.
If G and H are finite, this function relies on an orbit-stabiliser algorithm. Otherwise, it relies on the algorithms in [DT21] and [Ter25].
‣ RepresentativesTwistedConjugacyClasses( hom1[, hom2][, N] ) | ( function ) |
‣ RepresentativesReidemeisterClasses( hom1[, hom2][, N] ) | ( function ) |
Returns: a list containing representatives of the (hom1, hom2)-twisted conjugacy classes if there are finitely many, or fail otherwise.
If the argument N is provided, it must be a normal subgroup of Range(hom1); the function will then only return the representatives of the twisted conjugacy classes that intersect N non-trivially. It is guaranteed that the identity is in the first position, and that all elements belong to N if this argument is provided.
gap> tcc := TwistedConjugacyClass( phi, psi, g1 ); (4,6,5)^G gap> Representative( tcc ); (4,6,5) gap> ActingDomain( tcc ) = H; true gap> FunctionAction( tcc )( g1, h ); (1,6,4,2)(3,5) gap> List( tcc ); [ (4,6,5), (1,6,4,2)(3,5) ] gap> Size( tcc ); 2 gap> StabiliserOfExternalSet( tcc ); Group([ (1,2,3,4,5), (1,3,4,5,2) ]) gap> TwistedConjugacyClasses( phi, psi ){[1..7]}; [ ()^G, (4,5,6)^G, (4,6,5)^G, (3,4)(5,6)^G, (3,4,5)^G, (3,4,6)^G, (3,5,4)^G ] gap> RepresentativesTwistedConjugacyClasses( phi, psi ){[1..7]}; [ (), (4,5,6), (4,6,5), (3,4)(5,6), (3,4,5), (3,4,6), (3,5,4) ] gap> NrTwistedConjugacyClasses( phi, psi ); 184
generated by GAPDoc2HTML