Download Computer Algebra System: GAP - Groups, Algorithms, Programming v4.4.12 For Windows
Publisher's Description:
GAP is a system for computational discrete algebra, with particular emphasis on Computational Group Theory. GAP provides a programming language, a library of thousands of functions implementing algebraic algorithms written in the GAP language as well as large data libraries of algebraic objects. See also the overview and the description of the mathematical capabilities. GAP is used in research and teaching for studying groups and their representations, rings, vector spaces, algebras, combinatorial structures, and more. The system, including source, is distributed freely. You can study and easily modify or extend it for your special use.
The current release is GAP 4.4.12. The pages of this web site describe this release if not stated otherwise. The webpage updates explains the history of changes. The older version GAP 3 is still available.
We Invite You to Cooperate
The GAP Group welcomes contacts with the GAP users and offers support for them. To keep up to date on GAP news (discussion of problems, release announcements, bug fixes), we suggest you subscribe to the email GAP Forum.
Please tell us about use of GAP in your research or teaching. We may well want to provide a link to your work. If your work is published then we ask you to cite GAP like a journal article or book.
We maintain a Bibliography of publications citing GAP. Please help us keeping it up to date.
We welcome contributions to GAP. We provide advice to write GAP code, inform you how to submit contributions to GAP, and keep a list of possible GAP projects.
GAP provides:
- Mathematical capabilities accessible through
- a large library of functions, containing implementations of various algebraic algorithms, part of which is divided into 'Modules' under the responsibility of 'maintainers',
- separate packages of additional functions for specialized purposes which can be used like library functions,
- data libraries containing large classes of various algebraic objects that are accessible by using GAP commands.
- A programming language, also called GAP, which is interpreted and can be compiled. It can be used interactively at the keyboard or to write programs to be saved and then executed. Such programs can easily be modified and rerun. The language features:
- Pascal-like control structures,
- automatic memory management including garbage collection,
- streams,
- flexible list and record data types,
- built-in data types for key algebraic objects,
- automatic method selection building on a mechanism for automatically choosing the highest ranked method for a certain operation, depending on the current state of all its arguments, so that GAP objects representing mathematical objects may gain knowledge about themselves during their lifetime resulting in better methods being chosen later on.
- An interactive environment that supports in particular
- line editing e.g. tab completion,
- break loops for debugging,
- further debugging and profiling facilities for GAP programs,
- o online help (i.e. online access to the manuals),
- a graphical user interface for GAP,
- further GAP interface programs provided by users.
- Documentation, in particular
- a Tutorial and further learning and teaching material, some of these in French, Japanese, Portuguese, and Russian,
- the Reference Manual giving complete descriptions of library functions with examples of use,
- separate manuals for the packages,
- worked out higher level examples and a collection of preprints and talks,
- advice for people writing GAP code,
- a mark-up language GAPDoc for writing GAP documentation,
- an archive of GAP Forum contributions,
- a Bibliography of papers quoting GAP.
Acknowledgements:
GAP has been and is developed by international cooperation of many people, including user contributions. We gratefully acknowledge all this help as well as some funding.
Visit Homepage for Moreinfo about GAP
Download Location:
Computer Algebra System: GAP v4.4.12