The first version, GraphGpd 1.001, formed part of Emma Moore's thesis [Moo01] in December 2000, but was not made generally available.
Version 1.002 of GraphGpd was prepared to run under GAP 4.4 in January 2004; was submitted to the GAP council to be considered as an accepted package; but suggestions from the referee were not followed up.
In April 2006 the manual was converted to GAPDoc format. Variables Star
, Costar
and CoveringGroup
were found to conflict with usage in other packages, and were renamed VertexStar
, VertexCostar
and CoveringGroupOfGroupoid
respectively. Similarly, the Vertices
and Arcs
of an FpWeightedDigraph
were changed from attributes to record components.
In the spring of 2006 the package was extensively rewritten and renamed Gpd. Version 1.01 was submitted as a deposited package in June 2006. Version 1.03, of October 2007, fixed some file protections, and introduced the test file gpd_manual.tst
.
Version 1.05, of November 2008, was released because the website at Bangor changed.
A further extensive rewrite is in progress, introducing magmas with objects and their mappings, but many of the functions fail to work at present, and this manual is far from correct.
Computationally, there are three types of connected groupoid:
those with identical object groups,
those with object groups conjugate in some supergroup,
those with object groups which are simply isomorphic.
GraphGpd attempted to implement the second case, while Gpd 1.01 and 1.03 considered only the first case, and Gpd 1.05 extended 1.03 to the second case. Here are some other immediate requirements:
Automorphism group of a groupoid.
normal subgroupoids and quotient groupoids;
more methods for morphisms of groupoids, particularly when the range is not connected;
ImageElm
and ImagesSource
for the cases of groupoid morphisms not yet covered;
Enumerator
for IsHomsetCosetsRep
;
free groupoid on a graph;
methods for FreeProductWithAmalgamation
and HnnEntension
for pc-groups;
convert GraphOfGroupsRewritingSystem
to the category IsRewritingSystem
;
in XMod, implement crossed modules over groupoids.
generated by GAPDoc2HTML