From ba467978e6655b0e6edaaae5962538e7c8c2ff01 Mon Sep 17 00:00:00 2001 From: Max Horn Date: Tue, 8 Sep 2026 23:45:39 +0200 Subject: [PATCH] Remove the irreducible solvable matrix groups lib/irredsol.g* implement a subset of what the irredsol package provides, and in worse shape: IrreducibleSolvableGroup has raised an error for years because two groups were missing from its database, and the data reaches only p^n < 256. The group counts agree with irredsol for every (n,p) in that range, its selection functions accept the same conditions, and it declares MinimalBlockDimension, IsPrimitiveMatrixGroup and DegreeOfMatrixGroup itself, so nothing there depends on these declarations. PrimitiveIndexIrreducibleSolvableGroup goes as well: it is documented in lib/primitiv.gd but keyed by the indexing that leaves with the data. CHANGES.md records what to use instead, and where the replacement is not a rename. See https://github.com/gap-packages/primgrp/issues/83 Co-Authored-By: Claude Opus 5 --- CHANGES.md | 30 ++ PackageInfo.g | 2 +- doc/irredsol.xml | 17 - doc/manual.xml | 1 - init.g | 1 - lib/irredsol.gd | 264 ---------- lib/irredsol.gi | 462 ----------------- lib/irredsol.grp | 846 ------------------------------- lib/primitiv.gd | 26 - read.g | 2 - tst/manualexamples/primgrp01.tst | 2 +- tst/testinstall/irrednumbers.tst | 16 - 12 files changed, 32 insertions(+), 1637 deletions(-) delete mode 100644 doc/irredsol.xml delete mode 100644 lib/irredsol.gd delete mode 100644 lib/irredsol.gi delete mode 100644 lib/irredsol.grp delete mode 100644 tst/testinstall/irrednumbers.tst diff --git a/CHANGES.md b/CHANGES.md index 408637c..376346a 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -20,6 +20,36 @@ - Fix socle type series for unitary groups - Add `IsAlmostSimpleGroup` to the properties for which `AllPrimitiveGroups` and `OnePrimitiveGroup` need not compute the values + - **Breaking:** remove the irreducible solvable matrix groups, i.e. the + functions `IrreducibleSolvableGroup`, `IrreducibleSolvableGroupMS`, + `NumberIrreducibleSolvableGroups` (and its synonym + `NrIrreducibleSolvableGroups`), `AllIrreducibleSolvableGroups`, + `OneIrreducibleSolvableGroup`, the variable + `PrimitiveIndexIrreducibleSolvableGroup`, and the declarations of + `MinimalBlockDimension`, `IsPrimitiveMatrixGroup`, + `IsLinearlyPrimitive` and `DegreeOfMatrixGroup`. + The `irredsol` package covers the same groups over a wider range of + dimensions and fields; use it instead: + + | removed | replacement in `irredsol` | + | --- | --- | + | `IrreducibleSolvableGroupMS(n,p,k)` | `IrreducibleSolubleMatrixGroup(n,q,d,k)` | + | `NumberIrreducibleSolvableGroups(n,p)` | `Sum(DivisorsInt(n), d -> Length(IndicesIrreducibleSolubleMatrixGroups(n,p,d)))` | + | `AllIrreducibleSolvableGroups(...)` | `AllIrreducibleSolubleMatrixGroups(...)` | + | `OneIrreducibleSolvableGroup(...)` | `OneIrreducibleSolubleMatrixGroup(...)` | + | `PrimitiveIndexIrreducibleSolvableGroup[d][i]` | `PrimitivePermGroupIrreducibleMatrixGroup(G)` | + | `Characteristic, p` as a condition | `Field, GF(p)` | + | `IsLinearlyPrimitive` | `IsPrimitiveMatrixGroup` | + + `Dimension`, `DimensionOfMatrixGroup`, `DegreeOfMatrixGroup`, `Size`, + `Order`, `MinimalBlockDimension` and `IsPrimitiveMatrixGroup` keep + their meaning as conditions, and `irredsol` declares the latter two + itself. But `irredsol` needs the field of the groups to be given, so + `Characteristic` no longer suffices to delimit a search. + + Access by index does **not** carry over: `irredsol` numbers the groups + in `GL(n,q)` by trace field and splitting field degree `d`, so a given + `k` denotes a different group there and raises no error. ## 4.0.3 (2026-07-28) diff --git a/PackageInfo.g b/PackageInfo.g index bdb6044..01808d4 100644 --- a/PackageInfo.g +++ b/PackageInfo.g @@ -127,7 +127,7 @@ PackageDoc := rec( Dependencies := rec( - GAP := "4.12.0", + GAP := "4.15", NeededOtherPackages := [], SuggestedOtherPackages := [], ExternalConditions := [] diff --git a/doc/irredsol.xml b/doc/irredsol.xml deleted file mode 100644 index 9587907..0000000 --- a/doc/irredsol.xml +++ /dev/null @@ -1,17 +0,0 @@ - -Irreducible Matrix Groups - - -
-Irreducible Solvable Matrix Groups - -<#Include Label="IrreducibleSolvableGroupMS"> -<#Include Label="NumberIrreducibleSolvableGroups"> -<#Include Label="AllIrreducibleSolvableGroups"> -<#Include Label="OneIrreducibleSolvableGroup"> -<#Include Label="PrimitiveIndexIrreducibleSolvableGroup"> -<#Include Label="IrreducibleSolvableGroup"> - -
- -
\ No newline at end of file diff --git a/doc/manual.xml b/doc/manual.xml index 42f2e28..187c0a8 100644 --- a/doc/manual.xml +++ b/doc/manual.xml @@ -97,7 +97,6 @@ Discrete Mathematics), https://www.codima.ac.uk/. <#Include SYSTEM "prim.xml"> -<#Include SYSTEM "irredsol.xml"> diff --git a/init.g b/init.g index 227adb7..94deb5d 100644 --- a/init.g +++ b/init.g @@ -8,7 +8,6 @@ #R Read the declaration files. ## ReadPackage( "primgrp", "lib/primitiv.gd" ); -ReadPackage( "primgrp", "lib/irredsol.gd" ); #E init.g . . . . . . . . . . . . . . . . . . . . . . . . . . . . ends here diff --git a/lib/irredsol.gd b/lib/irredsol.gd deleted file mode 100644 index 3972d42..0000000 --- a/lib/irredsol.gd +++ /dev/null @@ -1,264 +0,0 @@ -############################################################################# -## -#W irredsol.gd GAP group library Mark Short -#W Burkhard Höfling -## -## -#Y Copyright (C) 1993, Murdoch University, Perth, Australia -## -## This file contains the functions and data for the irreducible solvable -## matrix group library. It contains exactly one member for each of the -## 372 conjugacy classes of irreducible solvable subgroups of $GL(n,p)$ -## where $1 < n$, $p$ is a prime, and $p^n < 256$. -## -## By well-known theory, this data also doubles as a library of primitive -## solvable permutation groups of non-prime degree $<256$. -## -## This file contains the data from Mark Short's thesis, plus two groups -## missing from that list, subsequently discovered by Alexander Hulpke. -## - -############################################################################# -## -#V IrredSolJSGens[] . . . . . . . . . . . . . . . generators for the groups -## -## -## -## -## -## IrredSolJSGens[n][p][k] is a generating set -## for the k-th JS-maximal of GL(n,p). -## This generating set is polycyclic, i.e. forms an AG-system for the group. -## A JS-maximal is a maximal irreducible solvable subgroup of -## GL(n,p) -## (for a few exceptional small values of n and p this group isn't maximal). -## Every group in the library is generated with reference to the generating -## set of one of these JS-maximals, called its guardian (a group may be a -## subgroup of several JS-maximals but it only has one guardian). -## -## -## -#DeclareGlobalVariable("IrredSolJSGens"); - -############################################################################# -## -#V IrredSolGroupList[] . . . . . . . . . . . . . . description of the groups -## -## -## -## -## -## IrredSolGroupList[n][p][i] is a list containing the information -## about the i-th group from GL(n,p). -## The groups are ordered with respect to the following criteria: -## 1. Increasing size -## 2. Increasing guardian number -## If two groups have the same size and guardian, they are in no particular -## order. -##

-## The list IrredSolGroupList[n][p][i] contains the following info: -## Position: [1]: the size of the group -## [2]: 0 if group is linearly primitive, -## otherwise its minimal block size -## [3]: the absolute value is the number of the group's guardian, -## i.e. its position in 'IrredSolJSGens[n][p]', -## it's negative iff it equals its guardian -## [4..]: the group's generators in normal form -## (with respect to its guardian's AG-system) -## -## -## -#DeclareGlobalVariable ("IrredSolGroupList"); - - -############################################################################# -## -#F IrreducibleSolvableGroup( ,

, ) -## -## <#GAPDoc Label="IrreducibleSolvableGroup"> -## -## -## -## -## This function is obsolete, because for n = 2, -## p = 13, two groups were missing from the -## underlying database. It has been replaced by the function -## . Please note that the latter -## function does not guarantee any ordering of the groups in the database. -## However, for values of n, p, and i admissible to -## , -## returns a representative of the -## same conjugacy class of subgroups of GL(n, p) as -## did before. -## -## -## <#/GAPDoc> -## -DeclareGlobalFunction("IrreducibleSolvableGroup"); - -############################################################################# -## -#F IrreducibleSolvableGroupMS( ,

, ) -## -## <#GAPDoc Label="IrreducibleSolvableGroupMS"> -## -## -## -## -## This function returns a representative of the i-th conjugacy class -## of irreducible solvable subgroup of GL(n, p), -## where n is an integer > 1, p is a prime, -## and p^{n} < 256. -##

-## The numbering of the representatives should be -## considered arbitrary. However, it is guaranteed that the i-th -## group on this list will lie in the same conjugacy class in all future -## versions of &GAP;, unless two (or more) groups on the list are discovered -## to be duplicates, -## in which case will return -## fail for all but one of the duplicates. -##

-## For values of n, p, and i admissible to -## , -## returns a representative of -## the same conjugacy class of subgroups of GL(n, p) as -## . -## Note that it currently adds two more groups (missing from the -## original list by Mark Short) for n = 2, -## p = 13. -## -## -## <#/GAPDoc> -## -DeclareGlobalFunction("IrreducibleSolvableGroupMS"); - -############################################################################# -## -#F NumberIrreducibleSolvableGroups( ,

) -## -## <#GAPDoc Label="NumberIrreducibleSolvableGroups"> -## -## -## -## -## This function returns the number of conjugacy classes of -## irreducible solvable subgroup of -## GL(n, p). -## -## -## <#/GAPDoc> -## -DeclareGlobalFunction("NumberIrreducibleSolvableGroups"); -DeclareSynonym("NrIrreducibleSolvableGroups",NumberIrreducibleSolvableGroups); - -############################################################################# -## -#F AllIrreducibleSolvableGroups( , , , , ... ) -## -## <#GAPDoc Label="AllIrreducibleSolvableGroups"> -## -## -## -## -## This function returns a list of conjugacy class representatives G -## of matrix groups over a prime field such that -## f(G) = v or f(G) \in v, for all pairs (f,v) in -## (func1, val1), (func2, val2), \ldots. -## The following possibilities for the functions f -## are particularly efficient, because the values can be read off the -## information in the data base: -## DegreeOfMatrixGroup (or -## or -## ) for the -## linear degree, -## for the field characteristic, -## , IsPrimitiveMatrixGroup -## (or IsLinearlyPrimitive), and -## MinimalBlockDimension>. -## -## -## <#/GAPDoc> -## -DeclareGlobalFunction("AllIrreducibleSolvableGroups"); - -############################################################################# -## -#F OneIrreducibleSolvableGroup( , , , , ...) -## -## <#GAPDoc Label="OneIrreducibleSolvableGroup"> -## -## -## -## -## This function returns one solvable subgroup G of a -## matrix group over a prime field such that -## f(G) = v or f(G) \in v, for all pairs (f,v) in -## (func1, val1), (func2, val2), \ldots. -## The following possibilities for the functions f -## are particularly efficient, because the values can be read off the -## information in the data base: -## DegreeOfMatrixGroup (or -## or -## ) for the -## linear degree, -## for the field characteristic, -## , IsPrimitiveMatrixGroup -## (or IsLinearlyPrimitive), and -## MinimalBlockDimension>. -## -## -## <#/GAPDoc> -## -DeclareGlobalFunction("OneIrreducibleSolvableGroup"); - -############################################################################# -## -#A DegreeOfMatrixGroup() -## -## -## -## -## -## This function returns the dimension of the underlying vector space, -## same as DimensionOfMatrixGroup -## -## -## -if not IsBound(DegreeOfMatrixGroup) then - # DegreeOfMatrixGroup is also declared identically in irredsol, so to - # avoid warnings we only define it if necessary - DeclareSynonymAttr("DegreeOfMatrixGroup", DimensionOfMatrixGroup); -fi; - -############################################################################# -## -#A MinimalBlockDimension() -## -## -## -## -## -## The minimum integer n such that the matrix group has an imprimitivity -## system consisting of n-dimensional subspaces of the underlying vector -## space over FieldOfMatrixGroup(G) -## -## -## -DeclareAttribute("MinimalBlockDimension", IsMatrixGroup); - -############################################################################# -## -#P IsPrimitiveMatrixGroup() -## -## -## -## -## -## true if G is primitive over FieldOfMatrixGroup(G) -## -## -## -DeclareProperty("IsPrimitiveMatrixGroup", IsMatrixGroup); -DeclareSynonymAttr ("IsLinearlyPrimitive", IsPrimitiveMatrixGroup); diff --git a/lib/irredsol.gi b/lib/irredsol.gi deleted file mode 100644 index 379f8b0..0000000 --- a/lib/irredsol.gi +++ /dev/null @@ -1,462 +0,0 @@ -############################################################################# -## -#W irredsol.gi GAP group library Mark Short -#W Burkhard Höfling -## -## -#Y Copyright (C) 1993, Murdoch University, Perth, Australia -#Y Copyright (C) 2001, Technische Universität, Braunschweig, Germany -## -## This file contains the functions and data for the irreducible solvable -## matrix group library. It contains exactly one member for each of the -## 372 conjugacy classes of irreducible solvable subgroups of $GL(n,p)$ -## where $1 < n$, $p$ is a prime, and $p^n < 256$. -## -## By well known theory, this data also doubles as a library of primitive -## solvable permutation groups of non-prime degree <256. -## -## This file contains the data from Mark Short's thesis, plus two groups -## missing from that list, subsequently discovered by Alexander Hulpke. -## - -############################################################################# -## -#F IrreducibleSolvableGroup(,

