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

SSL AddToIgs.tst   Interaktion und
Portierbarkeitunbekannt

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

gap> START_TEST("AddToIgs.tst");

# This example was sent to us by Heiko Dietrich. It formerly was very slow to
# compute and suffered from exponent size explosion.
# See also <https://github.com/gap-packages/polycyclic/issues/17>.
gap> ftl := FromTheLeftCollector( 26 );
<<from the left collector with 26 generators>>
gap> SetRelativeOrder( ftl, 15 );
gap> SetPower( ftl, 1, [ 2131415161 ] );
gap> SetRelativeOrder( ftl, 25 );
gap> SetPower( ftl, 2, [] );
gap> SetRelativeOrder( ftl, 35 );
gap> SetPower( ftl, 3, [] );
gap> SetRelativeOrder( ftl, 45 );
gap> SetPower( ftl, 4, [] );
gap> SetRelativeOrder( ftl, 55 );
gap> SetPower( ftl, 5, [] );
gap> SetRelativeOrder( ftl, 65 );
gap> SetPower( ftl, 6, [] );
gap> SetConjugate( ftl, 21, [ 61 ] );
gap> SetConjugate( ftl, 31, [ 21 ] );
gap> SetConjugate( ftl, 41, [ 31 ] );
gap> SetConjugate( ftl, 51, [ 41 ] );
gap> SetConjugate( ftl, 61, [ 51 ] );
gap> SetConjugate( ftl, 71, [ 26, -1 ] );
gap> SetConjugate( ftl, 76, [ 22, -1 ] );
gap> SetConjugate( ftl, 81, [ 71 ] );
gap> SetConjugate( ftl, 82, [ 23, -1 ] );
gap> SetConjugate( ftl, 91, [ 81 ] );
gap> SetConjugate( ftl, 93, [ 24, -1 ] );
gap> SetConjugate( ftl, 101, [ 91 ] );
gap> SetConjugate( ftl, 104, [ 25, -1 ] );
gap> SetConjugate( ftl, 111, [ 101 ] );
gap> SetConjugate( ftl, 115, [ 26, -1 ] );
gap> SetConjugate( ftl, 121, [ 11126, -1 ] );
gap> SetConjugate( ftl, 126, [ 7122, -1 ] );
gap> SetConjugate( ftl, 131, [ 121 ] );
gap> SetConjugate( ftl, 132, [ 8123, -1 ] );
gap> SetConjugate( ftl, 141, [ 131 ] );
gap> SetConjugate( ftl, 143, [ 9124, -1 ] );
gap> SetConjugate( ftl, 151, [ 141 ] );
gap> SetConjugate( ftl, 154, [ 10125, -1 ] );
gap> SetConjugate( ftl, 161, [ 151 ] );
gap> SetConjugate( ftl, 165, [ 11126, -1 ] );
gap> SetConjugate( ftl, 171, [ 16126, -1 ] );
gap> SetConjugate( ftl, 176, [ 12122, -1 ] );
gap> SetConjugate( ftl, 181, [ 171 ] );
gap> SetConjugate( ftl, 182, [ 13123, -1 ] );
gap> SetConjugate( ftl, 191, [ 181 ] );
gap> SetConjugate( ftl, 193, [ 14124, -1 ] );
gap> SetConjugate( ftl, 201, [ 191 ] );
gap> SetConjugate( ftl, 204, [ 15125, -1 ] );
gap> SetConjugate( ftl, 211, [ 201 ] );
gap> SetConjugate( ftl, 215, [ 16126, -1 ] );
gap> SetConjugate( ftl, 221, [ 21126, -1 ] );
gap> SetConjugate( ftl, 226, [ 17122, -1 ] );
gap> SetConjugate( ftl, 231, [ 221 ] );
gap> SetConjugate( ftl, 232, [ 18123, -1 ] );
gap> SetConjugate( ftl, 241, [ 231 ] );
gap> SetConjugate( ftl, 243, [ 19124, -1 ] );
gap> SetConjugate( ftl, 251, [ 241 ] );
gap> SetConjugate( ftl, 254, [ 20125, -1 ] );
gap> SetConjugate( ftl, 261, [ 251 ] );
gap> SetConjugate( ftl, 265, [ 21126, -1 ] );
gap> SetConjugate( ftl, -71, [ 261 ] );
gap> SetConjugate( ftl, -76, [ 221 ] );
gap> SetConjugate( ftl, -81, [ 7, -1 ] );
gap> SetConjugate( ftl, -82, [ 231 ] );
gap> SetConjugate( ftl, -91, [ 8, -1 ] );
gap> SetConjugate( ftl, -93, [ 241 ] );
gap> SetConjugate( ftl, -101, [ 9, -1 ] );
gap> SetConjugate( ftl, -104, [ 251 ] );
gap> SetConjugate( ftl, -111, [ 10, -1 ] );
gap> SetConjugate( ftl, -115, [ 261 ] );
gap> SetConjugate( ftl, -121, [ 11, -1261 ] );
gap> SetConjugate( ftl, -126, [ 7, -1221 ] );
gap> SetConjugate( ftl, -131, [ 12, -1 ] );
gap> SetConjugate( ftl, -132, [ 8, -1231 ] );
gap> SetConjugate( ftl, -141, [ 13, -1 ] );
gap> SetConjugate( ftl, -143, [ 9, -1241 ] );
gap> SetConjugate( ftl, -151, [ 14, -1 ] );
gap> SetConjugate( ftl, -154, [ 10, -1251 ] );
gap> SetConjugate( ftl, -161, [ 15, -1 ] );
gap> SetConjugate( ftl, -165, [ 11, -1261 ] );
gap> SetConjugate( ftl, -171, [ 16, -1261 ] );
gap> SetConjugate( ftl, -176, [ 12, -1221 ] );
gap> SetConjugate( ftl, -181, [ 17, -1 ] );
gap> SetConjugate( ftl, -182, [ 13, -1231 ] );
gap> SetConjugate( ftl, -191, [ 18, -1 ] );
gap> SetConjugate( ftl, -193, [ 14, -1241 ] );
gap> SetConjugate( ftl, -201, [ 19, -1 ] );
gap> SetConjugate( ftl, -204, [ 15, -1251 ] );
gap> SetConjugate( ftl, -211, [ 20, -1 ] );
gap> SetConjugate( ftl, -215, [ 16, -1261 ] );
gap> SetConjugate( ftl, -221, [ 21, -1261 ] );
gap> SetConjugate( ftl, -226, [ 17, -1221 ] );
gap> SetConjugate( ftl, -231, [ 22, -1 ] );
gap> SetConjugate( ftl, -232, [ 18, -1231 ] );
gap> SetConjugate( ftl, -241, [ 23, -1 ] );
gap> SetConjugate( ftl, -243, [ 19, -1241 ] );
gap> SetConjugate( ftl, -251, [ 24, -1 ] );
gap> SetConjugate( ftl, -254, [ 20, -1251 ] );
gap> SetConjugate( ftl, -261, [ 25, -1 ] );
gap> SetConjugate( ftl, -265, [ 21, -1261 ] );

