Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/GAP/pkg/smallgrp/tst/   (GAP Algebra Version 4.15.1©)  Datei vom 4.6.2024 mit Größe 12 kB image not shown  

Quelle  small.tst   Sprache: unbekannt

 
Spracherkennung für: .tst vermutete Sprache: Unknown {[0] [0] [0]} [Methode: Schwerpunktbildung, einfache Gewichte, sechs Dimensionen]

# Test file by Wilf A. Wilson
#
gap> START_TEST("small.tst");

################################################################################
# SMALL_AVAILABLE
################################################################################
gap> notavailable := [];;
gap> for i in [1 .. 4000] do
>   if SMALL_AVAILABLE(i) = fail then
>     Add(notavailable, i);
>   fi;
> od;
gap> notavailable;
102420162024202520402048205220582064207220792080
  208821062112212021282136216021842200220822142232
  224022502256226822802288229522962304231223202322
  232823522360237623922400240824242430244024482457
  246424722480248424962500252025382544255225602565
  256825762584259226002616262526322640264626622664
  268026882700270427122720272827362744275027542760
  278428002808283228352840285628622880288829042912
  291629202928295229602968297029762992300030163024
  304030483072307830803087309631053120312831323136
  314431603168318631923200321332163224324032483250
  325632643267328032883294330433123320333633443348
  336033753384340034023408341634303432344034563472
  348034963500350435103520352835363552356035643576
  358435913600360836183624364036483672368036963720
  372637443750375237603768378037843792380038083816
  383438403848386138643872388038883912391539203936
  3942394439523960396939763984399339964000 ]
gap> SmallGroupsAvailable(0);
Error, <size> must be a positive integer
gap> SmallGroupsAvailable(-10);
Error, <size> must be a positive integer
gap> notavailable2 := Filtered([1..4000], x -> not SmallGroupsAvailable(x));;
gap> notavailable = notavailable2;
true
gap> Filtered([1..4000], i -> NumberSmallGroupsAvailable(i) <> SmallGroupsAvailable(i));
1024 ]

################################################################################
# Testing some of the data lists
################################################################################
gap> Length(SMALL_GROUP_FUNCS) >= 26;
true
gap> Number(SMALL_GROUP_FUNCS) >= 24;
true
gap> Filtered([1 .. 26], i -> not IsBound(SMALL_GROUP_FUNCS[i]));
1516 ]
gap> Length(CODE_SMALL_GROUP_FUNCS) >= 10;
true
gap> Number(CODE_SMALL_GROUP_FUNCS) >= 3;
true
gap> Filtered([1 .. 26], i -> IsBound(CODE_SMALL_GROUP_FUNCS[i]));
8910 ]
gap> Length(NUMBER_SMALL_GROUPS_FUNCS) >= 26;
true
gap> Number(NUMBER_SMALL_GROUPS_FUNCS) >= 12;
true
gap> Filtered([1 .. 26], i -> not IsBound(NUMBER_SMALL_GROUPS_FUNCS[i]));
1241012131415161819202223 ]
gap> Length(SELECT_SMALL_GROUPS_FUNCS) >= 26;
true
gap> Number(SELECT_SMALL_GROUPS_FUNCS) >= 21;
true
gap> Filtered([1 .. 26], i -> not IsBound(SELECT_SMALL_GROUPS_FUNCS[i]));
1315162223 ]

################################################################################
# SmallGroup GlobalFunction
################################################################################
gap> SmallGroup();
Error, usage: SmallGroup( order, number )
gap> SmallGroup(fail);
Error, usage: SmallGroup( order, number )
gap> SmallGroup([]);
Error, usage: SmallGroup( order, number )
gap> SmallGroup([fail]);
Error, usage: SmallGroup( order, number )
gap> SmallGroup([fail, fail]);
Error, usage: SmallGroup( order, number )
gap> SmallGroup(fail, fail);
Error, usage: SmallGroup( order, number )
gap> SmallGroup(1, fail);
Error, usage: SmallGroup( order, number )
gap> SmallGroup(fail, fail, fail);
Error, usage: SmallGroup( order, number )
gap> SmallGroup(10241);
Error, the library of groups of size 1024 is not available
gap> G := SmallGroup(42);
<pc group of size 4 with 2 generators>
gap> HasIsPGroup(G) and HasIdGroup(G);
true
gap> IsPGroup(G);
true
gap> IdGroup(G);
42 ]