,) . . . . . . old extraction function -## -InstallGlobalFunction( IrreducibleSolvableGroup, function ( n, p, k ) - - Error ("This function is obsolete. Please see ", - "`IrreducibleSolvableGroupMS' in the GAP manual"); -end); - -############################################################################# -## -#F IrreducibleSolvableGroupMS(,

,) . . . . . extraction function -## -InstallGlobalFunction( IrreducibleSolvableGroupMS, function ( n, p, k ) - local - desc, # compact description of group - guard, # number of guardian of group - gdgens, # list of generators for that guardian - len, # length of this list - numgen, # number of generators of the group - pos, # marks position in desc where next normal form begins - i, j, # loop variables - gens, # the generators of the group - idmat, # the identity matrix of GL(n,p) - mat, # evolves from idmat into a generator of the group - grp; # group to be returned - - # Check for sensible input - if not (n > 1 and p in Primes and p^n < 256) then - Error( "n must be > 1, p must be prime, and p^n must be < 256" ); - fi; - if k > Length( IrredSolGroupList[ n ][ p ] ) then - Error( "there is no k-th group for this n and p" ); - fi; - - # Pick out a few important pieces of information - desc := IrredSolGroupList[ n ][ p ][ k ]; - gdgens := IrredSolJSGens[ n ][ p ][ desc[3] ]; - len := Length( gdgens ); - - # Construct the generators - gens := [ ]; - idmat := Immutable( IdentityMat( n, GF( p ) ) ); - for i in [1..(Length(desc)-3)/len] do - mat := idmat; - for j in [1..len] do - mat := mat * ( gdgens[ j ] ^ desc[ 3 + len*(i-1) + j ] ); - od; - gens[ i ] := mat; - od; - - # Make the group and return it - grp := GroupByGenerators( gens, idmat ); - SetSize( grp, desc[ 1 ] ); - if desc[ 2 ] = 0 then - SetIsPrimitiveMatrixGroup (grp, true); - SetMinimalBlockDimension (grp, n); - else - SetIsPrimitiveMatrixGroup (grp, false); - SetMinimalBlockDimension (grp, desc[ 2 ]); - fi; - return grp; -end ); # IrreducibleSolvableGroupMS( n, p, k ) - - -############################################################################# -## -#F NumberIrreducibleSolvableGroups(,

) -## -## returns the number of conjugacy classes of irreducible solvable subgroups -## of GL(n,p) -## -InstallGlobalFunction( NumberIrreducibleSolvableGroups, function ( n, p ) - return Length (IrredSolGroupList[ n ][ p ]); -end); - - -############################################################################# -## -#F AllIrreducibleSolvableGroups(...) -#F select all irreducible solvable groups -## -InstallGlobalFunction (AllIrreducibleSolvableGroups, function ( arg ) - local - dims, # dimensions - chars, # characteristics - sizes, # sizes - linprim, # linearly primitive flag - minblockdims, # minimal block dimensions - funs, # other functions requested by caller - vals, # their values - i, # counter through arg - nppairs, # (n,p) pairs such that p^n < 256 - np, # counter through nppairs - n, # n - p, # p - grplist, # list of groups to be returned - k, # counter through group descriptions for GL(n,p) - desc, # compact description of the kth group in GL(n,p) - gp, # the group itself - passtest; # boolean flag - - # Initialize a few things - funs := [ ]; - vals := [ ]; - - # Loop through the arguments - for i in [1..Length(arg)/2] do - - # Special case for Dimension - if arg[2*i-1] in [ Dimension, DimensionOfMatrixGroup, DegreeOfMatrixGroup] then - if not IsList( arg[2*i] ) then - arg[2*i] := [ arg[2*i] ]; - fi; - dims := [ ]; - for n in arg[2*i] do - if n in [ 2, 3, 4, 5, 6, 7 ] then - Add( dims, n ); - else - Print( "#W AllIrreducibleSolvableGroups: ", - "n = ", n, " outside range of library\n" ); - fi; - od; - if dims = [ ] then - Error( "all Dimension arguments outside range of library" ); - fi; - - # Special case for CharFFE - elif arg[2*i-1] = Characteristic then - if not IsList( arg[2*i] ) then - arg[2*i] := [ arg[2*i] ]; - fi; - chars := [ ]; - for p in arg[2*i] do - if p in [ 2, 3, 5, 7, 11, 13 ] then - Add( chars, p ); - else - Print( "#W AllIrreducibleSolvableGroups: ", - "p = ", p, " outside range of library\n" ); - fi; - od; - if chars = [ ] then - Error( "all Characteristic arguments outside range of library" ); - fi; - - # Special case for Size - elif arg[2*i-1] = Size then - if IsList( arg[2*i] ) then - sizes := arg[2*i]; - else - sizes := [ arg[2*i] ]; - fi; - - # Special case for IsPrimitiveMatrixGroup - elif arg[2*i-1] in [ IsLinearlyPrimitive, IsPrimitiveMatrixGroup] then - if IsBool( arg[2*i] ) then - linprim := arg[2*i]; - else - Error( "IsPrimitive argument must be boolean" ); - fi; - - # Special case for MinimalBlockDimension - elif arg[2*i-1] = MinimalBlockDimension then - if IsList( arg[2*i] ) then - minblockdims := arg[2*i]; - else - minblockdims := [ arg[2*i] ]; - fi; - - # General case - elif IsFunction( arg[2*i-1] ) then - Add( funs, arg[2*i-1] ); - Add( vals, arg[2*i] ); - else - Error( " must be a function" ); - fi; - od; - - # Find the allowable (n,p) pairs - if not IsBound( dims ) and not IsBound( chars ) then - nppairs := [ [2,2], [2,3], [2,5], [2,7], [2,11], [2,13], - [3,2], [3,3], [3,5], - [4,2], [4,3], - [5,2], [5,3], - [6,2], - [7,2] ]; - elif IsBound( dims ) and IsBound( chars ) then - nppairs := [ ]; - for n in dims do - for p in chars do - if p^n < 256 then - Add( nppairs, [ n, p ] ); - else - Print( "#W AllIrreducibleSolvableGroups: n = ", n, - ", p = ", p, " outside range of library\n" ); - fi; - od; - od; - if nppairs = [ ] then - Error( "none of the specified (n,p) pairs satisfy p^n < 256" ); - fi; - else - if not IsBound( dims ) then - dims := [ 2, 3, 4, 5, 6, 7 ]; - else - chars := [ 2, 3, 5, 7, 11, 13 ]; - fi; - nppairs := [ ]; - for n in dims do - for p in chars do - if p^n < 256 then - Add( nppairs, [ n, p ] ); - fi; - od; - od; - fi; - - # Make the list of groups - grplist := [ ]; - - # Loop through the allowable (n,p) pairs - for np in nppairs do - n := np[ 1 ]; - p := np[ 2 ]; - - # Loop through the group descriptions - for k in [1..Length( IrredSolGroupList[ n ][ p ] )] do - gp := [ ]; - desc := IrredSolGroupList[ n ][ p ][ k ]; - - # Check if the description satisfies the special case criteria. - # If it does, create the group - if ( not IsBound( sizes ) or desc[1] in sizes ) - and ( not IsBound( linprim ) or (desc[2] = 0) = linprim ) - and ( not IsBound( minblockdims ) or desc[2] in minblockdims ) - then - gp := IrreducibleSolvableGroupMS( n, p, k ); - fi; - - # Now see if the group (if created) satisfies the other criteria. - # If it does, add it to the list - if gp <> [ ] then - passtest := true; - i := 1; - while passtest and i <= Length( funs ) do - passtest := funs[ i ]( gp ) = vals[ i ] - or ( IsList( vals[ i ] ) - and funs[ i ]( gp ) in vals[ i ] ); - i := i + 1; - od; - if passtest then - Add( grplist, gp ); - fi; - fi; - od; - od; - - return grplist; -end); # AllIrreducibleSolvableGroups( fun1, val1, fun2, val2, ... ) - - -############################################################################# -## -#F OneIrreducibleSolvableGroup(...) -## extract one irreducible solvable group -## -InstallGlobalFunction(OneIrreducibleSolvableGroup, function ( arg ) - local - dims, # dimensions - chars, # characteristics - sizes, # sizes - linprim, # linearly primitive flag - minblockdims, # minimal block dimensions - funs, # other functions requested by caller - vals, # their values - i, # counter through arg - nppairs, # (n,p) pairs such that p^n < 256 - np, # counter through (n,p) pairs - n, # n - p, # p - k, # counter through group descriptions for GL(n,p) - desc, # compact description of the kth group in GL(n,p) - gp, # the group to be returned - passtest; # boolean flag - - # Initialize a few things - funs := [ ]; - vals := [ ]; - - # Loop through the arguments - for i in [1..Length(arg)/2] do - - # Special case for Dimension - if arg[2*i-1] in [ Dimension, DimensionOfMatrixGroup, DegreeOfMatrixGroup] then - if not IsList( arg[2*i] ) then - arg[2*i] := [ arg[2*i] ]; - fi; - dims := [ ]; - for n in arg[2*i] do - if n in [ 2, 3, 4, 5, 6, 7 ] then - Add( dims, n ); - else - Print( "#W OneIrreducibleSolvableGroup: ", - "n = ", n, " outside range of library\n" ); - fi; - od; - if dims = [ ] then - Error( "all Dimension arguments outside range of library" ); - fi; - - # Special case for CharFFE - elif arg[2*i-1] = Characteristic then - if not IsList( arg[2*i] ) then - arg[2*i] := [ arg[2*i] ]; - fi; - chars := [ ]; - for p in arg[2*i] do - if p in [ 2, 3, 5, 7, 11, 13 ] then - Add( chars, p ); - else - Print( "#W OneIrreducibleSolvableGroup: ", - "p = ", p, " outside range of library\n" ); - fi; - od; - if chars = [ ] then - Error( "all Characteristic arguments outside range of library" ); - fi; - - # Special case for Size - elif arg[2*i-1] = Size then - if IsList( arg[2*i] ) then - sizes := arg[2*i]; - else - sizes := [ arg[2*i] ]; - fi; - - # Special case for IsPrimitiveMatrixGroup - elif arg[2*i-1] in [ IsLinearlyPrimitive, IsPrimitiveMatrixGroup] then - if IsBool( arg[2*i] ) then - linprim := arg[2*i]; - else - Error( "IsPrimitiveMatrixGroup argument must be boolean" ); - fi; - - # Special case for MinimalBlockDimension - elif arg[2*i-1] = MinimalBlockDimension then - if IsList( arg[2*i] ) then - minblockdims := arg[2*i]; - else - minblockdims := [ arg[2*i] ]; - fi; - - # General case - elif IsFunction( arg[2*i-1] ) then - Add( funs, arg[2*i-1] ); - Add( vals, arg[2*i] ); - else - Error( " must be a function" ); - fi; - od; - - # Find the allowable (n,p) pairs - if not IsBound( dims ) and not IsBound( chars ) then - nppairs := [ [2,2], [2,3], [2,5], [2,7], [2,11], [2,13], - [3,2], [3,3], [3,5], - [4,2], [4,3], - [5,2], [5,3], - [6,2], - [7,2] ]; - elif IsBound( dims ) and IsBound( chars ) then - nppairs := [ ]; - for n in dims do - for p in chars do - if p^n < 256 then - Add( nppairs, [ n, p ] ); - else - Print( "#W OneIrreducibleSolvableGroup: n = ", n, - ", p = ", p, " outside range of library\n" ); - fi; - od; - od; - if nppairs = [ ] then - Error( "none of the specified (n,p) pairs satisfy p^n < 256" ); - fi; - else - if not IsBound( dims ) then - dims := [ 2, 3, 4, 5, 6, 7 ]; - else - chars := [ 2, 3, 5, 7, 11, 13 ]; - fi; - nppairs := [ ]; - for n in dims do - for p in chars do - if p^n < 256 then - Add( nppairs, [ n, p ] ); - fi; - od; - od; - fi; - - # Find the group. - # Loop through the allowable (n,p) pairs - for np in nppairs do - n := np[ 1 ]; - p := np[ 2 ]; - - # Loop through the group descriptions - for k in [1..Length( IrredSolGroupList[ n ][ p ] )] do - gp := [ ]; - desc := IrredSolGroupList[ n ][ p ][ k ]; - - # Check if the description satisfies the special case criteria. - # If it does, create the group - if ( not IsBound( sizes ) or desc[1] in sizes ) - and ( not IsBound( linprim ) or (desc[2] = 0) = linprim ) - and ( not IsBound( minblockdims ) or desc[2] in minblockdims ) - then - gp := IrreducibleSolvableGroupMS( n, p, k ); - fi; - - # Now see if the group (if created) satisfies the other criteria. - # If it does, return it - if gp <> [ ] then - passtest := true; - i := 1; - while passtest and i <= Length( funs ) do - passtest := funs[ i ]( gp ) = vals[ i ] - or ( IsList( vals[ i ] ) - and funs[ i ]( gp ) in vals[ i ] ); - i := i + 1; - od; - if passtest then - return gp; - fi; - fi; - od; - od; - - return false; -end); # OneIrreducibleSolvableGroup( fun1, val1, fun2, val2, ... ) diff --git a/lib/irredsol.grp b/lib/irredsol.grp deleted file mode 100644 index c53de06..0000000 --- a/lib/irredsol.grp +++ /dev/null @@ -1,846 +0,0 @@ -############################################################################# -## -#W irredsol.grp GAP group library Mark Short -#W Burkhard Höfling -## -## -#Y Copyright (C) 1993, Murdoch University, Perth, Australia -## -## This file contains the functions and data for the irreducible solvable -## matrix group library. It contains exactly one member for each of the -## 372 conjugacy classes of irreducible solvable subgroups of $GL(n,p)$ -## where $1 < n$, $p$ is a prime, and $p^n < 256$. -## -## By well known theory, this data also doubles as a library of primitive -## solvable permutation groups of non-prime degree <256. -## -## This file contains the data from Mark Short's thesis, plus two groups -## missing from that list, subsequently discovered by Alexander Hulpke. -## - -############################################################################# -## -#V PrimitiveIndexIrreducibleSolvableGroup -## -BindGlobal("PrimitiveIndexIrreducibleSolvableGroup", - [,,,[1,2],,,,[1,2],[1,2,3,4,5,6,7],,,,,,, - [1,2,3,4,5,6,7,8,9,10],,,,,,,,, - [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19],, - [1,2,3,4,5,6,7,8,9],,,,,[1,2],,,,,,,,,,,,,,,,, - [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20, - 21,22,23,24,25,26,27,28,29],,,,,,,,,,,,,,, - [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20, - 21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38, - 39,40],,,,,,,,,,,,,,,,, - [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20, - 21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38, - 39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56, - 57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74, - 75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92, - 93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108], - ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, - [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20, - 21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42],,,, - [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20, - 21,22],,,[1,2],,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, - [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20, - 21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38, - 39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60, - # the two missing ones (in increasing order) - 74,75], - ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, - ,,,,,,,,,,,,,,,,,,[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]]); - - -############################################################################# -## -#V IrredSolJSGens[] . . . . . . . . . . . . . . . generators for the groups -## -## 'IrredSolJSGens[][

][]' is a generating set for the -th -## JS-maximal of GL(,

). -## This generating set is polycyclic, i.e. forms an AG-system for the group. -## A JS-maximal is a maximal irreducible solvable subgroup of GL(,

) -## (for a few exceptional small values of n and p this group isn't maximal). -## Every group in the library is generated with reference to the generating -## set of one of these JS-maximals, called its guardian (a group may be a -## subgroup of several JS-maximals but it only has one guardian). -## -BindGlobal("IrredSolJSGens", -[ - [], # GL(1,*) - [ # GL(2,*) - [], # GL(2,1) - [ # GL(2,2) - [], # 1-th JS-maximal - [ # 2-th JS-maximal - [[1,0],[1,1]]*Z(2)^0, - [[0,1],[1,1]]*Z(2)^0 ]], - [ # GL(2,3) - [ # 1-th JS-maximal - [[0,1],[1,0]]*Z(3)^0, - [[2,0],[0,1]]*Z(3)^0, - [[1,0],[0,2]]*Z(3)^0 ], - [ # 2-th JS-maximal - [[1,0],[2,2]]*Z(3)^0, - [[0,1],[1,2]]*Z(3)^0 ], - [ # 3-th JS-maximal - [[1,2],[0,2]]*Z(3)^0, - [[1,2],[0,1]]*Z(3)^0, - [[0,2],[1,0]]*Z(3)^0, - [[1,1],[1,2]]*Z(3)^0, - [[2,0],[0,2]]*Z(3)^0 ]], - [], # GL(2,4) - [ # GL(2,5) - [ # 1-th JS-maximal - [[0,1],[1,0]]*Z(5)^0, - [[2,0],[0,1]]*Z(5)^0, - [[1,0],[0,2]]*Z(5)^0 ], - [ # 2-th JS-maximal - [[1,0],[4,4]]*Z(5)^0, - [[0,1],[3,4]]*Z(5)^0 ], - [], # 3-th JS-maximal - [ # 4-th JS-maximal - [[1,4],[4,4]]*Z(5)^0, - [[3,4],[3,1]]*Z(5)^0, - [[0,2],[2,0]]*Z(5)^0, - [[2,0],[0,3]]*Z(5)^0, - [[2,0],[0,2]]*Z(5)^0 ]], - [], # GL(2,6) - [ # GL(2,7) - [ # 1-th JS-maximal - [[0,1],[1,0]]*Z(7)^0, - [[3,0],[0,1]]*Z(7)^0, - [[1,0],[0,3]]*Z(7)^0 ], - [ # 2-th JS-maximal - [[1,0],[6,6]]*Z(7)^0, - [[0,1],[4,6]]*Z(7)^0 ], - [ # 3-th JS-maximal - [[4,1],[4,3]]*Z(7)^0, - [[6,2],[3,0]]*Z(7)^0, - [[0,6],[1,0]]*Z(7)^0, - [[2,3],[3,5]]*Z(7)^0, - [[3,0],[0,3]]*Z(7)^0 ]], - [], # GL(2,8) - [], # GL(2,9) - [], # GL(2,10) - [ # GL(2,11) - [ # 1-th JS-maximal - [[0,1],[1,0]]*Z(11)^0, - [[2,0],[0,1]]*Z(11)^0, - [[1,0],[0,2]]*Z(11)^0 ], - [ # 2-th JS-maximal - [[1,0],[10,10]]*Z(11)^0, - [[0,1],[4,10]]*Z(11)^0 ], - [ # 3-th JS-maximal - [[4,5],[8,7]]*Z(11)^0, - [[4,7],[8,6]]*Z(11)^0, - [[0,10],[1,0]]*Z(11)^0, - [[1,3],[3,10]]*Z(11)^0, - [[2,0],[0,2]]*Z(11)^0 ]], - [], # GL(2,12) - [ # GL(2,13) - [ # 1-th JS-maximal - [[0,1],[1,0]]*Z(13)^0, - [[2,0],[0,1]]*Z(13)^0, - [[1,0],[0,2]]*Z(13)^0 ], - [ # 2-th JS-maximal - [[1,0],[12,12]]*Z(13)^0, - [[0,1],[11,12]]*Z(13)^0 ], - [], # 3-th JS-maximal - [ # 4-th JS-maximal - [[3,10],[10,10]]*Z(13)^0, - [[2,3],[2,10]]*Z(13)^0, - [[0,5],[5,0]]*Z(13)^0, - [[5,0],[0,8]]*Z(13)^0, - [[2,0],[0,2]]*Z(13)^0 ]]], - [ # GL(3,*) - [], # GL(3,1) - [ # GL(3,2) - [], # 1-th JS-maximal - [ # 2-th JS-maximal - [[1,0,0],[0,0,1],[1,1,1]]*Z(2)^0, - [[0,1,0],[0,0,1],[1,0,1]]*Z(2)^0 ]], - [ # GL(3,3) - [ # 1-th JS-maximal - [[0,1,0],[1,0,0],[0,0,1]]*Z(3)^0, - [[0,1,0],[0,0,1],[1,0,0]]*Z(3)^0, - [[2,0,0],[0,1,0],[0,0,1]]*Z(3)^0, - [[1,0,0],[0,2,0],[0,0,1]]*Z(3)^0, - [[1,0,0],[0,1,0],[0,0,2]]*Z(3)^0 ], - [ # 2-th JS-maximal - [[1,0,0],[2,0,1],[0,2,2]]*Z(3)^0, - [[0,1,0],[0,0,1],[2,0,1]]*Z(3)^0 ]], - [], # GL(3,4) - [ # GL(3,5) - [ # 1-th JS-maximal - [[0,1,0],[1,0,0],[0,0,1]]*Z(5)^0, - [[0,1,0],[0,0,1],[1,0,0]]*Z(5)^0, - [[2,0,0],[0,1,0],[0,0,1]]*Z(5)^0, - [[1,0,0],[0,2,0],[0,0,1]]*Z(5)^0, - [[1,0,0],[0,1,0],[0,0,2]]*Z(5)^0 ], - [ # 2-th JS-maximal - [[1,0,0],[3,2,2],[1,4,2]]*Z(5)^0, - [[0,1,0],[0,0,1],[3,0,4]]*Z(5)^0 ]]], - [ # GL(4,*) - [], # GL(4,1) - [ # GL(4,2) - [], # 1-th JS-maximal - [ # 2-th JS-maximal - [[0,0,1,0],[0,0,0,1],[1,0,0,0],[0,1,0,0]]*Z(2)^0, - [[1,0,0,0],[1,1,0,0],[0,0,1,0],[0,0,0,1]]*Z(2)^0, - [[0,1,0,0],[1,1,0,0],[0,0,1,0],[0,0,0,1]]*Z(2)^0, - [[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,1,1]]*Z(2)^0, - [[1,0,0,0],[0,1,0,0],[0,0,0,1],[0,0,1,1]]*Z(2)^0 ], - [], # 3-th JS-maximal - [], # 4-th JS-maximal - [ # 5-th JS-maximal - [[1,0,0,0],[0,0,1,0],[1,0,0,1],[1,1,1,1]]*Z(2)^0, - [[0,1,0,0],[0,0,1,0],[0,0,0,1],[1,0,0,1]]*Z(2)^0 ]], - [ # GL(4,3) - [ # 1-th JS-maximal - [[0,1,0,0],[1,0,0,0],[0,0,1,0],[0,0,0,1]]*Z(3)^0, - [[0,1,0,0],[0,0,1,0],[1,0,0,0],[0,0,0,1]]*Z(3)^0, - [[0,0,0,1],[0,0,1,0],[0,1,0,0],[1,0,0,0]]*Z(3)^0, - [[0,1,0,0],[1,0,0,0],[0,0,0,1],[0,0,1,0]]*Z(3)^0, - [[2,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]]*Z(3)^0, - [[1,0,0,0],[0,2,0,0],[0,0,1,0],[0,0,0,1]]*Z(3)^0, - [[1,0,0,0],[0,1,0,0],[0,0,2,0],[0,0,0,1]]*Z(3)^0, - [[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,2]]*Z(3)^0 ], - [ # 2-th JS-maximal - [[0,0,1,0],[0,0,0,1],[1,0,0,0],[0,1,0,0]]*Z(3)^0, - [[1,0,0,0],[2,2,0,0],[0,0,1,0],[0,0,0,1]]*Z(3)^0, - [[0,1,0,0],[1,2,0,0],[0,0,1,0],[0,0,0,1]]*Z(3)^0, - [[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,2,2]]*Z(3)^0, - [[1,0,0,0],[0,1,0,0],[0,0,0,1],[0,0,1,2]]*Z(3)^0 ], - [ # 3-th JS-maximal - [[0,0,1,0],[0,0,0,1],[1,0,0,0],[0,1,0,0]]*Z(3)^0, - [[1,2,0,0],[0,2,0,0],[0,0,1,0],[0,0,0,1]]*Z(3)^0, - [[1,2,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]]*Z(3)^0, - [[0,2,0,0],[1,0,0,0],[0,0,1,0],[0,0,0,1]]*Z(3)^0, - [[1,1,0,0],[1,2,0,0],[0,0,1,0],[0,0,0,1]]*Z(3)^0, - [[1,0,0,0],[0,1,0,0],[0,0,1,2],[0,0,0,2]]*Z(3)^0, - [[1,0,0,0],[0,1,0,0],[0,0,1,2],[0,0,0,1]]*Z(3)^0, - [[1,0,0,0],[0,1,0,0],[0,0,0,2],[0,0,1,0]]*Z(3)^0, - [[1,0,0,0],[0,1,0,0],[0,0,1,1],[0,0,1,2]]*Z(3)^0 ], - [], # 4-th JS-maximal - [ # 5-th JS-maximal - [[1,0,0,0],[0,0,0,1],[1,2,1,2],[0,2,2,1]]*Z(3)^0, - [[0,1,0,0],[0,0,1,0],[0,0,0,1],[1,0,0,2]]*Z(3)^0 ], - [ # 6-th JS-maximal - [[1,0,0,0],[0,1,0,0],[2,0,2,0],[0,2,0,2]]*Z(3)^0, - [[0,0,1,0],[0,0,0,1],[1,0,2,0],[0,1,0,2]]*Z(3)^0, - [[1,2,0,0],[0,2,0,0],[0,0,1,2],[0,0,0,2]]*Z(3)^0, - [[1,2,0,0],[0,1,0,0],[0,0,1,2],[0,0,0,1]]*Z(3)^0, - [[0,2,0,0],[1,0,0,0],[0,0,0,2],[0,0,1,0]]*Z(3)^0, - [[1,1,0,0],[1,2,0,0],[0,0,1,1],[0,0,1,2]]*Z(3)^0 ], - [ # 7-th JS-maximal - [[1,0,0,0],[0,0,1,0],[0,1,0,0],[0,0,0,1]]*Z(3)^0, - [[1,0,2,0],[0,1,0,2],[0,0,2,0],[0,0,0,2]]*Z(3)^0, - [[1,0,2,0],[0,1,0,2],[0,0,1,0],[0,0,0,1]]*Z(3)^0, - [[0,0,2,0],[0,0,0,2],[1,0,0,0],[0,1,0,0]]*Z(3)^0, - [[1,0,1,0],[0,1,0,1],[1,0,2,0],[0,1,0,2]]*Z(3)^0, - [[1,2,0,0],[0,2,0,0],[0,0,1,2],[0,0,0,2]]*Z(3)^0, - [[1,2,0,0],[0,1,0,0],[0,0,1,2],[0,0,0,1]]*Z(3)^0, - [[0,2,0,0],[1,0,0,0],[0,0,0,2],[0,0,1,0]]*Z(3)^0, - [[1,1,0,0],[1,2,0,0],[0,0,1,1],[0,0,1,2]]*Z(3)^0 ], - [ # 8-th JS-maximal - [[1,0,0,1],[1,1,2,1],[2,0,0,1],[2,2,2,1]]*Z(3)^0, - [[2,0,2,0],[0,1,0,1],[2,2,1,1],[1,2,2,1]]*Z(3)^0, - [[0,0,1,0],[0,0,0,1],[1,0,0,0],[0,1,0,0]]*Z(3)^0, - [[1,0,0,0],[0,1,0,0],[0,0,2,0],[0,0,0,2]]*Z(3)^0, - [[0,2,0,0],[1,0,0,0],[0,0,0,2],[0,0,1,0]]*Z(3)^0, - [[1,1,0,0],[1,2,0,0],[0,0,1,1],[0,0,1,2]]*Z(3)^0, - [[2,0,0,0],[0,2,0,0],[0,0,2,0],[0,0,0,2]]*Z(3)^0 ]]], - [ # GL(5,*) - [], # GL(5,1) - [ # GL(5,2) - [], # 1-th JS-maximal - [ # 2-th JS-maximal - [[1,0,0,0,0],[0,0,1,0,0],[0,0,0,0,1],[0,1,0,0,1],[0,1,0,1,1]]*Z(2)^0, - [[0,1,0,0,0],[0,0,1,0,0],[0,0,0,1,0],[0,0,0,0,1],[1,0,0,1,0]]*Z(2)^0 ]], - [ # GL(5,3) - [ # 1-th JS-maximal - [[0,1,0,0,0],[0,0,0,1,0],[1,0,0,0,0],[0,0,1,0,0],[0,0,0,0,1]]*Z(3)^0, - [[0,1,0,0,0],[0,0,1,0,0],[0,0,0,1,0],[0,0,0,0,1],[1,0,0,0,0]]*Z(3)^0, - [[2,0,0,0,0],[0,1,0,0,0],[0,0,1,0,0],[0,0,0,1,0],[0,0,0,0,1]]*Z(3)^0, - [[1,0,0,0,0],[0,2,0,0,0],[0,0,1,0,0],[0,0,0,1,0],[0,0,0,0,1]]*Z(3)^0, - [[1,0,0,0,0],[0,1,0,0,0],[0,0,2,0,0],[0,0,0,1,0],[0,0,0,0,1]]*Z(3)^0, - [[1,0,0,0,0],[0,1,0,0,0],[0,0,1,0,0],[0,0,0,2,0],[0,0,0,0,1]]*Z(3)^0, - [[1,0,0,0,0],[0,1,0,0,0],[0,0,1,0,0],[0,0,0,1,0],[0,0,0,0,2]]*Z(3)^0 ], - [ # 2-th JS-maximal - [[1,0,0,0,0],[0,0,0,1,0],[1,2,1,2,1],[0,2,2,0,1],[0,1,2,1,1]]*Z(3)^0, - [[0,1,0,0,0],[0,0,1,0,0],[0,0,0,1,0],[0,0,0,0,1],[2,0,2,0,2]]*Z(3)^0 ]]], - [ # GL(6,*) - [], # GL(6,1) - [ # GL(6,2) - [], # 1-th JS-maximal - [], # 2-th JS-maximal - [ # 3-th JS-maximal - [[0,0,1,0,0,0],[0,0,0,1,0,0],[1,0,0,0,0,0], - [0,1,0,0,0,0],[0,0,0,0,1,0],[0,0,0,0,0,1]]*Z(2)^0, - [[0,0,1,0,0,0],[0,0,0,1,0,0],[0,0,0,0,1,0], - [0,0,0,0,0,1],[1,0,0,0,0,0],[0,1,0,0,0,0]]*Z(2)^0, - [[1,0,0,0,0,0],[1,1,0,0,0,0],[0,0,1,0,0,0], - [0,0,0,1,0,0],[0,0,0,0,1,0],[0,0,0,0,0,1]]*Z(2)^0, - [[0,1,0,0,0,0],[1,1,0,0,0,0],[0,0,1,0,0,0], - [0,0,0,1,0,0],[0,0,0,0,1,0],[0,0,0,0,0,1]]*Z(2)^0, - [[1,0,0,0,0,0],[0,1,0,0,0,0],[0,0,1,0,0,0], - [0,0,1,1,0,0],[0,0,0,0,1,0],[0,0,0,0,0,1]]*Z(2)^0, - [[1,0,0,0,0,0],[0,1,0,0,0,0],[0,0,0,1,0,0], - [0,0,1,1,0,0],[0,0,0,0,1,0],[0,0,0,0,0,1]]*Z(2)^0, - [[1,0,0,0,0,0],[0,1,0,0,0,0],[0,0,1,0,0,0], - [0,0,0,1,0,0],[0,0,0,0,1,0],[0,0,0,0,1,1]]*Z(2)^0, - [[1,0,0,0,0,0],[0,1,0,0,0,0],[0,0,1,0,0,0], - [0,0,0,1,0,0],[0,0,0,0,0,1],[0,0,0,0,1,1]]*Z(2)^0 ], - [], # 4-th JS-maximal - [], # 5-th JS-maximal - [ # 6-th JS-maximal - [[0,0,0,1,0,0],[0,0,0,0,1,0],[0,0,0,0,0,1], - [1,0,0,0,0,0],[0,1,0,0,0,0],[0,0,1,0,0,0]]*Z(2)^0, - [[1,0,0,0,0,0],[0,0,1,0,0,0],[1,1,1,0,0,0], - [0,0,0,1,0,0],[0,0,0,0,1,0],[0,0,0,0,0,1]]*Z(2)^0, - [[0,1,0,0,0,0],[0,0,1,0,0,0],[1,0,1,0,0,0], - [0,0,0,1,0,0],[0,0,0,0,1,0],[0,0,0,0,0,1]]*Z(2)^0, - [[1,0,0,0,0,0],[0,1,0,0,0,0],[0,0,1,0,0,0], - [0,0,0,1,0,0],[0,0,0,0,0,1],[0,0,0,1,1,1]]*Z(2)^0, - [[1,0,0,0,0,0],[0,1,0,0,0,0],[0,0,1,0,0,0], - [0,0,0,0,1,0],[0,0,0,0,0,1],[0,0,0,1,0,1]]*Z(2)^0 ], - [], # 7-th JS-maximal - [ # 8-th JS-maximal - [[1,0,0,0,0,0],[0,0,1,0,0,0],[0,0,0,0,1,0], - [1,0,0,0,0,1],[1,1,1,0,0,1],[1,1,1,1,1,1]]*Z(2)^0, - [[0,1,0,0,0,0],[0,0,1,0,0,0],[0,0,0,1,0,0], - [0,0,0,0,1,0],[0,0,0,0,0,1],[1,0,0,0,0,1]]*Z(2)^0 ], - [], # 9-th JS-maximal - [], # 10-th JS-maximal - [ # 11-th JS-maximal - [[1,0,0,0,0,0],[1,1,0,0,0,0],[0,0,1,0,0,0], - [0,0,1,1,0,0],[0,0,0,0,1,0],[0,0,0,0,1,1]]*Z(2)^0, - [[1,0,0,0,0,0],[0,1,0,0,0,0],[0,0,1,0,0,0], - [0,0,0,1,0,0],[0,0,0,0,0,1],[0,0,0,0,1,1]]*Z(2)^0, - [[0,1,1,1,0,1],[1,1,1,0,1,1],[1,1,0,1,0,1], - [1,0,1,1,1,1],[1,1,1,1,1,0],[1,0,1,0,0,1]]*Z(2)^0, - [[0,1,1,1,1,1],[1,1,1,0,1,0],[1,1,0,1,1,1], - [1,0,1,1,1,0],[0,1,0,1,1,0],[1,1,1,1,0,1]]*Z(2)^0, - [[0,0,0,0,1,0],[0,0,0,0,0,1],[1,0,0,0,0,0], - [0,1,0,0,0,0],[0,0,1,0,0,0],[0,0,0,1,0,0]]*Z(2)^0, - [[1,0,0,0,0,0],[0,1,0,0,0,0],[0,0,0,1,0,0], - [0,0,1,1,0,0],[0,0,0,0,1,1],[0,0,0,0,1,0]]*Z(2)^0, - [[0,1,0,0,0,0],[1,1,0,0,0,0],[0,0,0,1,0,0], - [0,0,1,1,0,0],[0,0,0,0,0,1],[0,0,0,0,1,1]]*Z(2)^0 ]]], - [ # GL(7,*) - [], # GL(7,1) - [ # GL(7,2) - [], # 1-th JS-maximal - [ # 2-th JS-maximal - [[1,0,0,0,0,0,0],[0,0,1,0,0,0,0],[0,0,0,0,1,0,0],[0,0,0,0,0,0,1], - [0,1,1,0,0,0,0],[0,0,0,1,1,0,0],[0,0,0,0,0,1,1]]*Z(2)^0, - [[0,1,0,0,0,0,0],[0,0,1,0,0,0,0],[0,0,0,1,0,0,0],[0,0,0,0,1,0,0], - [0,0,0,0,0,1,0],[0,0,0,0,0,0,1],[1,1,0,0,0,0,0]]*Z(2)^0 ]]]]); - - -############################################################################# -## -#V IrredSolGroupList[] . . . . . . . . . . . . . . description of the groups -## -## 'IrredSolGroupList[][

][] is a list containing the information -## about the -th group from GL(,

). -## The groups are ordered with respect to the following criteria: -## 1. Increasing size -## 2. Increasing guardian number -## If two groups have the same size and guardian, they are in no particular -## order. -## -## The list 'IrredSolGroupList[][

][] contains the following info: -## Position: [1]: the size of the group -## [2]: 0 if group is linearly primitive, -## otherwise its minimal block size -## [3]: the number of the group's guardian, -## i.e. its position in 'IrredSolJSGens[][

]', -## [4..]: the group's generators in normal form -## (with respect to its guardian's AG-system) -## -BindGlobal("IrredSolGroupList", -[ - [], # GL(1,*) - [ # GL(2,*) - [], # GL(2,1) - [ # GL(2,2) - [ 3, 0, 2, 0,1 ], - [ 6, 0, 2, 1,0, 0,1 ]], # guardian - [ # GL(2,3) - [ 4, 1, 2, 0,2 ], - [ 8, 1, 1, 1,0,0, 0,1,0, 0,0,1 ], # guardian, not max. - [ 8, 0, 2, 1,1, 0,2 ], - [ 8, 0, 2, 0,1 ], - [ 16, 0, 2, 1,0, 0,1 ], # guardian, not max. - [ 24, 0, 3, 0,1,0,0,0, 0,0,1,0,0, 0,0,0,1,0 ], - [ 48, 0, 3, 1,0,0,0,0, 0,1,0,0,0, 0,0,1,0,0, 0,0,0,1,0 ]], # guardian - [], # GL(2,4) - [ # GL(2,5) - [ 3, 0, 2, 0,8 ], - [ 6, 0, 2, 1,0, 0,8 ], - [ 6, 0, 2, 0,4 ], - [ 8, 1, 1, 1,2,0, 0,1,-1 ], - [ 8, 1, 1, 1,0,0, 0,1,-1 ], - [ 8, 1, 2, 0,3 ], - [ 12, 0, 2, 1,0, 0,4 ], - [ 12, 0, 2, 1,2, 0,4 ], - [ 12, 0, 2, 0,2 ], - [ 16, 1, 1, 1,1,0, 0,1,-1, 0,1,1 ], - [ 16, 1, 1, 1,0,0, 0,1,-1, 0,1,1 ], - [ 24, 0, 2, 1,1, 0,2 ], - [ 24, 0, 2, 1,0, 0,2 ], - [ 24, 0, 2, 0,1 ], - [ 24, 0, 4, 0,1,0,0,0, 0,0,1,0,0, 0,0,0,1,0 ], - [ 32, 1, 1, 1,0,0, 0,1,0, 0,0,1 ], # guardian, not max. - [ 48, 0, 2, 1,0, 0,1 ], # guardian - [ 48, 0, 4, 2,0,0,0,0, 0,1,0,0,0, 0,0,1,0,0, 0,0,0,1,0 ], - [ 96, 0, 4, 1,0,0,0,0, 0,1,0,0,0, 0,0,1,0,0, 0,0,0,1,0 ]], # guardian - [], # GL(2,6) - [ # GL(2,7) - [ 4, 1, 2, 0,12 ], - [ 6, 1, 1, 1,0,0, 0,2,-2 ], - [ 8, 1, 1, 1,0,0, 0,3,0, 0,0,3 ], - [ 8, 0, 2, 1,3, 0,12 ], - [ 8, 0, 2, 0,6 ], - [ 12, 1, 1, 1,3,0, 0,3,3, 0,2,-2 ], - [ 12, 1, 1, 1,0,0, 0,3,3, 0,2,-2 ], - [ 12, 1, 2, 0,4 ], - [ 16, 0, 2, 1,0, 0,6 ], - [ 16, 0, 2, 0,3 ], - [ 16, 0, 2, 1,3, 0,6 ], - [ 18, 1, 1, 1,0,0, 0,2,-2, 0,2,2 ], - [ 24, 1, 1, 1,0,0, 0,3,0, 0,0,3, 0,2,-2 ], - [ 24, 1, 1, 1,0,0, 0,3,0, 0,0,3, 0,2,2 ], - [ 24, 0, 2, 0,2 ], - [ 24, 0, 2, 1,3, 0,4 ], - [ 24, 0, 3, 0,1,0,0,2, 0,0,1,0,0, 0,0,0,1,0 ], - [ 24, 0, 3, 0,1,0,0,0, 0,0,1,0,0, 0,0,0,1,0 ], - [ 32, 0, 2, 1,0, 0,3 ], - [ 36, 1, 1, 1,3,0, 0,3,3, 0,2,-2, 0,2,2 ], - [ 36, 1, 1, 1,0,0, 0,3,3, 0,2,-2, 0,2,2 ], - [ 48, 0, 2, 1,3, 0,2 ], - [ 48, 0, 2, 0,1 ], - [ 48, 0, 2, 1,0, 0,2 ], - [ 48, 0, 3, 1,0,0,0,0, 0,1,0,0,0, 0,0,1,0,0, 0,0,0,1,0 ], - [ 72, 1, 1, 1,0,0, 0,3,0, 0,0,3, 0,2,-2, 0,2,2 ], # guardian - [ 72, 0, 3, 0,1,0,0,0, 0,0,1,0,0, 0,0,0,1,0, 0,0,0,0,2 ], - [ 96, 0, 2, 1,0, 0,1 ], # guardian - [ 144, 0, 3, 1,0,0,0,0, 0,1,0,0,0, 0,0,1,0,0, 0,0,0,1,0, 0,0,0,0,2] - # guardian - ], - [], # GL(2,8) - [], # GL(2,9) - [], # GL(2,10) - [ # GL(2,11) - [ 3, 0, 2, 0,40 ], - [ 4, 1, 2, 0,30 ], - [ 6, 0, 2, 0,20 ], - [ 6, 0, 2, 1,0, 0,40 ], - [ 8, 1, 1, 1,0,0, 0,5,0, 0,0,5 ], - [ 8, 0, 2, 0,15 ], - [ 8, 0, 2, 1,5, 0,30 ], - [ 10, 1, 1, 1,0,0, 0,2,-2 ], - [ 12, 0, 2, 0,10 ], - [ 12, 0, 2, 1,5, 0,20 ], - [ 12, 0, 2, 1,0, 0,20 ], - [ 15, 0, 2, 0,8 ], - [ 16, 0, 2, 1,0, 0,15 ], - [ 20, 1, 1, 1,0,0, 0,5,5, 0,2,-2 ], - [ 20, 1, 1, 1,5,0, 0,5,5, 0,2,-2 ], - [ 20, 1, 2, 0,6 ], - [ 24, 0, 2, 1,0, 0,10 ], - [ 24, 0, 2, 0,5 ], - [ 24, 0, 2, 1,5, 0,10 ], - [ 24, 0, 3, 0,1,0,0,0, 0,0,1,0,0, 0,0,0,1,0 ], - [ 30, 0, 2, 0,4 ], - [ 30, 0, 2, 1,0, 0,8 ], - [ 40, 1, 1, 1,0,0, 0,5,0, 0,0,5, 0,2,2 ], - [ 40, 1, 1, 1,0,0, 0,5,0, 0,0,5, 0,2,-2 ], - [ 40, 0, 2, 1,5, 0,6 ], - [ 40, 0, 2, 0,3 ], - [ 48, 0, 2, 1,0, 0,5 ], - [ 48, 0, 3, 1,0,0,0,0, 0,1,0,0,0, 0,0,1,0,0, 0,0,0,1,0 ], - [ 50, 1, 1, 1,0,0, 0,2,-2, 0,2,2 ], - [ 60, 0, 2, 1,0, 0,4 ], - [ 60, 0, 2, 1,5, 0,4 ], - [ 60, 0, 2, 0,2 ], - [ 80, 0, 2, 1,0, 0,3 ], - [ 100, 1, 1, 1,0,0, 0,5,5, 0,2,-2, 0,2,2 ], - [ 100, 1, 1, 1,5,0, 0,5,5, 0,2,-2, 0,2,2 ], - [ 120, 0, 2, 1,0, 0,2 ], - [ 120, 0, 2, 0,1 ], - [ 120, 0, 2, 1,5, 0,2 ], - [ 120, 0, 3, 0,1,0,0,0, 0,0,1,0,0, 0,0,0,1,0, 0,0,0,0,2 ], - [ 200, 1, 1, 1,0,0, 0,5,0, 0,0,5, 0,2,-2, 0,2,2 ],# guardian - - [ 240, 0, 2, 1,0, 0,1 ],# guardian - - [ 240, 0, 3, 1,0,0,0,0, 0,1,0,0,0, 0,0,1,0,0, 0,0,0,1,0, 0,0,0,0,2 ]],# guardian - - [], # GL(2,12) - [ # GL(2,13) - [ 6, 1, 1, 1,0,0, 0,4,-4 ], - [ 7, 0, 2, 0,24 ], - [ 8, 1, 1, 1,0,0, 0,3,-3 ], - [ 8, 1, 1, 1,6,0, 0,3,-3 ], - [ 8, 1, 2, 0,21 ], - [ 12, 1, 1, 1,0,0, 0,6,6, 0,4,-4 ], - [ 12, 1, 1, 1,6,0, 0,6,6, 0,4,-4 ], - [ 14, 0, 2, 0,12 ], - [ 14, 0, 2, 1,0, 0,24 ], - [ 16, 1, 1, 1,0,0, 0,3,-3, 0,3,3 ], - [ 16, 1, 1, 1,3,0, 0,3,-3, 0,3,3 ], - [ 18, 1, 1, 1,0,0, 0,4,-4, 0,4,4 ], - [ 21, 0, 2, 0,8 ], - [ 24, 1, 1, 1,6,0, 0,3,-3, 0,4,4 ], - [ 24, 1, 1, 1,0,0, 0,3,-3, 0,4,-4 ], - [ 24, 1, 1, 1,6,0, 0,3,-3, 0,4,-4 ], - [ 24, 1, 1, 1,0,0, 0,3,-3, 0,4,4 ], - [ 24, 1, 1, 1,0,0, 0,3,3, 0,4,-4 ], - [ 24, 1, 1, 1,3,0, 0,3,3, 0,4,-4 ], - [ 24, 1, 2, 0,7 ], - [ 24, 0, 4, 0,1,0,0,4, 0,0,1,0,0, 0,0,0,1,0 ], - [ 24, 0, 4, 0,1,0,0,0, 0,0,1,0,0, 0,0,0,1,0 ], - [ 28, 0, 2, 0,6 ], - [ 28, 0, 2, 1,6, 0,12 ], - [ 28, 0, 2, 1,0, 0,12 ], - [ 32, 1, 1, 1,0,0, 0,3,0, 0,0,3 ], - [ 36, 1, 1, 1,0,0, 0,6,6, 0,4,-4, 0,4,4 ], - [ 36, 1, 1, 1,6,0, 0,6,6, 0,4,-4, 0,4,4 ], - [ 42, 0, 2, 0,4 ], - [ 42, 0, 2, 1,0, 0,8 ], - [ 48, 1, 1, 1,0,0, 0,3,-3, 0,3,3, 0,4,-4 ], - [ 48, 1, 1, 1,3,0, 0,3,-3, 0,3,3, 0,4,-4 ], - [ 48, 1, 1, 1,3,0, 0,3,-3, 0,3,3, 0,4,4 ], - [ 48, 1, 1, 1,0,0, 0,3,-3, 0,3,3, 0,4,4 ], - [ 48, 0, 4, 2,0,0,0,0, 0,1,0,0,4, 0,0,1,0,0, 0,0,0,1,0 ], - [ 48, 0, 4, 2,0,0,0,0, 0,1,0,0,0, 0,0,1,0,0, 0,0,0,1,0 ], - [ 56, 0, 2, 0,3 ], - [ 56, 0, 2, 1,0, 0,6 ], - [ 56, 0, 2, 1,3, 0,6 ], - [ 72, 1, 1, 1,0,0, 0,3,3, 0,4,-4, 0,4,4 ], - [ 72, 1, 1, 1,3,0, 0,3,3, 0,4,-4, 0,4,4 ], - [ 72, 1, 1, 1,6,0, 0,3,-3, 0,4,-4, 0,4,4 ], - [ 72, 1, 1, 1,0,0, 0,3,-3, 0,4,-4, 0,4,4 ], - [ 72, 0, 4, 0,1,0,0,0, 0,0,1,0,0, 0,0,0,1,0, 0,0,0,0,4 ], - [ 84, 0, 2, 1,6, 0,4 ], - [ 84, 0, 2, 1,0, 0,4 ], - [ 84, 0, 2, 0,2 ], - [ 96, 1, 1, 1,0,0, 0,3,0, 0,0,3, 0,4,-4 ], - [ 96, 1, 1, 1,0,0, 0,3,0, 0,0,3, 0,4,4 ], - [ 96, 0, 4, 1,0,0,0,0, 0,1,0,0,0, 0,0,1,0,0, 0,0,0,1,0 ], - [ 112, 0, 2, 1,0, 0,3 ], - [ 144, 1, 1, 1,3,0, 0,3,-3, 0,3,3, 0,4,-4, 0,4,4 ], - [ 144, 1, 1, 1,0,0, 0,3,-3, 0,3,3, 0,4,-4, 0,4,4 ], - [ 144, 0, 4, 2,0,0,0,0, 0,1,0,0,0, 0,0,1,0,0, 0,0,0,1,0, 0,0,0,0,4 ], - [ 168, 0, 2, 0,1 ], - [ 168, 0, 2, 1,0, 0,2 ], - [ 168, 0, 2, 1,3, 0,2 ], - [ 288, 1, 1, 1,0,0, 0,3,0, 0,0,3, 0,4,-4, 0,4,4 ],# guardian - - [ 288, 0, 4, 1,0,0,0,0, 0,1,0,0,0, 0,0,1,0,0, 0,0,0,1,0, 0,0,0,0,4 ],# guardian - - [ 336, 0, 2, 1,0, 0,1 ],# guardian - - [ 24, 1, 1, 1,0,0, 0,4,-4, 0,6,0, 0,0,6], # BH: new group - [ 72, 1, 1, 1,0,0, 0,2,0, 0,0,2] # BH: new group - ]], - [ # GL(3,*) - [], # GL(3,1) - [ # GL(3,2) - [ 7, 0, 2, 0,1 ], - [ 21, 0, 2, 1,0, 0,1 ]],# guardian - - [ # GL(3,3) - [ 12, 1, 1, 0,1,0,0,0, 0,0,1,0,1, 0,0,0,1,1 ], - [ 13, 0, 2, 0,2 ], - [ 24, 1, 1, 1,0,1,1,1, 0,1,0,0,0, 0,0,1,0,1, 0,0,0,1,1 ], - [ 24, 1, 1, 0,1,0,0,0, 0,0,1,0,0, 0,0,0,1,0, 0,0,0,0,1 ], - [ 24, 1, 1, 1,0,0,0,0, 0,1,0,0,0, 0,0,1,0,1, 0,0,0,1,1 ], - [ 26, 0, 2, 0,1 ], - [ 39, 0, 2, 1,0, 0,2 ], - [ 48, 1, 1, 1,0,0,0,0, 0,1,0,0,0, 0,0,1,0,0, 0,0,0,1,0, 0,0,0,0,1 ],# guardian - - [ 78, 0, 2, 1,0, 0,1 ]],# guardian - - [], # GL(3,4) - [ # GL(3,5) - [ 12, 1, 1, 0,1,0,0,0, 0,0,2,0,-2, 0,0,0,2,-2 ], - [ 24, 1, 1, 1,0,0,0,0, 0,1,0,0,0, 0,0,2,0,-2, 0,0,0,2,-2 ], - [ 24, 1, 1, 1,0,2,2,2, 0,1,0,0,0, 0,0,2,0,-2, 0,0,0,2,-2 ], - [ 24, 1, 1, 0,1,0,0,0, 0,0,2,0,-2, 0,0,0,2,-2, 0,0,2,2,2 ], - [ 31, 0, 2, 0,4 ], - [ 48, 1, 1, 0,1,0,0,0, 0,0,2,0,-2, 0,0,0,2,-2, 0,0,1,1,1 ], - [ 48, 1, 1, 1,0,3,3,3, 0,1,0,0,0, 0,0,2,0,-2, 0,0,0,2,-2 ], - [ 48, 1, 1, 0,1,0,0,0, 0,0,1,0,-1, 0,0,0,1,-1 ], - [ 48, 1, 1, 1,0,2,2,2, 0,1,0,0,0, 0,0,2,0,-2, 0,0,0,2,-2, 0,0,2,2,2 ], - [ 62, 0, 2, 0,2 ], - [ 93, 0, 2, 1,0, 0,4 ], - [ 96, 1, 1, 1,0,2,2,2, 0,1,0,0,0, 0,0,2,0,-2, 0,0,0,2,-2, 0,0,1,1,1 ], - [ 96, 1, 1, 0,1,0,0,0, 0,0,1,0,-1, 0,0,0,1,-1, 0,0,2,2,2 ], - [ 96, 1, 1, 1,0,2,2,2, 0,1,0,0,0, 0,0,1,0,-1, 0,0,0,1,-1 ], - [ 96, 1, 1, 1,0,0,0,0, 0,1,0,0,0, 0,0,1,0,-1, 0,0,0,1,-1 ], - [ 124, 0, 2, 0,1 ], - [ 186, 0, 2, 1,0, 0,2 ], - [ 192, 1, 1, 1,0,3,3,3, 0,1,0,0,0, 0,0,1,0,-1, 0,0,0,1,-1 ], - [ 192, 1, 1, 0,1,0,0,0, 0,0,1,0,-1, 0,0,0,1,-1, 0,0,1,1,1 ], - [ 192, 1, 1, 1,0,2,2,2, 0,1,0,0,0, 0,0,1,0,-1, 0,0,0,1,-1, 0,0,2,2,2 ], - [ 372, 0, 2, 1,0, 0,1 ],# guardian - - [ 384, 1, 1, 1,0,0,0,0, 0,1,0,0,0, 0,0,1,0,0, 0,0,0,1,0, 0,0,0,0,1 ]]],# guardian - - [ # GL(4,*) - [], # GL(4,1) - [ # GL(4,2) - [ 5, 0, 5, 0,3 ], - [ 10, 0, 5, 2,0, 0,3 ], - [ 15, 0, 5, 0,1 ], - [ 18, 2, 2, 1,0,0,0,0, 0,0,1,0,0, 0,0,0,0,1 ], - [ 20, 0, 5, 1,0, 0,3 ], - [ 30, 0, 5, 2,0, 0,1 ], - [ 36, 2, 2, 1,0,0,0,0, 0,1,0,1,0, 0,0,1,0,0, 0,0,0,0,1 ], - [ 36, 2, 2, 1,1,0,0,0, 0,0,1,0,0, 0,0,0,0,1 ], - [ 60, 0, 5, 1,0, 0,1 ],# guardian - - [ 72, 2, 2, 1,0,0,0,0, 0,1,0,0,0, 0,0,1,0,0, 0,0,0,1,0, 0,0,0,0,1 ]],# guardian - - [ # GL(4,3) - [ 5, 0, 5, 0,64 ], - [ 10, 0, 5, 0,64, 2,16 ], - [ 10, 0, 5, 0,64, 0,40 ], - [ 16, 1, 1, 1,2,1,1,1,0,0,0, 1,2,1,0,1,0,1,1 ], - [ 16, 1, 1, 1,1,1,0,1,1,1,0, 1,1,1,0,0,1,0,0 ], - [ 16, 1, 1, 0,0,0,1,1,0,1,0, 0,0,1,1,0,1,1,0, 0,0,1,1,1,1,0,0 ], - [ 16, 2, 2, 1,1,0,1,3 ], - [ 16, 2, 2, 1,0,0,1,1, 0,1,7,0,6 ], - [ 20, 0, 5, 0,64, 2,16, 2,40 ], - [ 20, 0, 5, 2,76, 2,12 ], - [ 20, 0, 5, 0,60, 0,64 ], - [ 20, 0, 5, 3,44, 3,76 ], - [ 32, 1, 1, 1,0,1,1,1,1,0,1, 1,0,1,0,0,0,1,0 ], - [ 32, 1, 1, 1,1,1,0,0,1,0,1, 1,1,1,0,1,1,1,1, 1,1,0,0,0,0,1,1 ], - [ 32, 1, 1, 1,0,1,1,1,1,0,1, 1,0,1,0,1,0,0,0, 1,0,0,1,1,1,0,1 ], - [ 32, 1, 1, 0,0,0,1,1,0,1,0, 0,0,1,0,0,1,0,1, 0,0,1,1,0,1,1,0, - 0,0,0,1,0,1,1,0 ], - [ 32, 1, 1, 1,0,1,1,1,1,0,1, 1,0,1,0,1,0,0,0, 0,0,1,1,0,1,1,0 ], - [ 32, 2, 2, 1,1,3,0,6, 1,0,6,1,7, 1,0,0,1,1 ], - [ 32, 2, 2, 1,0,5,0,1, 0,0,5,0,1, 1,1,6,1,2 ], - [ 32, 2, 2, 1,0,5,0,1, 1,0,7,0,7, 1,0,0,0,6 ], - [ 32, 2, 2, 1,1,5,1,7, 0,0,3,0,1, 1,0,6,0,6 ], - [ 32, 2, 2, 1,0,6,0,6, 1,1,7,1,7, 1,1,5,1,5, 1,0,4,0,0 ], - [ 32, 2, 2, 1,0,5,0,1, 1,0,7,0,7, 0,0,5,0,1 ], - [ 32, 2, 2, 1,1,0,1,3, 1,1,3,1,0 ], - [ 40, 0, 5, 0,70, 0,64 ], - [ 40, 0, 5, 3,44, 3,52 ], - [ 40, 0, 5, 2,66, 2,62 ], - [ 40, 0, 5, 2,76, 2,12, 0,60 ], - [ 40, 0, 5, 3,39, 3,7 ], - [ 48, 2, 3, 1,1,0,1,3,1,0,0,0, 1,1,2,0,3,1,2,0,3 ], - [ 48, 2, 3, 1,1,2,1,3,1,2,0,1, 0,0,0,0,3,0,0,1,3, 0,0,0,1,3,0,0,0,1, - 0,0,2,0,3,0,1,0,1 ], - [ 64, 1, 1, 1,1,1,0,1,1,1,0, 1,1,1,0,0,1,0,0, 1,1,0,1,0,1,0,0, - 1,1,0,0,0,0,1,1 ], - [ 64, 1, 1, 1,1,1,0,0,1,0,1, 1,1,1,0,1,1,1,1, 1,1,1,0,1,0,0,1, - 0,0,0,1,0,1,1,1 ], - [ 64, 1, 1, 1,0,1,1,1,1,0,1, 1,0,1,0,0,0,1,0, 1,0,0,1,1,1,0,1 ], - [ 64, 1, 1, 1,0,1,0,0,0,1,1, 1,0,1,0,1,1,0,0, 1,0,1,0,1,1,1,1, - 1,0,1,0,1,0,0,1, 1,0,0,1,1,0,0,1 ], - [ 64, 2, 2, 1,1,0,1,3, 1,1,0,1,1 ], - [ 64, 2, 2, 1,1,7,0,0, 1,0,2,1,5, 1,1,5,1,7 ], - [ 64, 2, 2, 1,0,7,0,2, 1,0,1,0,0, 0,1,4,1,3 ], - [ 64, 2, 2, 1,0,5,0,1, 1,0,7,0,7, 1,0,0,0,6, 0,0,5,0,1 ], - [ 64, 2, 2, 1,1,5,1,7, 1,1,3,1,5, 1,0,5,0,1, 1,1,6,1,0 ], - [ 64, 2, 2, 1,1,0,1,3, 1,1,3,1,0, 1,0,5,0,1 ], - [ 64, 2, 2, 1,0,5,0,1, 1,0,7,0,7, 0,0,5,0,1, 1,1,6,1,2 ], - [ 64, 2, 2, 1,1,3,0,6, 1,0,6,1,7, 1,0,0,1,1, 0,1,7,0,6 ], - [ 80, 0, 5, 2,27, 2,75 ], - [ 80, 0, 5, 2,66, 2,62, 0,70 ], - [ 80, 0, 5, 3,44, 3,52, 3,48 ], - [ 80, 0, 5, 0,75, 0,64 ], - [ 80, 0, 5, 3,39, 3,35 ], - [ 96, 1, 1, 0,0,0,1,1,0,1,0, 0,0,1,0,0,1,0,1, 0,0,1,1,0,1,1,0, - 0,0,0,1,0,1,1,0, 0,1,1,0,1,0,0,1 ], - [ 96, 2, 3, 1,0,1,0,3,0,2,1,3, 1,0,2,0,1,0,1,0,0, 0,1,2,1,3,1,2,1,1 ], - [ 96, 2, 3, 1,1,0,1,0,1,0,1,0, 1,1,0,0,3,1,0,0,1, 1,1,2,0,3,1,2,0,3 ], - [ 96, 2, 3, 1,1,1,1,3,1,1,1,0, 1,1,1,0,3,1,1,0,1, 1,1,1,1,2,1,1,1,1, - 1,1,1,0,2,1,1,0,0, 0,0,2,1,2,0,1,0,1 ], - [ 96, 2, 3, 1,0,1,1,0,0,2,1,2, 1,0,2,0,3,0,1,0,0, 0,1,0,1,0,1,1,1,2 ], - [ 96, 0, 6, 0,3,0,0,1,1, 0,3,0,0,0,1, 0,3,0,0,1,2, 0,0,0,2,1,2 ], - [ 96, 0, 6, 0,0,0,0,1,1, 0,0,0,0,1,2, 1,3,0,0,0,0, - 1,1,0,0,0,0, 0,0,0,2,1,2 ], - [ 96, 0, 6, 1,3,1,1,1,2, 1,1,1,1,1,2, 1,3,1,2,0,1 ], - [ 96, 0, 6, 0,3,1,1,0,3, 0,3,1,2,1,0, 0,3,1,1,0,2 ], - [ 128, 1, 1, 1,1,1,0,1,1,1,0, 1,1,1,0,0,1,0,0, 1,1,0,1,0,1,0,0, - 1,1,1,0,0,1,0,1, 1,1,0,0,0,0,1,1 ], - [ 128, 2, 2, 1,1,5,1,7, 1,1,3,1,5, 1,0,5,0,1, 1,1,6,1,0, 1,0,0,0,6 ], - [ 128, 2, 2, 0,0,5,0,1, 0,0,7,0,1, 1,1,6,0,4 ], - [ 128, 2, 2, 1,1,7,0,0, 1,0,2,1,5, 1,1,3,0,6, 1,0,7,1,2 ], - [ 128, 2, 2, 1,0,7,0,2, 1,1,0,1,3 ], - [ 128, 2, 2, 1,0,7,1,2, 1,1,0,0,3, 1,0,1,1,6, 1,1,5,1,7 ], - [ 128, 2, 2, 1,1,6,1,0, 1,1,2,1,0, 1,0,0,0,6, 0,1,1,0,5 ], - [ 128, 2, 2, 1,1,0,1,3, 1,1,0,1,1, 1,0,5,0,1 ], - [ 128, 2, 2, 1,1,7,0,0, 1,0,2,1,5, 1,1,3,0,6, 1,1,5,1,7 ], - [ 128, 2, 2, 1,1,0,1,3, 1,1,0,1,1, 1,1,5,1,7 ], - [ 160, 0, 5, 2,66, 2,62, 0,70, 3,50 ], - [ 160, 0, 5, 3,39, 3,35, 3,21 ], - [ 160, 0, 5, 2,27, 2,75, 0,75 ], - [ 160, 0, 8, 0,0,0,0,1,0,1, 0,0,0,1,1,0,0, 0,0,1,0,1,1,1, - 0,0,0,0,1,1,0, 0,4,0,0,0,1,0 ], - [ 192, 1, 1, 0,0,0,1,0,1,1,1, 0,0,1,1,0,1,1,1, 0,0,1,0,1,1,0,1, - 0,1,1,0,1,0,0,1 ], - [ 192, 1, 1, 1,0,1,1,1,1,0,1, 1,0,1,0,0,0,1,0, 1,2,1,1,1,0,0,0 ], - [ 192, 1, 1, 1,1,1,0,0,1,0,1, 1,1,1,0,1,1,1,1, 1,2,1,1,1,1,1,1 ], - [ 192, 2, 3, 1,0,2,1,1,0,1,0,1, 1,0,2,1,1,0,1,0,3, 1,0,1,1,0,0,2,1,2, - 0,1,0,1,0,1,1,1,0 ], - [ 192, 0, 6, 1,2,1,1,1,2, 1,0,1,1,1,0, 1,2,1,2,0,1, 0,3,1,1,0,3 ], - [ 192, 0, 6, 1,3,1,1,1,2, 1,1,1,1,1,2, 1,3,1,2,0,1, 0,3,1,1,0,3 ], - [ 192, 0, 6, 1,3,1,1,1,2, 1,1,1,1,1,2, 1,3,1,2,0,1, 1,2,1,1,1,2 ], - [ 192, 0, 6, 0,3,0,0,1,1, 0,3,0,0,0,1, 0,3,0,0,1,2, - 1,2,0,0,1,1, 0,0,0,2,1,2 ], - [ 192, 0, 6, 0,3,1,1,0,3, 0,3,1,2,1,0, 0,3,1,1,0,2, 0,2,1,1,1,2 ], - [ 192, 0, 6, 1,3,1,1,1,2, 1,1,1,1,1,2, 1,3,1,2,0,1, 0,2,1,1,1,2 ], - [ 256, 2, 2, 1,1,7,0,0, 1,0,2,1,5, 1,1,3,0,6, 1,0,7,1,2, 1,1,5,1,7 ], - [ 256, 2, 2, 1,1,5,1,7, 1,1,3,1,5, 1,0,5,0,1, - 1,1,6,1,0, 1,0,0,0,6, 0,1,1,0,5 ], - [ 256, 2, 2, 1,0,7,0,2, 1,1,0,1,3, 0,1,4,0,7 ], - [ 256, 2, 2, 1,1,7,0,0, 1,0,2,1,5, 1,1,3,0,6, 1,0,7,1,2, 0,0,2,0,7 ], - [ 256, 2, 2, 1,0,7,0,2, 1,1,0,1,3, 1,1,5,1,7 ], - [ 256, 2, 2, 1,0,7,0,2, 1,1,0,1,3, 1,1,7,0,0 ], - [ 288, 0, 7, 0,0,0,0,0,0,0,1,3, 0,0,0,1,1,0,0,0,2, 0,0,0,0,0,0,0,0,3, - 0,0,0,0,1,0,0,0,2, 0,0,2,1,0,0,1,0,3, 0,0,1,0,1,0,1,0,1 ], - [ 320, 0, 5, 1,0, 0,1 ],# guardian - [ 320, 0, 8, 2,1,1,0,1,1,1, 2,3,0,1,1,0,1 ], - [ 384, 1, 1, 1,0,0,0,0,0,0,0, 0,1,0,0,0,0,0,0, 0,0,1,0,0,0,0,0, - 0,0,0,1,0,0,0,0, 0,0,0,0,1,0,0,0, 0,0,0,0,0,1,0,0, - 0,0,0,0,0,0,1,0, 0,0,0,0,0,0,0,1 ],# guardian, not max. - - [ 384, 2, 3, 1,1,1,1,3,1,1,0,1, 1,1,1,1,1,1,1,0,1, 1,1,1,1,3,1,1,1,1, - 1,1,1,1,0,1,1,0,1, 0,0,2,1,2,0,1,0,1 ], - [ 384, 2, 3, 1,0,0,1,0,0,0,0,3, 1,0,0,0,3,0,0,1,2, 1,0,0,1,1,0,0,0,0, - 1,0,2,1,1,0,1,0,1 ], - [ 384, 0, 6, 1,0,0,0,0,0, 0,1,0,0,0,0, 0,0,1,0,0,0, - 0,0,0,1,0,0, 0,0,0,0,1,0, 0,0,0,0,0,1 ],# guardian, not max. - [ 512, 2, 2, 1,0,0,0,0, 0,1,0,0,0, 0,0,1,0,0, 0,0,0,1,0, 0,0,0,0,1 ],# guardian, not maximal - [ 576, 0, 7, 0,1,1,0,1,1,1,1,2, 0,1,1,1,0,1,1,0,3, 0,1,2,1,0,1,1,1,0, - 0,1,1,0,1,1,2,0,1 ], - [ 576, 0, 7, 1,0,0,1,0,0,0,0,3, 1,0,0,0,1,0,0,1,0, 1,0,0,1,1,0,0,0,0, - 1,0,2,1,1,0,1,0,1, 0,0,1,0,1,0,1,0,1 ], - [ 576, 0, 7, 0,1,1,1,0,0,0,1,3, 0,1,2,0,1,0,0,1,1, 0,1,1,1,0,0,0,0,3, - 0,1,1,1,0,0,0,1,0, 0,0,2,1,0,0,1,0,3 ], - [ 640, 0, 8, 1,0,0,0,0,0,0, 0,1,0,0,0,0,0, 0,0,1,0,0,0,0, - 0,0,0,1,0,0,0, 0,0,0,0,1,0,0, 0,0,0,0,0,1,0, - 0,0,0,0,0,0,1 ],# guardian - [ 768, 2, 3, 1,1,0,1,0,1,0,1,0, 1,0,0,1,0,0,0,0,3, 1,0,0,1,1,0,0,0,0, - 1,1,0,1,1,1,0,0,0, 1,1,2,1,3,1,2,1,0 ], - [1152, 2, 3, 1,0,0,1,0,0,0,0,3, 1,0,0,0,3,0,0,1,2, 1,0,0,1,1,0,0,0,0, - 1,0,2,1,1,0,1,0,1, 0,0,1,0,1,0,1,0,1 ], - [1152, 0, 7, 0,1,1,0,1,1,1,1,2, 0,1,1,1,0,1,1,0,3, 0,1,2,1,0,1,1,1,0, - 0,1,1,0,1,1,2,0,1, 0,1,1,1,0,0,0,1,3 ], - [1152, 0, 7, 0,1,1,0,1,1,1,1,2, 0,1,1,1,0,1,1,0,3, 0,1,2,1,0,1,1,1,0, - 0,1,1,0,1,1,2,0,1, 1,1,0,1,0,1,0,1,0 ], - [1152, 0, 7, 0,1,1,0,1,1,1,1,2, 0,1,1,1,0,1,1,0,3, 0,1,2,1,0,1,1,1,0, - 0,1,1,0,1,1,2,0,1, 1,0,0,0,0,1,1,1,1 ], - [2304, 2, 3, 1,0,0,0,0,1,1,1,1, 1,1,1,0,0,0,0,1,2, 1,1,0,1,3,0,1,0,3 ], - [2304, 2, 3, 1,1,0,1,0,1,0,1,0, 1,0,0,1,0,0,0,0,3, 1,0,0,1,1,0,0,0,0, - 1,1,0,1,1,1,0,0,0, 1,1,2,1,3,1,2,1,0, 1,0,2,1,1,0,1,0,1 ], - [2304, 0, 7, 1,0,0,0,0,0,0,0,0, 0,1,0,0,0,0,0,0,0, 0,0,1,0,0,0,0,0,0, - 0,0,0,1,0,0,0,0,0, 0,0,0,0,1,0,0,0,0, 0,0,0,0,0,1,0,0,0, - 0,0,0,0,0,0,1,0,0, 0,0,0,0,0,0,0,1,0, 0,0,0,0,0,0,0,0,1 ],# guardian - [4608, 2, 3, 1,0,0,0,0,0,0,0,0, 0,1,0,0,0,0,0,0,0, 0,0,1,0,0,0,0,0,0, - 0,0,0,1,0,0,0,0,0, 0,0,0,0,1,0,0,0,0, 0,0,0,0,0,1,0,0,0, - 0,0,0,0,0,0,1,0,0, 0,0,0,0,0,0,0,1,0, 0,0,0,0,0,0,0,0,1 ]]],# guardian - [ # GL(5,*) - [], # GL(5,1) - [ # GL(5,2) - [ 31, 0, 2, 0,1 ], - [ 155, 0, 2, 1,0, 0,1 ]],# guardian - [ # GL(5,3) - [ 11, 0, 2, 0,22 ], - [ 22, 0, 2, 0,11 ], - [ 55, 0, 2, 1,0, 0,22 ], - [ 80, 1, 1, 0,1,0,0,0,0,0, 0,0,1,1,0,0,0, 0,0,0,1,1,0,0, - 0,0,0,0,1,1,0, 0,0,0,0,0,1,1 ], - [ 110, 0, 2, 1,0, 0,11 ], - [ 121, 0, 2, 0,2 ], - [ 160, 1, 1, 0,1,0,0,0,0,0, 0,0,1,1,0,0,0, 0,0,0,1,1,0,0, - 0,0,0,0,1,1,0, 0,0,0,0,0,1,1, 0,0,1,1,1,1,1 ], - [ 160, 1, 1, 2,0,0,0,0,0,0, 0,1,0,0,0,0,0, 0,0,1,1,0,0,0, - 0,0,0,1,1,0,0, 0,0,0,0,1,1,0, 0,0,0,0,0,1,1 ], - [ 160, 1, 1, 2,0,1,1,1,1,1, 0,1,0,0,0,0,0, 0,0,1,1,0,0,0, - 0,0,0,1,1,0,0, 0,0,0,0,1,1,0, 0,0,0,0,0,1,1 ], - [ 242, 0, 2, 0,1 ], - [ 320, 1, 1, 1,0,0,0,0,0,0, 0,1,0,0,0,0,0, 0,0,1,1,0,0,0, - 0,0,0,1,1,0,0, 0,0,0,0,1,1,0, 0,0,0,0,0,1,1 ], - [ 320, 1, 1, 2,0,0,0,0,0,0, 0,1,0,0,0,0,0, 0,0,1,1,0,0,0, - 0,0,0,1,1,0,0, 0,0,0,0,1,1,0, 0,0,0,0,0,1,1, - 0,0,1,1,1,1,1 ], - [ 320, 1, 1, 1,0,1,1,1,1,1, 0,1,0,0,0,0,0, 0,0,1,1,0,0,0, - 0,0,0,1,1,0,0, 0,0,0,0,1,1,0, 0,0,0,0,0,1,1 ], - [ 605, 0, 2, 1,0, 0,2 ], - [ 640, 1, 1, 1,0,0,0,0,0,0, 0,1,0,0,0,0,0, 0,0,1,0,0,0,0, - 0,0,0,1,0,0,0, 0,0,0,0,1,0,0, 0,0,0,0,0,1,0, - 0,0,0,0,0,0,1 ],# guardian - [1210, 0, 2, 1,0, 0,1 ]]],# guardian - [ # GL(6,*) - [], # GL(6,1) - [ # GL(6,2) - [ 9, 2, 3, 0,1,1,1,0,0,1,0 ], - [ 14, 3, 6, 0,0,6,0,2, 1,2,5,1,4 ], - [ 18, 2, 3, 0,1,1,1,0,0,1,0, 1,1,0,1,1,1,0,2 ], - [ 21, 0, 8, 0,54, 0,42 ], - [ 27, 2, 3, 0,2,0,0,0,0,0,1, 0,2,0,0,0,1,0,0 ], - [ 27, 2, 3, 0,2,0,2,1,2,1,1, 0,2,0,1,1,1,1,2, 0,2,0,2,1,0,1,2 ], - [ 42, 3, 6, 0,0,6,0,2, 0,1,1,1,1, 1,2,5,1,4 ], - [ 42, 0, 8, 0,54, 0,42, 3,14 ], - [ 54, 2, 3, 0,2,0,2,1,2,1,1, 0,2,0,1,1,1,1,2, 0,2,0,2,1,0,1,2, - 1,2,0,0,1,2,1,2 ], - [ 54, 2, 3, 0,2,0,2,1,2,1,1, 0,2,0,1,1,1,1,2, 0,2,0,2,1,0,1,2, - 1,1,0,2,1,1,0,1 ], - [ 54, 2, 3, 0,1,1,1,0,0,1,0, 0,1,1,0,0,0,1,2, 1,1,0,1,1,1,0,2 ], - [ 63, 0, 8, 0,56, 0,54 ], - [ 63, 0, 8, 0,54, 4,30, 4,27 ], - [ 63, 0, 8, 4,38, 4,11 ], - [ 81, 2, 3, 0,1,1,1,0,0,1,0, 0,1,1,0,0,0,1,2, 0,2,0,1,1,1,1,1 ], - [ 98, 3, 6, 0,0,6,0,2, 0,0,5,0,1, 1,2,5,1,4 ], - [ 108, 2, 3, 0,2,0,2,1,2,1,1, 0,2,0,1,1,1,1,2, 0,2,0,2,1,0,1,2, - 1,1,0,1,1,1,0,2, 0,0,1,1,1,1,1,2 ], - [ 108, 0,11, 0,0,1,3,1,0,2, 0,0,1,3,2,1,0 ], - [ 126, 0, 8, 0,54, 4,30, 4,27, 3,14 ], - [ 126, 0, 8, 0,56, 0,54, 3,14 ], - [ 162, 2, 3, 0,1,1,1,0,0,1,0, 0,1,1,0,0,0,1,2, 0,2,0,1,1,1,1,1, - 1,2,0,0,1,2,1,2 ], - [ 162, 2, 3, 0,1,1,1,0,0,1,0, 0,1,1,0,0,0,1,2, 0,2,0,1,1,1,1,1, - 0,0,1,1,1,1,1,1 ], - [ 162, 2, 3, 0,2,0,0,0,0,0,1, 0,1,0,1,0,0,0,0, 1,1,1,2,1,1,1,2 ], - [ 189, 0, 8, 4,38, 4,11, 4,19 ], - [ 216, 0,11, 0,0,1,3,1,0,2, 0,0,1,3,2,1,0, 0,0,1,2,0,2,1 ], - [ 216, 0,11, 1,0,0,3,1,2,2, 1,0,1,0,1,0,0 ], - [ 216, 0,11, 0,0,1,2,0,2,1, 0,0,1,0,1,1,2, 1,2,0,2,1,2,0 ], - [ 294, 3, 6, 0,0,6,0,2, 0,0,5,0,1, 0,1,1,1,1, - 1,2,5,1,4 ], - [ 294, 3, 6, 0,0,6,0,2, 0,0,5,0,1, 0,2,3,1,1, - 1,2,5,1,4 ], - [ 324, 2, 3, 0,1,1,1,0,0,1,0, 0,1,1,0,0,0,1,2, 0,2,0,1,1,1,1,1, - 1,1,0,2,1,1,0,1, 0,0,1,1,1,1,1,1 ], - [ 324, 2, 3, 0,1,1,1,0,0,1,0, 0,1,0,1,1,0,1,0 ], - [ 378, 0, 8, 1,0, 0,1 ],# guardian - - [ 432, 0,11, 1,2,0,1,1,0,0, 1,2,0,1,1,2,0, 0,0,1,3,1,0,2 ], - [ 648, 2, 3, 0,1,1,1,0,0,1,0, 0,1,0,1,1,0,1,0, 0,0,1,1,1,1,1,1 ], - [ 648, 2, 3, 0,1,1,1,0,0,1,0, 0,1,0,1,1,0,1,0, 1,1,1,1,0,0,0,0 ], - [ 648, 2, 3, 0,1,1,1,0,0,1,0, 0,1,0,1,1,0,1,0, 1,0,0,0,1,1,1,1 ], - [ 648, 0,11, 0,2,1,2,1,1,0, 0,1,1,1,2,0,1 ], - [ 882, 3, 6, 1,0,0,0,0, 0,1,0,0,0, 0,0,1,0,0, 0,0,0,1,0, 0,0,0,0,1 ],# guardian - [1296, 2, 3, 1,0,0,0,0,0,0,0, 0,1,0,0,0,0,0,0, 0,0,1,0,0,0,0,0, - 0,0,0,1,0,0,0,0, 0,0,0,0,1,0,0,0, 0,0,0,0,0,1,0,0, - 0,0,0,0,0,0,1,0, 0,0,0,0,0,0,0,1 ],# guardian - [1296, 0,11, 1,0,0,0,0,0,0, 0,1,0,0,0,0,0, 0,0,1,0,0,0,0, - 0,0,0,1,0,0,0, 0,0,0,0,1,0,0, 0,0,0,0,0,1,0, - 0,0,0,0,0,0,1 ]]],# guardian - [ # GL(7,*) - [], # GL(7,1) - [ # GL(7,2) - [ 127, 0, 2, 0,1 ], - [ 889, 0, 2, 1,0, 0,1 ]]]]);# guardian diff --git a/lib/primitiv.gd b/lib/primitiv.gd index f3671a5..dab8a7d 100644 --- a/lib/primitiv.gd +++ b/lib/primitiv.gd @@ -307,32 +307,6 @@ DeclareGlobalFunction( "OnePrimitiveGroup" ); ## DeclareAttribute( "SimsNo", IsPermGroup ); -############################################################################# -## -#V PrimitiveIndexIrreducibleSolvableGroup -## -## <#GAPDoc Label="PrimitiveIndexIrreducibleSolvableGroup"> -## -## -## -## -## This variable provides a way to get from irreducible solvable groups to -## primitive groups and vice versa. For the group -## G = IrreducibleSolvableGroup( n, p, k ) -## and d = p^n, the entry -## PrimitiveIndexIrreducibleSolvableGroup[d][i] gives the index -## number of the semidirect product p^n:G in the library of primitive -## groups. -##

