#############################################################################
##
#W  autos.gd                 AutPGrp package                     Bettina Eick
##
#H  @(#)$Id: autos.gd,v 1.4 2003/08/18 12:10:28 gap Exp $
##
Revision.("autpgrp/gap/autos_gd") :=
    "@(#)$Id: autos.gd,v 1.4 2003/08/18 12:10:28 gap Exp $";

#############################################################################
##
#C Choose functionality 
##
if not IsBound( InitAutGroup ) then InitAutGroup := false; fi;
if not IsBound( CHOP_MULT ) then CHOP_MULT := true; fi;
if not IsBound( NICE_STAB ) then NICE_STAB := true; fi;
if not IsBound( REDU_OPER ) then REDU_OPER := false; fi;
if not IsBound( USE_LABEL ) then USE_LABEL := false; fi;
if not IsBound( CHECK ) then CHECK := false; fi;

#############################################################################
##
#D Declarations for PGAutomorphisms
##
DeclareRepresentation( "IsPGAutomorphismRep",
                       IsGroupGeneralMappingByImages,
                       ["base", "baseimgs", "pcgs", "pcgsimgs"] );

IsPGAutomorphism := IsMapping and IsPGAutomorphismRep;
DeclareOperation( "PGAutomorphism", [ IsPGroup, IsList, IsList ] );


DeclareGlobalFunction( "AutomorphismGroupPGroup" );
DeclareGlobalFunction( "ConvertHybridAutGroup" );
DeclareGlobalFunction( "PGOrbitStabilizer" );
DeclareGlobalFunction( "IdentityPGAutomorphism" );

DeclareOperation( "PGMult", [IsMapping, IsMapping] );
DeclareOperation( "PGInverse",[IsMapping] );
DeclareOperation( "PGPower",[IsInt, IsMapping] );
DeclareOperation( "PGMultList", [IsList] );

#############################################################################
##
#V A version problem
##
if not CompareVersionNumbers( VERSION, "4.4") then 
    DeclareProperty("IsGroupOfAutomorphismsFiniteGroup", IsGroup);
fi;