#
gap> g := PcpGroupByCollector(ftl);
Pcp-group with orders [ 555555000000000000
  00000000 ]
gap> gen:=[ g.1, g.1^4*g.2^4*g.3^4*g.4^4*g.6*g.7*g.25^-1*g.26^2 ];;
gap> U := Subgroup(g,gen);
Pcp-group with orders [ 555555000000000000
  00000000 ]
gap> Igs(gen);
[ g1, g2*g3*g4*g5*g6, g3*g4*g5^3*g23^-1*g24^3*g25^2*g26, 
  g4*g5^2*g24^-1*g25^2*g26^-1, g5*g6^4*g22*g23^-1*g24^2*g26^-2
  g6*g22*g23^2*g24*g25^3*g26^-2, g7*g22^-4, g8*g23^-4, g9*g24, g10*g25, 
  g11*g26^-4, g12*g22^-3, g13*g23^-3, g14*g24^2, g15*g25^-3, g16*g26^-3
  g17*g22^-2, g18*g23^-2, g19*g24^-2, g20*g25^3, g21*g26^3, g22^5, g23^5
  g24^5, g25^5, g26^5 ]

#
# Fix a bug in AddToIgs
# See https://github.com/gap-packages/polycyclic/issues/66
#
gap> G := PcGroupToPcpGroup( SmallGroup( 369 ) );;
gap> gensG := [ G.1, G.4 ];;
gap> G = Subgroup( G, gensG );
true

# second example for issue #66
gap> G := ExamplesOfSomePcpGroups( 10 );;
gap> S := Subgroup( G, [ G.1, G.2, G.4 ] );;
gap> Igs(S);
[ g1, g2, g3^3, g4 ]
gap> G.3^3 in S;
true
gap> G.2^-1*G.4*G.2*G.4^-2;
g3^3

#
# third example for issue #66
#
gap> H := SmallGroup( 369 );;
gap> gensH := [ H.1, H.4 ];;
gap> H = Subgroup( H, gensH );
true
gap> iso := IsomorphismPcpGroup( H );;
gap> G := Range( iso );;
gap> gensG := List( gensH, h -> h^iso );;
gap> S := Subgroup( G, gensG );;
gap> Igs( S );
[ g1, g2, g3*g4^2, g4 ]
gap> G = S;
true

# another example, this time from issue #56
gap> A:=AbelianPcpGroup([3,2,12]);;
gap> m:=MinimalGeneratingSet(A);;
gap> Length(m);
2
gap> List(AddToIgs([],m), Depth);
123 ]

#
gap> STOP_TEST( "AddToIgs.tst", 1);

[Verzeichnis aufwärts0.20unsichere VerbindungÜbersetzung europäischer Sprachen durch Browser2026-06-17]