                       CHANGES to the XMod package

#############################################################################
2.11 -> 2.12 (24/11/2008)

 -  (19/11/08) GapDoc relegated to "suggested other packages". 

#############################################################################
2.008 -> 2.11 (13/11/2008)

 -  (13/11/08) added GNU General Public License declaration,
               moved some XMod utilities to gpd/gap/util.gd(gi), 
 -  (07/11/08) Changed website to: www.maths.bangor.ac.uk/chda/xmod/ 
               Split the test file into one file per chapter. 
 -  (30/04/08) Added GroupHomomorphismByImagesTriv to util.gd, util.gi 
               to allow both <gens> and <imgs> to be empty: triv -> triv! 
               Fixed bug in XModOfCat1 in assigning names. 
               FixedBug in Boundary for a pre-cat1-group. 
 -  (31/03/08) Added function GpdBuildManualHTML()
 -  (16/03/08) renamed Tail,Head as TailMap,HeadMap (for benefit of Gpd)
 -  (08.10/07) started this CHANGES file 
 -               changed directory permissions from 711 to 755
 -               renamed files:  obj2 -> gp2obj, etc, ready for groupoids 
 -               added file  testall.g  in xmod/tst 

#############################################################################
2.007 -> 2.008 (25/10/2006)

 - Fixed broken links in PackageInfo.g.

#############################################################################
2.006 -> 2.007 (20/10/2006)

 - Added basic functions for crossed squares, considered as 3dObjects  
   with crossed pairings, and their morphisms. 
   (Groups with two normal subgroups, and the actor of a crossed module, 
    provide standard examples. Cat2-groups are not yet implemented.) 
 - Converted the documentation to the format of the GAPDoc package, 
   and added the function XModBuildManual() to the util.gi file.
 - Improved AutomorphismPermGroup for crossed modules, and introduced 
   a special method for conjugation crossed modules.
 - Substantial revisons made to XModByCentralExtension, NorrieXMod, 
   LueXMod, ActorXMod, and InclusionInducedXModByCopower. 
 - Reintroduced the Cat1Select operation.

#############################################################################
2.005 -> 2.006 (04/09/2004)

 - Changed morphism functions to return fail when invalid data is supplied, 
   rather than calling Error.  
 - Fixed a bug in XModByGroupOfAutomorphisms. 

#############################################################################
2.004 -> 2.005 (16/04/2004)

 - Moved the example files from tst/test_i.g to examples/example_i.g,
 - converted testmanual.g to a proper test file tst/xmod_manual.tst. 
 - Replaced OperationHomomorphism by ActionHomomorphism, 
   a general GAP;4.4 change.
 - Finished replacing RModule by AbelianModule. 
 - Renamed UpMapping as Up2dMapping. 
 - Added MappingGeneratorsImages and InverseGeneralMapping  
   for a 2dMapping.
 - A significant change was the conversion of the actor crossed module 
   functions from the 3.4.4 version, including AutomorphismPermGroup 
   for a crossed module, WhiteheadXMod, NorrieXMod, LueXMod, ActorXMod, 
   Centre of a crossed module, InnerMorphism and InnerActorXMod. 
 - Added SmallerDegreePermPreXMod after discovering, in the library, 
   the very useful SmallerDegreePermutationRepresentation.

#############################################################################
2.003 -> 2.004 (14/04/2004)

 - gave a new email address for Murat Alp
 - added the Cat1Select functionality of version 1 to the Cat1 function

#############################################################################
2.002 -> 2.003 (28/02/2004)

#############################################################################
2.001 -> 2.002 (January 2004)

Version 2.002 was prepared for the 4.4 release at the end of January 2004,
and so required a PackageInfo.g file.

#############################################################################
Induced Crossed Modules (May 2002)

Converted combinatorial functions -- DistinctRepresentatives, 
CommonRepresentatives, CommonTransversal and IsCommonTransversal.

Converted Tietze modification functions
TzCommutatorPair, TzPartition and FactorsPresentation.

Introduced global functions
IsomorphismPermObject, IsomorphismFpObject, and IsomorphismPcObject
which call IsomorphismPermGroup etc. when the object is a group.
Added functions IsomorphismPermPreXMod, IsomorphismPermPreCat1, 
etc. to be called when the object is a 2d-object.

Added IsomorphismXModByNormalSubgroup which applies when the boundary
of the xmod is injective.

Added PreXModIsomorphismByIsomorphisms
(we also need a similar function PreCat1IsomorphismByIsomorphisms)
where the data consists of a crossed module, an isomorphism of the source,
and an isomorphism of the range.

Changed RModule to AbelianModule.

#############################################################################
Version 2.001 for GAP 4 (April 2002)

Generic name UpMapping chosen for derivations and sections 
(later changed to Up2dMapping).

File names changed to obj2.gd, map2.gi, up2.tex, etc.

Added alternative methods for IsomorphismPermGroup for 2dObjects. 

Sorted a problem with fixing the generating set for R when used to 
define derivations.  The (old) code used an fp-group version of R 
and checks that all the relators map by chi to 1.
Unfortunately, IsomorphismFpGroup sometimes permutes the order
of the R-generators, with unfortunate effects.  
The fix used IsomorphismFpGroupByGenerators, which returns the 
images of the generators specified in the function call.  
We have also used 
genR := StrongGeneratorsStabChain( StabChain( rng ) ); 
throughout to specify the generators of R.

Operation XModMorphism renamed as XModMorphismByHoms, and a new 
global function XModMorphism introduced (ditto for other 2dMappings).

Now using \chi_1 \star \chi_2 for Whitehead multiplication (on the right), 
with CompositeDerivation still giving multiplication on the left.  
This means that the second axiom for derivations and for sections has changed 
-- see Chapter 4.
