[1X9 [33X[0;0YMatrix Representations[133X[101X [33X[0;0YThis chapter describes functions which compute with matrix representations for pcp-groups. So far the routines in this package are only able to compute matrix representations for torsion-free nilpotent groups.[133X [1X9.1 [33X[0;0YUnitriangular matrix groups[133X[101X [1X9.1-1 UnitriangularMatrixRepresentation[101X [33X[1;0Y[29X[2XUnitriangularMatrixRepresentation[102X( [3XG[103X ) [32X operation[133X [33X[0;0Ycomputes a faithful representation of a torsion-free nilpotent group [3XG[103X as unipotent lower triangular matrices over the integers. The pc-presentation for [3XG[103X must not contain any power relations. The algorithm is described in [dGN02].[133X [1X9.1-2 IsMatrixRepresentation[101X [33X[1;0Y[29X[2XIsMatrixRepresentation[102X( [3XG[103X, [3Xmatrices[103X ) [32X function[133X [33X[0;0Ychecks if the map defined by mapping the [22Xi[122X-th generator of the pcp-group [3XG[103X to the [22Xi[122X-th matrix of [3Xmatrices[103X defines a homomorphism.[133X [1X9.2 [33X[0;0YUpper unitriangular matrix groups[133X[101X [33X[0;0YWe call a matrix upper unitriangular if it is an upper triangular matrix with ones on the main diagonal. The weight of an upper unitriangular matrix is the number of diagonals above the main diagonal that contain zeroes only.[133X [33X[0;0YThe subgroup of all upper unitriangular matrices of [22XGL(n,ℤ)[122X is torsion-free nilpotent. The [22Xk[122X-th term of its lower central series is the set of all matrices of weight [22Xk-1[122X. The [22X[122ℤX-rank of the [22Xk[122X-th term of the lower central series modulo the [22X(k+1)[122X-th term is [22Xn-k[122X.[133X [1X9.2-1 IsomorphismUpperUnitriMatGroupPcpGroup[101X [33X[1;0Y[29X[2XIsomorphismUpperUnitriMatGroupPcpGroup[102X( [3XG[103X ) [32X function[133X [33X[0;0Ytakes a group [3XG[103X generated by upper unitriangular matrices over the integers and computes a polycylic presentation for the group. The function returns an isomorphism from the matrix group to the pcp group. Note that a group generated by upper unitriangular matrices is necessarily torsion-free nilpotent.[133X [1X9.2-2 SiftUpperUnitriMatGroup[101X [33X[1;0Y[29X[2XSiftUpperUnitriMatGroup[102X( [3XG[103X ) [32X function[133X [33X[0;0Ytakes a group [3XG[103X generated by upper unitriangular matrices over the integers and returns a recursive data structure [3XL[103X with the following properties: [3XL[103X contains a polycyclic generating sequence for [3XG[103X, using [3XL[103X one can decide if a given upper unitriangular matrix is contained in [3XG[103X, a given element of [3XG[103X can be written as a word in the polycyclic generating sequence. [3XL[103X is a representation of a chain of subgroups of [3XG[103X refining the lower centrals series of [3XG[103X.. It contains for each subgroup in the chain a minimal generating set.[133X [1X9.2-3 RanksLevels[101X [33X[1;0Y[29X[2XRanksLevels[102X( [3XL[103X ) [32X function[133X [33X[0;0Ytakes the data structure returned by [10XSiftUpperUnitriMat[110X and prints the [22X[122ℤX-rank of each the subgroup in [3XL[103X.[133X [1X9.2-4 MakeNewLevel[101X [33X[1;0Y[29X[2XMakeNewLevel[102X( [3Xm[103X ) [32X function[133X [33X[0;0Ycreates one level of the data structure returned by [10XSiftUpperUnitriMat[110X and initialises it with weight [3Xm[103X.[133X [1X9.2-5 SiftUpperUnitriMat[101X [33X[1;0Y[29X[2XSiftUpperUnitriMat[102X( [3Xgens[103X, [3Xlevel[103X, [3XM[103X ) [32X function[133X [33X[0;0Ytakes the generators [3Xgens[103X of an upper unitriangular group, the data structure returned [3Xlevel[103X by [10XSiftUpperUnitriMat[110X and another upper unitriangular matrix [3XM[103X. It sift [3XM[103X through [3Xlevel[103X and adds [3XM[103X at the appropriate place if [3XM[103X is not contained in the subgroup represented by [3Xlevel[103X.[133X [33X[0;0YThe function [10XSiftUpperUnitriMatGroup[110X illustrates the use of [10XSiftUpperUnitriMat[110X.[133X [4X[32X Example [32X[104X [4X[28XInstallGlobalFunction( "SiftUpperUnitriMatGroup", function( G )[128X[104X [4X[28X local firstlevel, g;[128X[104X [4X[28X[128X[104X [4X[28X firstlevel := MakeNewLevel( 0 );[128X[104X [4X[28X for g in GeneratorsOfGroup(G) do[128X[104X [4X[28X SiftUpperUnitriMat( GeneratorsOfGroup(G), firstlevel, g );[128X[104X [4X[28X od;[128X[104X [4X[28X return firstlevel;[128X[104X [4X[28Xend );[128X[104X [4X[32X[104X [1X9.2-6 DecomposeUpperUnitriMat[101X [33X[1;0Y[29X[2XDecomposeUpperUnitriMat[102X( [3Xlevel[103X, [3XM[103X ) [32X function[133X [33X[0;0Ytakes the data structure [3Xlevel[103X returned by [10XSiftUpperUnitriMatGroup[110X and a upper unitriangular matrix [3XM[103X and decomposes [3XM[103X into a word in the polycyclic generating sequence of [3Xlevel[103X.[133X
Generated by dwww version 1.15 on Sun Jun 16 09:01:30 CEST 2024.