################################################################################
# NumberSmallGroups GlobalFunction
################################################################################
gap> NumberSmallGroups(fail);
Error, usage: NumberSmallGroups( order )
gap> NumberSmallGroups(0);
Error, usage: NumberSmallGroups( order )
gap> NumberSmallGroups(19);
1
gap> NumberSmallGroups(1024);
49487367289
gap> NumberSmallGroups(3996);
Error, the library of groups of size 3996 is not available
gap> NumberSmallGroups(60);
13

################################################################################
# SelectSmallGroups GlobalFunction (called by AllSmallGroups or OneSmallGroup)
################################################################################
gap> OneSmallGroup();
Error, Variable: 'vals' must have an assigned value
gap> OneSmallGroup(Size);
Error, Variable: 'vals' must have an assigned value
gap> OneSmallGroup(0);
Error, usage: AllSmallGroups / OneSmallGroup(
             Size, [ sizes ],
             function1, [ values1 ],
             function2, [ values2 ], ... )
gap> OneSmallGroup(-10);
Error, usage: AllSmallGroups / OneSmallGroup(
             Size, [ sizes ],
             function1, [ values1 ],
             function2, [ values2 ], ... )
gap> OneSmallGroup(IsAbelian);
Error, usage: AllSmallGroups / OneSmallGroup(
             Size, [ sizes ],
             function1, [ values1 ],
             function2, [ values2 ], ... )
gap> OneSmallGroup(IsAbelian, true);
Error, usage: AllSmallGroups / OneSmallGroup(
             Size, [ sizes ],
             function1, [ values1 ],
             function2, [ values2 ], ... )
gap> OneSmallGroup(128);
<pc group of size 128 with 7 generators>
gap> G := OneSmallGroup(Size, 3);;
gap> Size(G) = 3 and Length(GeneratorsOfGroup(G)) = 1;
true
gap> OneSmallGroup(Size, [45]);
<pc group of size 4 with 2 generators>
gap> G := OneSmallGroup(23);;
gap> Size(G) = 2 and Length(GeneratorsOfGroup(G)) = 1;
true
gap> OneSmallGroup(2, Size);
fail
gap> StructureDescription(OneSmallGroup(4, [1]));
"C4"
gap> StructureDescription(OneSmallGroup(4, [2]));
"C2 x C2"
gap> List(AllSmallGroups(4, [12]), StructureDescription);
[ "C4", "C2 x C2" ]
gap> OneSmallGroup(1024);
Error, AllSmallGroups / OneSmallGroup: groups of order 1024 not available
gap> G := OneSmallGroup(Size, 8, IsAbelian, true, IsCyclic, [false, true]);;
gap> StructureDescription(G);
"C8"
gap> G := OneSmallGroup(Size, 8, IsAbelian, IsCyclic, false);;
gap> StructureDescription(G);
"C4 x C2"
gap> G := OneSmallGroup(Size, 8, IsAbelian, IsCyclic, [false, false]);;
gap> StructureDescription(G);
"C4 x C2"
gap> G := OneSmallGroup(Size, 12, Size, [12]);;
gap> StructureDescription(G);
"C3 : C4"
gap> G := OneSmallGroup(Size, 12, IdGroup, [[12]], [1]);
fail
gap> G := OneSmallGroup(Size, 12, IdGroup, [121]);
fail
gap> G := OneSmallGroup(Size, 12, IdGroup, [[121]]);;
gap> StructureDescription(G);
"C3 : C4"
gap> G := AllSmallGroups(Size, 12, Size, 12, [1]);
[  ]
gap> IdsOfAllSmallGroups(4);
[ [ 41 ], [ 42 ] ]

################################################################################
# ID_AVAILABLE
################################################################################
gap> notavailable := [];;
gap> for i in [1 .. 5000] do
>   if ID_AVAILABLE(i) = fail then
>     Add(notavailable, i);
>   fi;
> od;
gap> notavailable;
51210241536201620242025204020482052205820642072
  207920802088210621122120212821362160218421872200
  220822142232224022502256226822802288229522962304
  231223202322232823522360237623922400240824242430
  244024482457246424722480248424962500252025382544
  255225602565256825762584259226002616262526322640
  264626622664268026882700270427122720272827362744
  275027542760278428002808283228352840285628622880
  288829042912291629202928295229602968297029762992
  300030163024304030483072307830803087309631053120
  312831323136314431603168318631923200321332163224
  324032483250325632643267328032883294330433123320
  333633443348336033753384340034023408341634303432
  344034563472348034963500350435103520352835363552
  356035643576358435913600360836183624364036483672
  368036963720372637443750375237603768378037843792
  380038083816383438403848386138643872388038883912
  391539203936394239443952396039693976398439933996
  400040084032404040484050405640804088409641044116
  412041254128413641444152415841604176418542004212
  421642244232424042484250425642644266427242804296
  431243204344434743604368437443924394440044084416
  442444284440445544644472448044824488450045124520
  453645604563457645844590459246004608462446324640
  464446484656466446804698470447124720472547284750
  475247604776478448004806481648244840484848604872
  487548804888489649144920492849444960496849844992
  49955000 ]
