GAP (XMod) - Chapter 10: Development history

Goto Chapter: Top 1 2 3 4 5 6 7 8 9 10 Bib Ind
[Top of Book] [Contents] [Previous Chapter] [Next Chapter]

10 Development history
10.1 Changes from version to version
10.1-1 Version 1 for GAP 3
10.1-2 Version 2
10.1-3 Version 2.001 for GAP 4
10.1-4 Induced crossed modules
10.1-5 Versions 2.002 -- 2.006
10.1-6 Versions 2.007 -- 2.010
10.2 Versions for GAP 4.5, 4.6 and 4.7
10.2-1 AllCat1s
10.2-2 Version 2.41
10.3 What needs doing next?

### 10 Development history

This chapter, which contains details of the major changes to the package as it develops, was first created in April 2002. Details of the changes from XMod 1 to XMod 2.001 are far from complete. Starting with version 2.009 the file `CHANGES` lists the minor changes as well as the more fundamental ones.

The inspiration for this package was the need, in the mid-1990's, to calculate induced crossed modules (see [BW95], [BW96], [BW03]). GAP was chosen over other computational group theory systems because the code was freely available, and it was possible to modify the Tietze transformation code so as to record the images of the original generators of a presentation as words in the simplified presentation. (These modifications are now a standard part of the Tietze transformation package in GAP.)

#### 10.1 Changes from version to version

##### 10.1-1 Version 1 for GAP 3

The first version of XMod became an accepted package for GAP 3.4.3 in December 1996.

##### 10.1-2 Version 2

Conversion of XMod 1 from GAP 3.4.3 to the new GAP syntax began soon after GAP 4 was released, and had a lengthy gestation. The new GAP syntax encouraged a re-naming of many of the function names. An early decision was to introduce generic categories `2dDomain` for (pre-)crossed modules and (pre-)cat1-groups, and `2dMapping` for the various types of morphism. In 2.009 `3dDomain` was used for crossed squares and cat2-groups, and `3dMapping` for their morphisms. A generic name for derivations and sections is also required, and `Up2dMapping` is currently used.

##### 10.1-3 Version 2.001 for GAP 4

This was the first version of XMod for GAP 4, completed in April 2002 in a rush to catch the release of GAP 4.3. Functions for actors and induced crossed modules were not included, nor many of the functions for derivations and sections, for example `InnerDerivation`.

##### 10.1-4 Induced crossed modules

During the period May 20th - May 27th 2002 converted `induce.g` to `induce.gd` and `induce.gi` (later renamed `gp2ind.gd`, `gp2ind.gi`), at least as regards induced crossed modules. (Induced cat1-groups may be convereted one day.) For details, see the file `CHANGES`.

##### 10.1-5 Versions 2.002 -- 2.006

Version 2.002 was prepared for the 4.4 release at the end of January 2004.

Version 2.003 of February 28th 2004 just fixed some file protections.

Version 2.004 of April 14th 2004 added the `Cat1Select` functionality of version 1 to the `Cat1` function (see also version 2.007).

Version 2.005 of April 16th 2004 moved the example files from `tst/test_i.g` to `examples/example_i.g`, and converted `testmanual.g` to a proper test file `tst/xmod_manual.tst`.

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`.

##### 10.1-6 Versions 2.007 -- 2.010

These versions contain changes made between September 2004 and October 2007.

- 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 of crossed squares. (Cat2-groups are not yet implemented.)

- Converted the documentation to the format of the GAPDoc package.

- 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.

- Version 2.010, of October 2007, was timed to coincide with the release of GAP 4.4.10, and included a change of filenames; correct file protection codes; and an improvement to `AutomorphismPermGroup` for crossed modules.

#### 10.2 Versions for GAP 4.5, 4.6 and 4.7

Version 2.19, released on 9th June 2012, included the following changes:

- The file `makedocrel.g` was copied, with appropriate changes, from GAPDoc, and now provides the correct way to update the documentation.

- The first functions for crossed modules of groupoids were introduced.

- The package webpage has moved along with the whole of the Bangor Maths website: http://www.maths.bangor.ac.uk/chda/.

- A GNU General Public License declaration has been added.

##### 10.2-1 AllCat1s

Version 2.21 contained major changes to the `Cat1Select` operation: the list `CAT1_LIST` of cat1-structures in the data file `cat1data.g` was changed from permutation groups to pc-groups, with the generators of subgroups; images of the tail map; and images of the head map being given as `ExtRepOfObj` of words in the generators.

The `AllCat1s` function was reintroduced from the GAP3 version, and renamed as the operation `AllCat1sBasic`.

In version 2.25 the data in `cat1data.g` was extended from groups of size up to 48 to groups of size up to 70. In particular, the 267 groups of size 64 give rise to a total of 1275 cat1-groups. The authors are indebted to Van Luyen Le in Galway for pointing out a number of errors in the version of this list distributed with version 2.24 of this package.

##### 10.2-2 Version 2.41

This latest version was released on 5th June 2015, following a change in the package website location. A `Bitbucket` repository for the package was also created.

#### 10.3 What needs doing next?

- Speed up the calculation of Whitehead groups.

- Add more functions for `3dObjects` and implement `cat2-groups`.

- Improve interaction with the package Gpd implementing the group groupoid version of a crossed module, and adding more functions for crossed modules of groupoids.

- Add interaction with IdRel (and possibly XRes and natp) .

- Need `InverseGeneralMapping` for morphisms and more features for `FpXMods`, `PcXMods`, etc.

- Implement actions of a crossed module.

- Implement `FreeXMods` and an operation `Isomorphism2dDomains`.

- Allow the construction of a group of morphisms of crossed modules.

- Complete the conversion from Version 1 of the calculation of sections using `EndoClasses`.

- More crossed square constructions:

  - If M, N are ordinary P-modules and A is an arbitrary abelian group on which P acts trivially, then there is a crossed square with sides

    0 : A \to N,\quad 0 : A \to M,\quad 0 : M \to P,\quad 0 : N \to P.

  - For a group L, the automorphism crossed module Act L = (ι : L -> Aut L) splits to form the square with (ι_1 : L -> Inn L) on two sides, and (ι_2 : Inn L -> Aut L) on the other two sides, where ι_1 maps l ∈ L to the inner automorphism β_l : L -> L, l^' ↦ l^-1l^'l, and $\iota_2$ is the inclusion of Inn L in Aut L. The actions are standard, and the crossed pairing is

    \boxtimes \;:\; {\rm Inn}\ L \times {\rm Inn}\ L \to L, \quad (\beta_l, \beta_{l^{\prime}}) \;\mapsto\; [l, l^{\prime}]~.

[Top of Book] [Contents] [Previous Chapter] [Next Chapter]
Goto Chapter: Top 1 2 3 4 5 6 7 8 9 10 Bib Ind

generated by GAPDoc2HTML