Introduction
A quick guide

In order to construct the Majorana representation of a group G with respect to a set of involutions T, you must first call .

gap> G := AlternatingGroup(5);; gap> T := AsList( ConjugacyClass(G, (1,2)(3,4)));; gap> input := ShapesOfMajoranaRepresentation(G,T);;

This function outputs a record. One component of this record is labelled shapes and contains the possible shapes of a Majorana representation of the form (G,T,V).

gap> input.shapes; [ [ "1A", "2B", "5A", "3C", "5A" ], [ "1A", "2B", "5A", "3A", "5A" ], [ "1A", "2A", "5A", "3C", "5A" ], [ "1A", "2A", "5A", "3A", "5A" ] ]

To construct the Majorana representation with shape at position i of this list, call the function with input as its first argument and i as its second.

gap> rep := MajoranaRepresentation(input, 1);; gap> rep.shape; [ "1A", "2B", "5A", "3C", "5A" ]

There are then a number of functions (see ) that one case use on the (potentially incomplete) Majorana representation that this function has outputted.

gap> MAJORANA_IsComplete(rep); true gap> MAJORANA_Dimension(rep); 21

If an incomplete algebra is returned then the function can be used to attempt to find the 3-closed part of the algebra.

gap> G := AlternatingGroup(5);; gap> T := AsList( ConjugacyClass(G, (1,2)(3,4)));; gap> input := ShapesOfMajoranaRepresentation(G,T);; gap> input.shapes; [ [ "1A", "2B", "5A", "3C", "5A" ], [ "1A", "2B", "5A", "3A", "5A" ], [ "1A", "2A", "5A", "3C", "5A" ], [ "1A", "2A", "5A", "3A", "5A" ] ] gap> rep := MajoranaRepresentation(input, 2);; gap> MAJORANA_IsComplete(rep); false gap> NClosedMajoranaRepresentation(rep);; gap> MAJORANA_IsComplete(rep); true gap> MAJORANA_Dimension(rep); 46

Understanding the output

Note that all vectors and matrices are given in sparse matrix format, as provided by the GAP package Gauss. If mat is such a matrix then the integers in mat!.indices refer to a spanning set of the algebra indexed by the list rep.setup.coords. The list mat!.entries give their corresponding coefficients.

The function outputs a record that encodes the information required to perform calculations in the Majorana representation that has been calculated. The record contains the following components.

group The group G, as inputted by the user. involutions The set T, as inputted by the user. shape The shape of the representation, as chosen by the user in the input of . eigenvalues A list whose values give the eigenvalues of the adjoint action of the axes of the algebra. In this case, it must be equal to (or a subset of) [0, 1/4, 1/32]. Note that we omit the eigenvalue 1 as we assume the algebra to be primitive. axioms A string representing the axiomatic setting of the algebra's construction, potentially chosen by the user with the options record in the input of . setup Is itself a record, containing (among others) the following components. coords A list whose elements index a spanning set of the algebra. nullspace Again a record such that nullspace.vectors gives a basis of the nullspace of the algebra (as the elements rep.setup.coords are not necessarily linearly independent). orbitreps A list of indices giving the representatives of the orbits of the action of the group G on T. pairreps A list of pairs of indices giving representatives of the orbitals of the action of the group G on rep.setup.coords. algebraproducts A list where the vector at position i denotes the algebra product of the two spanning set vectors whose indices (in rep.setup.coords) are given by rep.setup.pairreps[i]. If the ith entry is set to false then this algebra product has not yet been found and the algebra is incomplete. innerproducts Performs the same role as algebraproducts except that, instead of vectors, the entries are rational numbers denoting the inner product between two spanning set vectors. evecs A list where if i is contained in rep.setup.orbitreps then rep.evecs[i] is bound to a record. This record has components "ev" where ev is an eigenvalue contained in rep.eigenvalues. This component gives a basis for the eigenspace of the axis corresponding to rep.involutions[i] with eigenvalue ev.

Info levels

The default info level of InfoMajorana is 0. No information is printed at this level. If the info level is at least 10 then Success is printed if the algorithm has produced a complete Majorana algebra, otherwise Fail is printed. If the info level is at least 20 then more information is printed about the progress of the algorithm, up to a maximum info level of 100.