10
$\begingroup$

GAP is computer algebra system which allows to make calculations with finite groups. (See wikipedia link for an example).

Is there web interface for it ? (I cannot google it.) Or may be some other computer algebra systems which allows to calculate with finite groups (i.e. obtain information on subgroups, conjugacy classes, irreducible representations etc...)

$\endgroup$
10
  • 9
    $\begingroup$ cocalc.com $\endgroup$
    – Dan Piponi
    Commented Jun 6, 2017 at 18:32
  • 2
    $\begingroup$ @DanPiponi Could you turn that into an answer? $\endgroup$ Commented Jun 6, 2017 at 18:42
  • $\begingroup$ Is there a particular reason you want a web interface, instead of installing it on your computer (its free). $\endgroup$
    – Max Horn
    Commented Jun 8, 2017 at 17:27
  • $\begingroup$ @MaxHorn 1) I tried to install but failed (some errors via installing) 2) on certain places where I work it is forbidden to isntall anything 3) Most time I use smartphone or tablet $\endgroup$ Commented Jun 9, 2017 at 7:01
  • $\begingroup$ We need to distinguish web-interface and browser-based interface (to local GAP installation). It seems that you need the former one, while some answers suggest the latter. For installation, please contact GAP Support and tell which errors did you get. Finally, if you're not allowed to run exe-installer, get win-zip archive from gap-system.org/Releases - it does not require admin rights. You will have to manually edit bat-files to point to the installation directory. $\endgroup$ Commented Jun 9, 2017 at 12:18

3 Answers 3

11
$\begingroup$

There is the Magma calculator which can be used to do calculations in finite groups.

One problem is that you have to type in all of your input before executing it, but with practice you can do quite complicated calculations.

For example, you can carry out the calculation from my answer to this question (which was actually about infinite groups). Typing in the following code

G<x,y,z>:=Group<x,y,z|x*y^-1*x^-1=z^2*y, x*z^-2=z^2*x, x*y*x^-1*y=z^2,
  y^2*x*z=z*x >;
K<a,b,c,d> := sub<G | x^2, z^2, x*z*y^-1, y^2>;
Index(G,K);
Rewrite(G,~K);
K;
Transversal(G,K);
PK, phi := ElementaryAbelianQuotient(K,2);
Order(PK);
K2 := Kernel(phi);
Index(K,K2);
T2 := Transversal(K,K2);
exists{k : k in T2 | (x*k)^2 in K2 };
exists{k : k in T2 | (y*k)^2 in K2 };
exists{k : k in T2 | (z*k)^2 in K2 };

results in the output:

4
Finitely presented group K on 4 generators
Index in group G is 4 = 2^2
Generators as words in group G
    a = x^2
    b = z^2
    c = x * z * y^-1
    d = y^2
Relations
    (c^-1, a) = Id(K)
    (a^-1, b) = Id(K)
    (a^-1, d^-1) = Id(K)
    (d^-1, b^-1) = Id(K)
    (b, c) = Id(K)
    d * c * b^-1 * d^-1 * c^-1 * b^-1 = Id(K)
    b^-1 * a * c^-1 * a^-1 * b * c = Id(K)
{@ Id(G), x, y, z @}
Mapping from: GrpFP: G to {@ Id(G), x, y, z @}
16
16
false
false
false
$\endgroup$
20
$\begingroup$

You can get at GAP through http://sagemath.org, which has a perfectly fine web notebook interface.

$\endgroup$
4
  • $\begingroup$ Can you run GAP directly through the notebook, or do you have to wrap everything in SAGE commands? I'd assumed the latter, so I've tended to use a GAP console via the cloud -- cocalc.com -- but I'd be interested to know if SAGE provided direct GAP access some other way... $\endgroup$
    – Nick Gill
    Commented Jun 7, 2017 at 8:42
  • 1
    $\begingroup$ @NickGill You can do both: either conjure a Gap console, or send text commands to Gap, or wrap them in Sage objects. Input to Gap through Sage works very well; output, on the other hand (i.e., use of the objects returned by Gap) is less felicitous in my experience, but YMMV. I haven't tried this in the Sage notebook (i.e., web) interface, so I can't really speak about this aspect. $\endgroup$
    – Gro-Tsen
    Commented Jun 7, 2017 at 12:43
  • $\begingroup$ @NickGill - isn't cocalc a SageMath cloud server? $\endgroup$ Commented Jun 7, 2017 at 14:05
  • $\begingroup$ @Gro-Tsen It works fine. One problem with "atlasrep" package. When I tried AtlasGroup function I obtain error: gap> g:=AtlasGroup("J1"); /projects/sage/sage-7.5/local/gap/latest/pkg/atlasrep/datagens/J1G1-p266B0.m1: Permission denied fail Do you have advice ? $\endgroup$
    – user21230
    Commented Jun 9, 2017 at 8:43
9
$\begingroup$

There exists a Jupyter kernel for GAP, see https://github.com/gap-packages/jupyter-kernel-gap

A simple way to get this actually running is through SageMath: if you have a recent beta(!) version of SageMath installed (or wait until 8.0 gets released), you can run sage -i gap_jupyter to install that kernel. At that point, you start Jupyter with sage -n jupyter and then create a New GAP notebook using the Jupyter menu.

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .