What is the best way to self-study GAP?

Background: This year I'll do another Group Theory course ( Open University M336 ). In the past I have used Mathematica's AbstractAlgebra package but (although visually appealing ) this is no longer sufficient (i.e. listing subgroups of $S_4$ takes ages). So, I want to learn more about GAP. I worked through beginner tutorials that I found via the GAP website. Currently, I am not making much progress with GAP. The reference manual does not help me much at this stage.

Question: What is the best way to self-study GAP? How does one become proficient in GAP? What ( books, tutorials ) should you study?

-
Not a real answer, but why won't you try Sage? It wraps GAP and many other things and uses the easy-to-learn Python language (and has books) – Gadi A Jan 31 '12 at 10:22
Is there a difference between the stand-alone GAP and the Sage-wrapped version? I would still have to learn how to formulate Group Theory in GAP. Creating semi-direct products for example. – ndroock1 Jan 31 '12 at 10:33
You'll need to formulate Group theory in Sage, not in GAP; however, it can be argued that Sage is easier to learn than GAP, and that it is more productive to familiarize yourself with an algebra system that can assist you also in things GAP cannot. – Gadi A Jan 31 '12 at 12:29
I would say just play around with it! That's the best way to learn the basics. There are lots of online books available (as well as the gap website, which contains a comprehensive reference as well as tutorials). Here is a very nice PDF I use from time to time: math.colostate.edu/~hulpke/CGT/howtogap.pdf – user641 Jan 31 '12 at 13:07
@SteveD - I have been playing around with it for quite some time. But there is a point where you make no or little progress in this way. - The PDF looks nice, I will go through it. Thank you. – ndroock1 Jan 31 '12 at 13:25

The Learning GAP section of the GAP website contains "a variety of material intended to help people to learn on their own the GAP language and the use of the GAP system".

Various tutorials, including the GAP Tutorial, are a good point to start, indeed. As for the reference manual, it is not assumed that one should read all its chapters sequentially. To start with, it may be worth to look at chapter titles to have a better idea of capabilities of the core GAP system, and look in more details on chapters which are most relevant to your current mathematical interests. Note that a lot of the functionality is contained in GAP packages which are developed independently and come with their own documentation.

It is also recommended to subscribe to the GAP Forum where you may find not only news about the GAP system, but also discussions and questions from other users. Reading these may provide further insight into the system. Finally, if there are any questions, please do not hesitate to send them to the GAP Forum or GAP Support.

Update 1: I’ve recently developed the Software Carpentry lesson "Programming with GAP". This lesson is intended for GAP beginners and has been beta-tested at the Software Carpentry Workshop in Manchester in November 2015.

Update 2: This book has been mentioned in the comment above, but should be made more visible: Abstract Algebra in GAP by Alexander Hulpke. From its preface: "This book aims to give an introduction to using GAP with material appropriate for an undergraduate abstract algebra course. It does not even attempt to give an introduction to abstract algebra —there are many excellent books which do this. Instead it is aimed at the instructor of an introductory algebra course, who wants to incorporate the use of GAP into this course as an calculatory aid to exploration".

-
This is one of the best suggestion, one can give us. Thanks Alexander for your neat code. +1 – S. Snape Apr 22 '13 at 14:08

A book called "Computer Algebra Handbook" by Grabmeier, Kaltofen and Weispfenning (eds.) (2003) includes some advanced topics in group theory and examples of code that you can use with GAP.

In particular, this book has chapters:

• "Computational Group Theory" by Charles Sims
• "Algorithms of Representation Theory" by Gerhard Hiss
• "Computer Algebra in Group Theory" by Gerhard Hiss

and also a 6 pages long section on GAP by Thomas Breuer and Alexander Hulpke, referring to GAP 4.2 (March 2000) which was the current version at the time of writing. I did not find any examples of the GAP code in the book, but I have no accompanying CD which might contain some. Anyhow, for code examples I'd suggest to use more modern sources.

Another interesting book is "Handbook of Computational Group Theory" by Derek F. Holt, Bettina Eick and Eamonn A. O'Brien.

-
I have this book from the library but without CD. If anyone has CD and could tell more details about GAP code there, that would be interesting. – Alexander Konovalov Dec 9 '15 at 9:52