Please note that the functions in this chapter are only implemented for endomorphisms of finite groups.
‣ IteratedReidemeisterNumberDecomposition( endo1[, endo2] ) | ( function ) |
Returns: two lists of integers.
For a finite group, the sequence of Reidemeister numbers of the iterates of endo1 and endo2, i.e. the sequence R(endo1,endo2), R(endo1^2,endo2^2), ..., is eventually periodic. Thus there exist a periodic sequence (P_n)_{n \in \mathbb{N}} and an eventually zero sequence (Q_n)_{n \in \mathbb{N}} such that
\forall n \in \mathbb{N}: R(\varphi^n,\psi^n) = P_n + Q_n.
This function returns two lists: the first list contains one period of the sequence (P_n)_{n \in \mathbb{N}}, the second list contains (Q_n)_{n \in \mathbb{N}} up to the part where it becomes the constant zero sequence.
gap> G := PcGroupCode( 3913, 12 );; gap> phi := GroupHomomorphismByImages( G, G, [ G.1, G.3 ], [ One(G), One(G) ] );; gap> psi := GroupHomomorphismByImages( G, G, [ G.1, G.3 ], [ G.2, One(G) ] );; gap> IteratedReidemeisterNumberDecomposition( phi ); [ [ 1 ], [ ] ] gap> IteratedReidemeisterNumberDecomposition( phi, psi ); [ [ 12 ], [ -6 ] ]
Let \varphi,\psi\colon G \to G be endomorphisms such that R(\varphi^n,\psi^n) < \infty for all n \in \mathbb{N}. Then the Reidemeister zeta function Z_{\varphi,\psi}(s) of the pair (\varphi,\psi) is defined as
Z_{\varphi,\psi}(s) := \exp \sum_{n=1}^\infty \frac{R(\varphi^n,\psi^n)}{n} s^n.
‣ IsRationalReidemeisterZetaFunction( endo1[, endo2] ) | ( function ) |
Returns: true if the Reidemeister zeta function of endo1 and endo2 is rational, otherwise false.
‣ ReidemeisterZetaFunction( endo1[, endo2] ) | ( function ) |
Returns: the Reidemeister zeta function of endo1 and endo2 if it is rational, otherwise fail.
‣ PrintReidemeisterZetaFunction( endo1[, endo2] ) | ( function ) |
Returns: a string describing the Reidemeister zeta function of endo1 and endo2.
This is often more readable than evaluating ReidemeisterZetaFunction (6.2-2) in an indeterminate, and does not require rationality.
gap> IsRationalReidemeisterZetaFunction( phi ); true gap> IsRationalReidemeisterZetaFunction( phi, psi ); false gap> s := Indeterminate( Rationals, "s" );; gap> ReidemeisterZetaFunction( phi )(s); (1)/(-s+1) gap> PrintReidemeisterZetaFunction( phi, psi ); "exp(-6*s)*(1-s)^(-12)"
Let \varphi,\psi\colon G \to G be endomorphisms such that R(\varphi^n,\psi^n) < \infty for all n \in \mathbb{N}. Then the Reidemeister generating function Z^*_{\varphi,\psi}(s) of the pair (\varphi,\psi) is defined as
Z^*_{\varphi,\psi}(s) := \sum_{n=1}^\infty R(\varphi^n,\psi^n) s^n.
‣ IsRationalReidemeisterGeneratingFunction( endo1[, endo2] ) | ( function ) |
Returns: true if the Reidemeister generating function of endo1 and endo2 is rational, otherwise false.
‣ ReidemeisterGeneratingFunction( endo1[, endo2] ) | ( function ) |
Returns: the Reidemeister generating function of endo1 and endo2 if it is rational, otherwise fail.
‣ PrintReidemeisterGeneratingFunction( endo1[, endo2] ) | ( function ) |
Returns: a string describing the Reidemeister generating function of endo1 and endo2.
This is often more readable than evaluating ReidemeisterGeneratingFunction (6.3-2) in an indeterminate, and does not require rationality.
gap> IsRationalReidemeisterGeneratingFunction( phi, psi ); true gap> ReidemeisterGeneratingFunction( phi, psi )( 2 ); -36 gap> PrintReidemeisterGeneratingFunction( phi, psi ); "(6*s^2+6*s)/(-s+1)"
generated by GAPDoc2HTML