# Mclaughlin Graph

how can i construct a strongly regular graph with parameter $(275,112,30,56)$(Mclaughlin Graph), (105,32,4,12)?

I need adjacency matrix of them?

I know they are unique.

-
By the way, while it's well known that McLaughlin graph is characterized by its parameters, I'm much less sure about the second graph in question. – Dima Pasechnik Jul 13 '12 at 16:48
@DimaPasechnik, the uniqueness of the second graph was proved by Kris Coolsaet: projecteuclid.org/euclid.bbms/1136902608 – Anurag Feb 5 '15 at 15:09

You can construct the McLaughlin graph using GAP.

gap> LoadPackage("AtlasRep");;
gap> mcl:=Group(AtlasGenerators("McL",1).generators);;
gap> Gr:=NullGraph(mcl);;
gap> VertexDegrees(Gr);
[ 112 ]


OK, so that's the 1st graph. For the 2nd graph, one has to take various subgraphs and complements of the 1st one:

gap> GrC:=ComplementGraph(Gr);;
gap> VertexDegrees(GrC1);
[ 105 ]
gap> VertexDegrees(GrC12);
[ 72 ]
gap> G2:=ComplementGraph(GrC12);;
gap> VertexDegrees(GrC12);
[ 72 ]
gap> VertexDegrees(G2);
[ 32 ]
gap> GlobalParameters(G2); #indeed, that's the graph you asked for:
[ [ 0, 0, 32 ], [ 1, 4, 27 ], [ 12, 20, 0 ] ]


Printing the adjacency matrices of graphs in GAP is easy too, using IsEdge function. (But do you really need it? You can work with these graphs directly in GAP, without much extra trouble.)

-
When I try to run the first example in gap it stops with this error in the first line - Variable: 'AtlasGenerators' must have a value. Do you happen to see why? – Jernej Feb 9 '13 at 13:51
You most probably don't have AtlasRep installed. Try gap> LoadPackage("AtlasRep"); (i.e. one ';', not two - which suppresses output). I guess it will return 'fail'. – Dima Pasechnik Feb 10 '13 at 7:43

There's a picture of the McLaughlin graph on Wikipedia at http://en.wikipedia.org/wiki/Local_McLaughlin_graph. It is useless as shown; but if you click on it then do "View Source" or "Save Image", you get to see its SVG source code, which you can convert to an adjacency matrix.

-

Here is some code for generating these graphs in SAGE

gap('LoadPackage("design")')
McL = graphs.McLaughlinGraph()

D = designs.projective_plane(4)
flags = [(x,B) for x in D.points() for B in D.blocks() if x in B]

return f[0] != g[0] and f[1] != g[1] and (f[0] in g[1] or g[0] in f[1])

T = Graph([(i,j) for i in range(105) for j in range(i+1,105) if adj(flags[i], flags[j])])
print T.is_strongly_regular(parameters=true)


The graph library in SAGE is pretty good, with a lot of good algorithms already implemented. You should check it out: http://www.sagemath.org/doc/reference/graphs/sage/graphs/graph.html

-