@@ -978,6 +978,32 @@ local gi,x,p;
978978end );
979979
980980
981+ # ############################################################################
982+ # #
983+ # M MakeConjugatorIsomorphismNC( <G>, <H>, <g> )
984+ # #
985+ # # Assumes H = G^g
986+ BindGlobal( " MakeConjugatorIsomorphismNC" ,
987+ function ( G, H, g )
988+ local fam, filter, hom;
989+
990+ if IsIdenticalObj( G, H ) then
991+ filter:= IsConjugatorAutomorphism;
992+ else
993+ filter:= IsConjugatorIsomorphism;
994+ fi ;
995+ fam:= ElementsFamily( FamilyObj( G ) );
996+ hom:= ObjectifyWithAttributes( rec (),
997+ NewType( GeneralMappingsFamily( fam, fam ),
998+ filter
999+ and IsSPGeneralMapping
1000+ and IsAttributeStoringRep ),
1001+ ConjugatorOfConjugatorIsomorphism, g,
1002+ Source, G,
1003+ Range, H );
1004+ return hom;
1005+ end );
1006+
9811007# ############################################################################
9821008# #
9831009# M ConjugatorIsomorphism( <G>, <g> )
@@ -987,18 +1013,9 @@ InstallMethod( ConjugatorIsomorphism,
9871013 IsCollsElms,
9881014 [ IsGroup, IsMultiplicativeElementWithInverse ] , 0 ,
9891015 function ( G, g )
990- local fam, hom;
991-
992- fam:= ElementsFamily( FamilyObj( G ) );
993- hom:= Objectify( NewType( GeneralMappingsFamily( fam, fam ),
994- IsConjugatorIsomorphism
995- and IsSPGeneralMapping
996- and IsAttributeStoringRep ),
997- rec () );
998- SetConjugatorOfConjugatorIsomorphism( hom, g );
999- SetSource( hom, G );
1000- SetRange( hom, ConjugateGroup( G, g ) );
1001- return hom;
1016+ local H;
1017+ H := ConjugateGroup( G, g );
1018+ return MakeConjugatorIsomorphismNC( G, H, g );
10021019 end );
10031020
10041021
@@ -1011,18 +1028,7 @@ InstallMethod( ConjugatorAutomorphismNC,
10111028 IsCollsElms,
10121029 [ IsGroup, IsMultiplicativeElementWithInverse ] , 0 ,
10131030 function ( G, g )
1014- local fam, hom;
1015-
1016- fam:= ElementsFamily( FamilyObj( G ) );
1017- hom:= Objectify( NewType( GeneralMappingsFamily( fam, fam ),
1018- IsConjugatorAutomorphism
1019- and IsSPGeneralMapping
1020- and IsAttributeStoringRep ),
1021- rec () );
1022- SetConjugatorOfConjugatorIsomorphism( hom, g );
1023- SetSource( hom, G );
1024- SetRange( hom, G );
1025- return hom;
1031+ return MakeConjugatorIsomorphismNC( G, G, g );
10261032 end );
10271033
10281034
0 commit comments