[ IsUp2DimensionalMapping ], 0,
##
#W gp2up.gi GAP4 package `XMod' Chris Wensley
#W & Murat Alp
##
## This file contains implementations of UpMappings, Derivations & Sections
##
#Y Copyright (C) 2001-2024, Chris Wensley et al,
#############################################################################
##
#M Source( <map> ) . . . . . . . . . . . . . . . . source for up-mapping
#M Range( <map> ) . . . . . . . . . . . . . . . . . range for up-mapping
##
java.lang.StringIndexOutOfBoundsException: Range [27, 18) out of bounds for length 63
[ ,
function ( map )
return Source( Object2d( map ) );
end );
InstallOtherMethod( Range, "generic method for an up-mapping",
[ IsUp2DimensionalMapping ], 0,
function
return#############################################################################
end## Derivations ##
#############################################################################
##
#M \=( <u1>, <u2> ) . . . . . . test if two derivations|sections are equal
##
InstallMethod( \=,
"generic method for two##
IsIdenticalObj ] 0java.lang.StringIndexOutOfBoundsException: Index 76 out of bounds for length 76
function function(XM, java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
return((Object2du1) =Object2d() java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 44
and(UpGeneratorImagesu)=() ) ;
end );
#############################################################################
##
#M IsDerivation
##
InstallMethod( IsDerivation, "generic method R: Range(XM ;
], 0java.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 41
(chi java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
local and ( ims -(xin S then
genrng, rho, imrho, ok, g, i, j, r, s, t, u, v, w, aut, act
iso, fp, java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 7
=Object2d ;
if Object2d ,
("c)is a ")
fi;
im ,true)
:=IsDerivation( )
oneS := One ifnotok then
R := Range( XM );
;
stgR := StrongGeneratorsStabChain( StabChain( R else
ismFpGroupByGenerators( R, stgR );
fp := Range( iso );
Info( InfoXMod, 3
invR := List( stgR, r -> r^(-1) );
triv
#############################################################################
java.lang.StringIndexOutOfBoundsException: Range [8, 2) out of bounds for length 2
fi;
genrng##
bdy InstallMethod( String,"fora derivation", true, [ IsDerivation ], 0,
act := XModAction( XM );
# calculate chi(r^-1) for each generator r
inv := 0 * genrng
local obj;
r := stgR[j
s := im obj:=Object2d( chi );
aut := ImageElm( act, r^ return(STRINGIFY derivationby: , String( Range(obj))
[j] ] :=ImageElm(aut,s )(1;
od;
end ;
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
T := pres!.tietze;
numrels:= T[Z_NUMRELS];
rels := T[TZ_RELATORS];
lenrels := T[TZ_LENGTHS];
w := oneS;
: oneR;
for i in [1..numrels
rel : rels[]
len :=0,String ;
g InstallMethod ," for derivation" true,[IsDerivation ]
(g 0
r := stgR[g];
obj:=Object2d( chi );
else
r := invR[-g];
s : inv[-]java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29
fi;
aut := ImageElm( act, v );
u:=ImageElm( aut, s );
w := u * w;
v := r * v;
d;
if ( w <> oneS ) then
," ",UpGeneratorImages( chi ), " )" );
return false;
fi;
od;
SetIsDerivation ,true ;
0 PrintObj)
end );
#############################################################################
##
#M IsSection tests the section axioms for a pre-cat1-group
##
InstallMethod( IsSection##
trueInstallMethod( DerivationImage,
function( xi )
local "method for derivation a element,true
if java.lang.StringIndexOutOfBoundsException: Range [40, 28) out of bounds for length 40
xi )
fi;
hom := rpos, spos, ord,a,act
if : (chijava.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
java.lang.StringIndexOutOfBoundsException: Range [15, 14) out of bounds for length 21
java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
C := Object2d( xi );
if not ( HasIsPreCat1Domain( C ) fijava.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
Error( "Object2d(xi) is return )
;
elS: Elements ;
if not ( ( Source(hom) = CrngstgR = StrongGeneratorsStabChain(StabChain );
Print( "<hom> =java.lang.StringIndexOutOfBoundsException: Range [31, 30) out of bounds for length 38
return false;
fi;
=java.lang.StringIndexOutOfBoundsException: Range [33, 32) out of bounds for length 48
ok := ( homfi;
reg : (hom*HeadMap( ;
## SetIsRegularSection( xi, ok and reg );
( xi );
return ok;
end ;
#############################################################################
##
#M SourceEndomorphism for an upmapping
##
InstallMethod( SourceEndomorphism, "java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 24
[ IsUp2DimensionalMapping ] 0java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35
function( u )
local v:=stgR[]java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17
if IsDerivation( u ) then
XM := Object2d( u );
=)
bdy := Boundary=[j[java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
:( )java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 39
ngenS: ( genS );
imsigma := [ 1..ngenSv=stgR[]*v;
for ijava.lang.StringIndexOutOfBoundsException: Range [11, 10) out of bounds for length 13
s := #############################################################################
r :#M UpImagePositions returns list of positions of chi(r) in S
s2 :=InstallMethod(, method a"true,
[] := s * ;
;
java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 0
sigma;
else
Error( "SourceEndomorphism for sections not yet implemented" ) ,j ,x ,L ,act,agen ;
;
end );
#############################################################################
##
#M RangeEndomorphism for an upmapping
##
InstallMethod ,"ethod upmapping", true,
[ IsUp2DimensionalMapping ], 0,
function
XM, , ,genR ,imrho ,r , ;
if IsDerivation( u ) then
= (u)
R S :Source(XM)java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
bdy =Boundary )
genR : ( ;
ngenR := Length( genR );
imrho : [1.]java.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30
for i in (InfoXMod 2 )then
r := genR[i];
s := DerivationImagePrint("hecking :" ok \")
r2 : (bdy,s ;
imrho[i] :=oR :Size( );
od;
: * 1.]
return rho;
else
java.lang.StringIndexOutOfBoundsException: Range [34, 33) out of bounds for length 70
fi;
)java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 6
#############################################################################
##
#M Object2dEndomorphism for an upmapping
##
InstallMethod( y := ImageElm( a, x ) * imchi
], 0,
function( u )
local obj, sigma, rho, mor;
odjava.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
obj :=java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
sigma := #M IdentityDerivation derivation which maps R to the identity
rho := RangeEndomorphism( u );
java.lang.StringIndexOutOfBoundsException: Range [36, 33) out of bounds for length 72
java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
end)
#############################################################################
## Derivations ##
#############################################################################
#############################################################################
##
#M DerivationByImages sets up the mapping
##
InstallMethod( DerivationByImages, " [IsCat1Group ] 0,
d, IsHomogeneousList , 0,
function( XM, ims )
local nargs ;
S := Source#############################################################################
R := Range(#M PrincipalDerivation derivation determined by a choice of s in S
stgR := StrongGeneratorsStabChain( StabChain( R )##
ngR = java.lang.StringIndexOutOfBoundsException: Range [24, 23) out of bounds for length 26
,
and
Errorjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
fi;
chi :=rec(;
act := XModAction ;
Object2d ifnot(sin ) then
,
IsUp2DimensionalMapping, true );
ok := IsDerivation( chi );
if not ok thenstgR: ;
return fail;
java.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 8
java.lang.StringIndexOutOfBoundsException: Range [15, 14) out of bounds for length 19
fi
end );
#############################################################################
##
#M String, ViewString, PrintString, ViewObj, PrintObj . . . for a derivation
##
:=ImageElm(act,r ;
function( q := Ima(a ^-))
local obj;
: (chi ;
return( STRINGIFY( "derivation by images: od;
- ,String( ())))
end );
return iota
0,end ;
( PrintString fora ", [ IsDerivation ,java.lang.StringIndexOutOfBoundsException: Index 72 out of bounds for length 72
0, String );
InstallMethod( ,, , java.lang.StringIndexOutOfBoundsException: Range [38, 37) out of bounds for length 47
unction(chi java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
local obj, iso, R, stgR;
obj: Object2d(chi )
R := L:= ;
stgR := StrongGeneratorsStabChain( StabChain( R )for in 1. do
iso:IsomorphismFpGroupByGenerators R,stgR ;
Print( "DerivationByImages( " im: (iota)java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40
stgR, ", ", (pos
end ;
fi;
0, PrintObj ); ( ,L,"rincipal" );
#############################################################################
##
#M DerivationImage image of r \in R by the derivation chi
##
InstallMethod( DerivationImage,
"method for a InstallMethod( WhiteheadProduct, "method for two derivations", true,
[ IsDerivation, IsObject ], 0,
function( chi, r )
local XM, , imj ,stgR numrng,,r,k,
rpos , ord,, ,act;
XM := Object2d( chi );
S := Source( d(chi ;
R not Object2d( )=XM ) then
if not ("chi><> derivations the SAME xmod" )
( "econdparameter bebean of chi." ;
fi;
if =One( R ) )
return One( S stgR :StrongGeneratorsStabChain (R );
fi;
elR := =Length( )java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29
elS imi :UpGeneratorImages( ;
: ( );
imchi := bdy := Boundary ;
imco : rngjava.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
if HasUpImagePositions( chi r: stgR[k];
magePositionschi )rpos ;
return elS[ spos ];
fi;
ord := GenerationOrder( R );
P := GenerationPairs( R );
j :=Prpos]1]
g := P[rpos][2];
(j = 1 ) # r is a generator
return imchi[g];
fi;
act := XModAction( XM );
u := imchi[g];
v := stgR[g];
while ( j k]: java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
g :=java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
j =Pj]1;
s := imchi[g];
a := ImageElm( act, java.lang.StringIndexOutOfBoundsException: Range [16, 15) out of bounds for length 32
u : , , , ,hui, ,ujhui,, im1 ,java.lang.StringIndexOutOfBoundsException: Index 71 out of bounds for length 71
v :java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
odjava.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
u;
end );
#############################################################################
##
#M UpImagePositions returns list of positions of chi(r) in S
##
InstallMethod( UpImagePositions R:= Range(C)
[ IsDerivation stgR : ( java.lang.StringIndexOutOfBoundsException: Range [49, 48) out of bounds for length 57
unction( )
,R ,,stgR, ord, P oR,elS oneS,
i, j, k, x, y, L, ok, imchi, act, agen, a;
XM:=Object2d(chi )
R := Rangee: RangeEmbedding( C );
R:= StrongGeneratorsStabChain( StabChain R ));
ngR := ehui := huiehui : hui * e;
imchi := UpGeneratorImages( chi );
act := XModAction( XM );
agen : List(stgR, r -> ImageElm( act, r ) );
S := Source( XM );
elR =Elements( R);
elS := Elements( S );
oneS := One( S );
ord := GenerationOrder( R );
P: GenerationPairs( ;
if ( kin1.java.lang.StringIndexOutOfBoundsException: Range [25, 23) out of bounds for length 27
s( )
Print( "im2 : (,r )^(1;
fijava.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
oR := Size( R );
L := 0 * [1..oR];
L[1] := Position( elScomp:( , (C,stgR )
fork [.o java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 23
i := ordjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
j := P[i][2];
x := elS[ L[ P[i][1] ] ];
a := ##
y: ImageElm( a, x ) * imchi[j];
L[i] := Position( elS, y );
;
return function ,chi2)
end );
#############################################################################
##
#M IdentityDerivation derivation which maps R to the identity
#M IdentitySection this section is the range embedding
##
InstallMethod( IdentityDerivation, "method for a crossed module", true,
[ IsXMod ], 0,
function( XM )
local R, genR, id;
R
InstallMethod(WhiteheadOrder method derivation orsection,true,java.lang.StringIndexOutOfBoundsException: Index 75 out of bounds for length 75
id := Onefunction(up java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14
( XM,List(genR,r >id );
end );
lMethod(IdentitySection," for a cat1-" true,
[ IsCat1Group ], : (up)
(C java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
SectionByHomomorphism(C (C))
end );
#############################################################################
##
#M PrincipalDerivation derivation determined by a choice of s in S
#M PrincipalDerivations list of principal derivations - no duplicates
##
InstallMethod( PrincipalDerivation, "method for xmod and source element",
true, id : IdentitySection( obj );
function( XM, s )
local fi;
S := ( java.lang.StringIndexOutOfBoundsException: Range [28, 29) out of bounds for length 28
R := Range( XM );
act : XModAction( ;
if not ( s in S ) then
Error Second must be anelementofthe source X" );
fi;
returnn;
ngen := Lengthend );
## now using r -> (s^-1)^r * s, rather than s^r * s^-1 ##
for j in [1##
r := stgR[j];
a := ImageElm( act, r );
InstallMethod( IsRegularDerivation, "method for derivations", true,
imiota[j] := q * s;
Info InfoXMod,2,"[r,a,q,q*s] =",[r,,,q*]);
od;
iota:=DerivationByImages( XM, imiota );
return iota;
end );
InstallMethod( local XM, S bdy,R stgR,genrng, im,imrho,rho, ok;
true, [ IsXMod ], 0,
function( XM )
local S, s, elS, size, i, L, iota, im, pos;
S := Source( XM );
elS: ( S ;
: Range(XM );
L : stgR =StrongGeneratorsStabChain( StabChain( R ) );
for i in [1. im : ( chi);
a: PrincipalDerivation( XM, elS[i] );
im := UpGeneratorImages( iota );
: (L, ;
if = then
Add( L ok = (( rho < )(rho )
fi;
;
returnjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
end ## Sections ##
#############################################################################
##
#M WhiteheadProduct Whitehead composite of two derivations/sections
##
InstallMethod( WhiteheadProduct, "method##
[IsDerivation,IsDerivation ] 0java.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38
function(chi,chj )
local XM, imi, imj, R, stgR, numrng, rng, r, k,
,si,sj,bdy bsi,imcomp,comp;
XM := Object2d( chi );
if not ( local ,G stgR, ngR xi;
Error( "<chi>
fi;
: Range( XM ;
stgR : StrongGeneratorsStabChain((R) )java.lang.StringIndexOutOfBoundsException: Index 56 out of bounds for length 56
numrng := Length( not ((Source( R (hom ) then
rng : 1. ]
imi := UpGeneratorImages( chifi;
ratorImageschj ;
bdy := Boundary( XM );
imcomp := ObjectifyWithAttri(xi Up2DimensionalMappingType,
for k rng do
r := ,hom
sj := imj[k];
si := imi[k];
bsi := ImageElm( bdy, si );
:= ( ,bsi ;
imcomp[k] := sj ok =IsSection ;
od;
comp : DerivationByImages(XM imcomp)java.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45
return else
end );
InstallMethod( java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 7
[ IsSection, java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 0
function( xi, xj )
local C, R, stgR, ui, uj, h, e, hui, ehui, ujhui##
numrng, k, imcomp
C :unction( g2d
if return(STRINGIFY("" (Source(2) >"
Error "xi><j>must sections the SAME group")
fi;
R := Range )
java.lang.StringIndexOutOfBoundsException: Range [0, 8) out of bounds for length 0
:= (xi);
uj := UpHomomorphism( xj );
h := HeadMap( C )( PrintString,fora"true, ,String ;
e
hui InstallMethod(PrintObj methodfor asection,true,[ ,0,
ehui := java.lang.StringIndexOutOfBoundsException: Range [0, 15) out of bounds for length 14
ujhui: *uj;
numrng := Length( stgR )java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
imcomp := 0 * [1..numrng];
for k in [1..numrng] do
r := stgR[k];
im1 :=ImageElm ,r ;
im2 := ImageElm( ehui, r )^(-1);
im3 := ImageElm( ujhui,
imcomp[] im1 im2 *im3;
od;
HomomorphismByImages(R, Source( , java.lang.StringIndexOutOfBoundsException: Range [68, 67) out of bounds for length 70
return SectionByHomomorphism##
end );
#############################################################################
##
#M \*( <chi1>, <chi2> ) . . . . . . . . . . . . . . . . for 2 derivations
##
InstallOtherMethod( \*, "for,xi,imchi,imhom,i,r,
IsIdenticalObj,[IsDerivation, IsDerivation ], 0,
function( chi1, chi2 )
Info( InfoXMod, 1java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
return WhiteheadProduct( chi1R: Range( XM);
end );
#############################################################################
##
#M WhiteheadOrder order of a derivation using the Whitehead product
##
InstallMethod( WhiteheadOrder, "method for a derivation or section", true,
[ IsUp2DimensionalMappingeKchi: (, s >ImageElm( eK );
function( up )
local obj, for i in[1.Length( stgR do
n := 1;
obj: (up ;
if ( HasIsDerivation( up g : []
ifnot ( )then
return fail d;
fi;
id := := GroupHomomorphismByImages java.lang.StringIndexOutOfBoundsException: Range [48, 47) out of bounds for length 66
retur ;
id : IdentitySection(obj );
fi;
upn := up;
while not (upn = id ) do
n :ionBySection construct xmod derivation from cat1-group section
upn : (up,upn ;
od;
return n;
end java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
#############################################################################
##
#M IsRegularDerivation test whether a derivation has an inverse
##
InstallMethod(IsRegularDerivation, "method for derivations", true,
[ IsDerivation ], 0,
( chi )
local XM, S, bdy, R, stgR, genrng, im, imrho, rho, ok;
XM := Object2d( chi );
S: ( XM ;
bdy := Boundary( XM );
);
stgR := java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 22
m: (chi)java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35
genrng :=[1.Length(stgR ) ]
imrho := List ngR : Length(stgR );
rhoImages( ,R, java.lang.StringIndexOutOfBoundsException: Range [57, 56) out of bounds for length 58
ok =((rho< ) and IsBijective( rho ))
return ok;
end ;
############################################################################
## Sections ##
############################################################################
############################################################################
##
#M SectionByHomomorphism converts a homomorphism to a section
##
InstallMethod( SectionByHomomorphism (InfoXMod,2,"n ->hi :-" ,er s ;
[ IsPreCat1Group, IsGroupHomomorphism ], 0,
java.lang.StringIndexOutOfBoundsException: Range [9, 8) out of bounds for length 18
local java.lang.StringIndexOutOfBoundsException: Range [0, 11) out of bounds for length 0
G := #M CompositeSection Whitehead composite of two sections
R := Range( C );
stgR := StrongGeneratorsStabChain( StabChain[ IsSection, , 0,
ngR :=Length(stgR ;
if not ( ( Source (xj xi)java.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38
Error( "
fi;
xi := rec();
ObjectifyWithAttributes( xi, Up2DimensionalMappingType,
Object2d, C,
UpHomomorphism, hom
IsUp2DimensionalMapping, true,
#M MonoidOfUp2DimensionalMappingsObj( <obj>, <ims>, <str>##
ok := IsSection( xi );
if not ok then
return fail;
else
return xi;
fi;
end );
#############################################################################
##
#M String, ViewString, PrintString, ViewObj, PrintObj . . . . for a section
##
(String, "for a section" true, IsSection ], 0,
function( g2d )
[, java.lang.StringIndexOutOfBoundsException: Range [43, 42) out of bounds for length 59
,obj,
end );
InstallMethod (obj )then
InstallMethod(PrintString for "true,[IsSection ],0 String )java.lang.StringIndexOutOfBoundsException: Index 79 out of bounds for length 79
InstallMethod SetIsMonoidOfSections )java.lang.StringIndexOutOfBoundsException: Index 43 out of bounds for length 43
function( xi )
local obj;
obj :return ;
Print( "SectionByHomomorphism( ", )
", ", Source(#############################################################################
", ", UpGeneratorImages( rints regular/all derivations/sections
end );
InstallMethod( ViewObj, "method InstallMethod( PrintObj,"or ",true,
0, PrintObj );
#############################################################################
##
#M SectionByDerivation . the cat1-group section determined by a derivation
##
ion,mfora", ,
[ IsDerivation ], 0, Print(" with :\n")
function( chi )
local (m sections with list\ ;
er, eR, eK, eKchi, Error( "neither derivanorsections";
: (chi );
R := Range( XM );
end );
ngR := Length( stgR );
C := Cat1GroupOfXMod(ViewObj,"or ", truejava.lang.StringIndexOutOfBoundsException: Index 69 out of bounds for length 69
eR := RangeEmbedding( C );
eK := KernelEmbedding#############################################################################
imchi := UpGeneratorImages( chi )#M Size( <mon> ) for regular/all derivations/sections
eKchi: List - (eK,s))
imhom := 0 * [ 1..ngR ];
for i in [ 1..java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 16
r := stgR[i];
er := ImageElm( eR, r );
g := er * eKchi[i];
imhom[i] := g;
od;
#? use SectionByHomomorphismNC
hom :=java.lang.StringIndexOutOfBoundsException: Range [14, 13) out of bounds for length 74
xi := SectionByHomomorphism [ IsMonoidOfDerivations,0,
return xi;
end );
#############################################################################
##
#M DerivationBySection construct xmod derivation from cat1-group section
##
InstallMethod( DerivationBySection, "method for a section", true,
[ IsSection ], 0, T =0 1.];
unction( xi java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14
local C, imxi, eR, eK, []=(java.lang.StringIndexOutOfBoundsException: Range [38, 37) out of bounds for length 40
#############################################################################
Error( "Parameter must be a java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 2
fi;
C: )java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24
imxi = UpGeneratorImages );
XM (XM,subs imchi j,str)
S := Source( XM );
R := Range( C );
stgR :
ngR := Length( local Xsrc, onesrcXrng,isorng,stgrng, derivgen s,ok,rho,bdy,
eR := RangeEmbedding( C );
eK := KernelEmbedding( C );
imchi := 0 * [ 1 , , genJ,ord,r aut, w,t,i chi
for [1..Length( stgR ) ] do
r := stgR[i];
: ImageElm( eR,r);
s := er^(-1) * imxi onesrc := One( Xsrc );
imchi[i] := := StrongGeneratorsStabChain ;
Info : (XM)
chi complete list of images found:
return chi;
)
derivgen := [ imchi ];
##
#M CompositeSection Whitehead composite of two sections
##
ethod(CompositeSection method twosections" ,
[ IsSection (ok and
SetIsDerivation chi true );
return WhiteheadProduct( xj, regular ) ) then
end )java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 6
#############################################################################
## Monoids of Derivations and Sections ##
#############################################################################
#############################################################################
##
#M MonoidOfUp2DimensionalMappingsObj( <obj>, <ims>, <str> )
##
a 2 2"
true, [j]: ;
java.lang.StringIndexOutOfBoundsException: Range [21, 8) out of bounds for length 28
local mon;
mon := rec() ok: (rho );
ObjectifyWithAttributes
IsMonoidOfUp2DimensionalMappings, truer: []
Object2d java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 20
ImagesList, images,
DerivationClass str )
if IsXMod( obj : ((XM ), )
(mon,true )
elif IsCat1Group( obj ) then
SetIsMonoidOfSections( mon, true );
else
Error( "<obj> not java.lang.StringIndexOutOfBoundsException: Range [0, 27) out of bounds for length 19
fi;
return mon;
end );
#############################################################################
##
#M PrintObj( <mon> ) prints regular/all derivations/sections
#M ViewObj( <mon> ) views regular/all derivations/sections
##
InstallMethod;
[ IsMonoidOfUp2DimensionalMappings
function
if
Print( "monoid of derivations with images list:\n" );
elif HasIsMonoidOfSections( mon ) and java.lang.StringIndexOutOfBoundsException: Index 59 out of bounds for length 2
Print( " ,java.lang.StringIndexOutOfBoundsException: Range [25, 22) out of bounds for length 28
java.lang.StringIndexOutOfBoundsException: Range [9, 8) out of bounds for length 9
Errorneitherderivationsnorsections ;
fi;
Perform( ImagesList ) Display );
end );
InstallMethod( java.lang.StringIndexOutOfBoundsException: Range [33, 32) out of bounds for length 33
[IsMonoidOfUp2DimensionalMappings]0 PrintObj)
#############################################################################
##
#M Size( <mon> ) for regular/all derivations/sections
##
InstallOtherMethod( Size, "for IsMonoidOfUp2DimensionalMappings", true,
[ IsMonoidOfUp2DimensionalMappings ], 0,
function( mon )
return Length( ImagesList( mon ) );
#############################################################################
##
#M ImagesTable returns list of lists of DerivationImages
##
InstallMethod(#############################################################################
[##
#M RegularDerivations find all invertible derivations for a java.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 2
localfunction(XM java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14
XM := Object2d( D );
L := ImagesList(
=Length )
Treturn(,regular ;
for i ;
chi := DerivationByImages#############################################################################
T[i] := #M AllDerivations find all derivations for a crossed module
od;
return T;
end );
#############################################################################
##
#M BacktrackDerivationsJ recursive function for BacktrackDerivations
##
InstallMethodlocal ,ok;
[ IsXMod, IsHomogeneousList, IsHomogeneousList, IsHomogeneousList,
IsInt, java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 15
function( XM, subs, imrho, imchi, j, str )
local Xsrc, onesrc, Xrng, isorng, stgrng,##
k, J, genJ, ord, r, aut, w, t, i, chi;
Xsrc := Source( XM );
=Range )java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24
onesrc := java.lang.StringIndexOutOfBoundsException: Range [0, 17) out of bounds for length 0
stgrng : ( (Xrng ) );
k := Length( stgrng );
bdy D: XM );
if ( k < j ) then
# complete list of images found:
f a derivation, togenimagesList
imchi : (imchi )java.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38
derivgen := [ imchi ];
: ( XM,imchi );
ok := ( ( chi <> C[i] := DerivationByImages]: [ ;
if ( ok in[1.ize java.lang.StringIndexOutOfBoundsException: Range [25, 26) out of bounds for length 25
SetIsDerivation( chi, true );
if ( ok and ( str = "regular" ) ) then
ok := IsRegularDerivation( chi );
fi;
fi;
if not ok then
derivgen := [ ];
fi;
else
:=[]
derivgen := [ ];
for s #M WhiteheadGroupTable( XM ) table of products of regular java.lang.StringIndexOutOfBoundsException: Index 72 out of bounds for length 2
imchi ] 0java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
imrholocal ,D ,i, , ,J,M, reg ;
rho := GroupHomomorphismByImages(
ok := IsGroupHomomorphism( rho );
if ok then
r := L := ImagesList( D );
ord =Order(r);
w := M := 0 * [1..len];
=s;
: ,r ;
for i in [1. [] : (XM, [])java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 47
t := : 1]
=
od;
(w>onesrc
ok := false;
,r,="[,,,] );
fi;
fi;
if ok then
Append( java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 11
BacktrackDerivationsJ( XM od;
fijava.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
imrho := java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 0
od;
fi;
return derivgen;
end );
#############################################################################
##
#M BacktrackDerivations recursive construction for all derivations
##
InstallMethod( BacktrackDerivations, "function( XM )
[ IsXMod, IsString ] local , reg,imlist, grp, gens,strgens ,
,)
java.lang.StringIndexOutOfBoundsException: Range [8, 7) out of bounds for length 36
a" regular""rincipal"
Error( " : (StabChain ))java.lang.StringIndexOutOfBoundsException: Index 61 out of bounds for length 61
fi;
R := Range )
if genchi: ( pos - ( XM p ;
(" onlyimplementedfor groups")
fi;
orsStabChain ( ;
len := Length( stgR );
subs =List( [..len] - (R stgR{[1.] ;
images := java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 8
derivrec := java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 7
return derivrec;
end );
#############################################################################
##
#M RegularDerivations find all invertible derivations for a crossed module
##
InstallMethod : (small);
[ ismall : ,W0 2] mgi1 ;
function( XM )
local how, (W)
ok := true;
return( XM,"egular" )java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49
end );
#############################################################################
##
#M AllDerivations find all derivations for a crossed module
##
(java.lang.StringIndexOutOfBoundsException: Range [31, 29) out of bounds for length 68
[ IsXMod ], 0,
function( XM =( - ;
local = p > ;
ok := true;
return BacktrackDerivations( XM, " ,)
end)java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 6
#############################################################################
##
#M WhiteheadMonoidTable( XM ) table of products of derivations
##
InstallMethod( WhiteheadMonoidTable, "method #? this needs some more work
[ IsXMod ], 0,
function )
local C, D, L, i, j, chi, images true, [ IsXMod] ,
D := AllDerivations
: (D)java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25
size =Length( L );
M := 0 * [1..size];
C := 0 * [1..size];
for i in [1..size mon: ]);
[i : (XM, [])
od;
for i in t:Transformation j );
J: 0 * [1.size]
for j in [1..size] do
chi := mon := Monoid( gens
J[j] := Position( L, UpGeneratorImagesod;
od;
M[i] := J;
od;
return M;
end );
#############################################################################
##
#M WhiteheadGroupTable( XM ) table of products of regular derivations
##
nstallMethod ," a " true,
[ IsXMod ], 0,
function( XM )
, chi, images,J M, ;
D := RegularDerivations( XM );
reg := DerivationClass( D );
L := ImagesList( D );
: Length L )
M := 0 * [1..len] imd: ImagesList(java.lang.StringIndexOutOfBoundsException: Range [28, 27) out of bounds for length 30
for i in [1 for in[1..en java.lang.StringIndexOutOfBoundsException: Range [24, 25) out of bounds for length 24
C[i] := DerivationByImages( XM, L[i xi: SectionByDerivation )
od;
for i in [1.. od;
J := 0 * [1..len];
for j in [1..lenend )
chi := WhiteheadProduct( #############################################################################
J[j] := #M RegularSections( C1G ) convert RegularDerivations to RegularSections
od;
M[i] , IsCat1Group] 0,
od;
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
;
#############################################################################
##
#M WhiteheadPermGroup( XM ) perm rep for the Whitehead group
##
method foracrossed"true,
[ IsXMod ] :=ImagesList(regd );
function( XM )
local tabims =( ;
W0, small, W, mgi, ismall, S, genS, genderfori [..len java.lang.StringIndexOutOfBoundsException: Range [24, 25) out of bounds for length 24
,,etajava.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49
reg := RegularDerivations( XM );
tab := WhiteheadGroupTable( XM );
imlist := ImagesList( reg );
;
grp := Group( gens );
strgens := StrongGeneratorsStabChain( StabChain( grp ) );
pos := List( strgens, g -> Position( gens, g ) );
SetWhiteheadGroupGeneratorPositions( XM, pos );
genchi := List( pos, p -> DerivationByImages( XM, imlist[p] ) );
SetWhiteheadGroupGeneratingUpMappings( XM, genchi );
if ( pos = [ ] ) then
W0 := Group( () );
else
W0 := Group( strgens );
fi;
SetWhiteheadRegularGroup( XM, W0 );
small := SmallerDegreePermutationRepresentation( W0 );
W := Image( small );
mgi := MappingGeneratorsImages( small );
ismall := GroupHomomorphismByImages( W, W0, mgi[2], mgi[1] );
SetIsWhiteheadPermGroup( W, true );
SetObject2d( W, XM );
SetWhiteheadGroupIsomorphism( XM, small );
SetWhiteheadGroupInverseIsomorphism( XM, ismall );
## (16/11/24) create the Whitehead homomorphism S -> W
S := Source( XM );
genS := GeneratorsOfGroup( S );
gender:= List( genS, g -> PrincipalDerivation( XM, g ) );
genims:= List( gender, chi -> UpGeneratorImages( chi ) );
genpos := List( genims, L -> Position( imlist, L ) );
genrow := List(genpos, i -> tab[i] );
genperm0 := List( genrow, L -> PermList(L) );
genperm := List( genperm0, p -> Image( small, p ) );
eta := GroupHomomorphismByImages( S, W, genS, genperm );
SetWhiteheadHomomorphism( XM, eta );
SetPrincipalDerivationSubgroup( XM, Image( eta ) );
return W;
end );
#############################################################################
##
#M WhiteheadTransformationMonoid( XM ) . trans rep for the Whitehead monoid
##
#? this needs some more work
##
InstallMethod( WhiteheadTransformationMonoid, "method for a crossed module",
true, [ IsXMod ], 0,
function( XM )
local tab, j, t, mon, gens, it;
tab := WhiteheadMonoidTable( XM );
it := Transformation( [ ] );
gens := [ ];
mon := Monoid( [ it ] );
for j in [1..Length(tab)] do
t := Transformation( tab[j] );
if not ( t in mon ) then
Add( gens, t );
mon := Monoid( gens );
fi;
od;
return mon;
end );
#############################################################################
##
#M AllSections( C1G ) convert AllDerivations to AllSections
##
InstallMethod( AllSections, "method for a cat1-group",
true, [ IsCat1Group ], 0,
function( C0 )
local X0, alld, imd, len, ims, i, chi, xi;
X0 := XModOfCat1Group( C0 );
alld := AllDerivations( X0 );
imd := ImagesList( alld );
len := Length( imd );
ims := ListWithIdenticalEntries( len, 0 );
for i in [1..len] do
chi := DerivationByImages( X0, imd[i] );
xi := SectionByDerivation( chi );
ims[i] := UpGeneratorImages( xi );
od;
return MonoidOfUp2DimensionalMappingsObj( C0, ims, "all" );
end );
#############################################################################
##
#M RegularSections( C1G ) convert RegularDerivations to RegularSections
##
InstallMethod( RegularSections, "method for a cat1-group",
true, [ IsCat1Group ], 0,
function( C0 )
local X0, regd, imd, len, ims, i, chi, xi;
X0 := XModOfCat1Group( C0 );
regd := RegularDerivations( X0 );
imd := ImagesList( regd );
len := Length( imd );
ims := ListWithIdenticalEntries( len, 0 );
for i in [1..len] do
chi := DerivationByImages( X0, imd[i] );
xi := SectionByDerivation( chi );
ims[i] := UpGeneratorImages( xi );
od;
return MonoidOfUp2DimensionalMappingsObj( C0, ims, "regular" );
end );
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.14Bemerkung:
¤
*Bot Zugriff
|
|