-## Searching for an index in this list with -## gives the -## translation in the other direction. -## -## -## <#/GAPDoc> -## -#DeclareGlobalVariable("PrimitiveIndexIrreducibleSolvableGroup"); - ############################################################################# ## #A PrimitiveIdentification( ) diff --git a/read.g b/read.g index 936ad8b..a03d71e 100644 --- a/read.g +++ b/read.g @@ -9,8 +9,6 @@ ## ReadPackage( "primgrp", "lib/primitiv.grp" ); ReadPackage( "primgrp", "lib/primitiv.gi" ); -ReadPackage( "primgrp", "lib/irredsol.grp" ); -ReadPackage( "primgrp", "lib/irredsol.gi" ); ReadPackage( "primgrp", "lib/cohorts.grp" ); #E read.g . . . . . . . . . . . . . . . . . . . . . . . . . . . . ends here diff --git a/tst/manualexamples/primgrp01.tst b/tst/manualexamples/primgrp01.tst index 9041946..a0da2cc 100644 --- a/tst/manualexamples/primgrp01.tst +++ b/tst/manualexamples/primgrp01.tst @@ -22,7 +22,7 @@ AGL(2, 5) gap> PrimitiveGroup(25,23); (A(5) x A(5)):2 -# doc/../lib/primitiv.gd:358-361 +# doc/../lib/primitiv.gd:332-335 gap> PrimitiveIdentification(Group((1,2),(1,2,3))); 2 diff --git a/tst/testinstall/irrednumbers.tst b/tst/testinstall/irrednumbers.tst deleted file mode 100644 index c1bb0af..0000000 --- a/tst/testinstall/irrednumbers.tst +++ /dev/null @@ -1,16 +0,0 @@ -gap> START_TEST("irrednumbers.tst"); -gap> n := Filtered([2..255],IsPrimePowerInt);; -gap> n := List(n, Factors);; -gap> n := Filtered(n, t -> Length(t) > 1 );; -gap> n := List(n, t -> [ Length(t), t[1] ] );; -gap> List(n, t -> NumberIrreducibleSolvableGroups( t[1], t[2] )); -[ 2, 2, 7, 10, 19, 9, 2, 29, 40, 108, 42, 22, 2, 62, 16 ] -gap> Sum( List( n, t -> NumberIrreducibleSolvableGroups( t[1], t[2] ))); -372 -gap> ForAll(n, t -> NumberIrreducibleSolvableGroups( t[1], t[2] ) = -> Length( AllIrreducibleSolvableGroups( Dimension, t[1], Characteristic,t[2] ))); -true -gap> ForAll(n, t -> IsSolvable(OneIrreducibleSolvableGroup( -> Dimension, t[1], Characteristic,t[2] ))); -true -gap> STOP_TEST( "irrednumbers.tst", 1);