gap> notavailable2 := Filtered([1..5000], x -> not IdGroupsAvailable(x));;
gap> notavailable = notavailable2;
true

################################################################################
# IdGroup
################################################################################
gap> IdGroup(SymmetricGroup(1));
11 ]
gap> IdGroup(CyclicGroup(1024));
Error, the group identification for groups of size 1024 is not available
gap> G := GL(22);;
gap> IdGroup(G);
61 ]
gap> StructureDescription(G);
"S3"
gap> IdGroup(SL(32));
16842 ]
gap> StructureDescription(SmallGroup(16842));
"PSL(3,2)"
gap> IdGroup(CyclicGroup(IsPermGroup, 1001));
10011 ]
gap> StructureDescription(SmallGroup(10011));
"C1001"
gap> G := CyclicGroup(IsPcGroup, 12000);
<pc group of size 12000 with 9 generators>
gap> H := Subgroup(G, [G.1 ^ 6000]);;
gap> IdGroup(H);
21 ]

################################################################################
# ReadSmallLib
################################################################################
gap> SMALL_GROUP_LIB[1536] := rec(npnil := List([1 .. 12], x -> []));;
gap> ReadSmallLib("sml", 81536, [1]);
gap> ReadSmallLib("sml", 81536, [12]);
gap> ReadSmallLib("sml", 81536, [127]);
gap> ReadSmallLib("sml", 81536, [2]);

################################################################################
# Gap3CatalogueIdGroup & Gap3CatalogueGroup
################################################################################
gap> Gap3CatalogueIdGroup(SymmetricGroup(5));
Error, Gap3CatalogueIdGroup: the group catalogue of gap-3.0 was
limited to size 100
gap> Gap3CatalogueGroup(1011);
Error, Gap3CatalogueIdGroup: the group catalogue of gap-3.0 was
limited to size 100
gap> GAP3_CATALOGUE_ID_GROUP := fail;;
gap> Gap3CatalogueIdGroup(SymmetricGroup(2));
21 ]
gap> GAP3_CATALOGUE_ID_GROUP := fail;;
gap> StructureDescription(Gap3CatalogueGroup(21));
"C2"
gap> Gap3CatalogueIdGroup(CyclicGroup(4));
42 ]
gap> IsCyclic(Gap3CatalogueGroup(42));
true
gap> Gap3CatalogueGroup(43);
Error, Gap3CatalogueGroup: there are just 2 groups of size 4

################################################################################
# UnloadSmallGroupsData
################################################################################
gap> UnloadSmallGroupsData();
gap> SMALL_GROUP_LIB;
[  ]
gap> PROPERTIES_SMALL_GROUPS;
[  ]
gap> GAP3_CATALOGUE_ID_GROUP;
fail
gap> ID_GROUP_TREE;
rec( fp := [ 1 .. 50000 ], next := [  ] )

################################################################################
# FrattinifactorSize and FrattinifactorId
################################################################################
gap> FrattinifactorSize(CyclicGroup(IsPermGroup, 2));
2
gap> FrattinifactorId(CyclicGroup(IsPermGroup, 2));
21 ]
gap> C2 := CyclicGroup(2);;
gap> H := DirectProduct(C2, C2, C2, C2, C2, C2, C2, C2, C2);
<pc group of size 512 with 9 generators>
gap> StructureDescription(H);
"C2 x C2 x C2 x C2 x C2 x C2 x C2 x C2 x C2"
gap> FrattinifactorSize(H);
512
gap> FrattinifactorId(H);
Error, FrattinifactorId: IdGroup for groups of size 512 not available

#
gap> STOP_TEST("small.tst");

[Dauer der Verarbeitung: 0.16 Sekunden, vorverarbeitet 2026-06-18]