Loading GAP…
This page needs `SharedArrayBuffer`, which is only available when the page is served with the headers `Cross-Origin-Opener-Policy: same-origin` and `Cross-Origin-Embedder-Policy: require-corp`. The bundled service worker handles this on hosts where you can't set headers (e.g. GitHub Pages) — its first activation needs a reload, so if you see this message, try reloading once. For local hosting use `etc/emscripten/serve.py`.

## Files

Files you upload, or create from GAP (e.g. with `PrintTo` or `LogTo`), appear here.

↳ inserts `Read("file");` at the prompt (press Enter to run it); ⬇ downloads the file. New files show up when GAP next waits for input. Files live only in this session — download anything you want to keep.

## Examples

Inserts the command at the prompt; press Enter to run it.

What is this? · Licensing

GAP is a system for computational discrete algebra, with particular emphasis on computational group theory. This page is a self-contained WebAssembly build, served as a static site and run inside a Web Worker; you interact with it through an xterm-pty terminal.

To get started, try `1+1;`, `Factorial(20);`, or `SymmetricGroup(5);` — or use the examples menu. The full GAP manuals apply, with some caveats: some packages won't load (anything that needs a native compiler or system library), working memory is capped, performance is reduced compared to a native build, and a running computation cannot be interrupted — the Restart button is the only way out of a loop.

Files downloaded on first visit are cached in your browser's IndexedDB, so subsequent visits start much faster. Clear the site data to reset the cache. Files you create in a session are not kept across reloads or restarts beyond the panel's download cache.

GAP is free software, distributed under the GNU General Public License (version 2 or later). See the copyright notice for the full statement. The Ubuntu fonts are distributed under the Ubuntu Font Licence.