GAP (Groups, Algorithms, Programming)
GAP is a large and powerful programming
language for computations in abstract algebra and discrete mathematics. It
has been around since the 1980s, and continues to have regular releases
today.
Throughout the Group Explorer app, you will find buttons labeled “Compute
this in GAP.” Clicking such a button will reveal a box containing GAP code
that does the computation or visualization you’re looking at. This can be
useful for several purposes.
- If you want to move beyond Group Explorer to something more powerful,
GAP is an excellent next step. These small samples of GAP code
can serve as tiny tutorials, showing you how to do short comptuations
in GAP.
- If you aren’t sure what Group Explorer is reporting, and want to see
its results more specifically, the GAP output is sometimes a good
place to start. It may contain more technical details than Group
Explorer reports.
- If you want to take the results of a computation that Group Explorer
has done and manipulate them further, you can do so right on the web,
by revealing the GAP code, editing it to extend it as needed, and
then clicking “Run” to see the results.
- If you think there is a mistake in Group Explorer and want to report
a bug to us, start by checking whether Group Explorer agrees with
GAP. If it doesn’t, definitely
send us a bug report!
The technology we use to include runnable GAP code in Group Explorer is
the Sage Cell Server.
Sage is a large piece of software for
computational mathematics that tries to include as many mathematical tools
as it can, including GAP. The cell server makes all of Sage (including
GAP) available for live use on the web.
To go further with Sage or GAP, consider these options: