Nauru Graph

Author

Eric W. Weisstein
July 29, 2026

This notebook downloaded from https://mathworld.wolfram.com/notebooks/GraphTheory/NauruGraph.nb.

For more information, see Eric's MathWorld entry https://mathworld.wolfram.com/NauruGraph.html.

©2026 Wolfram Research, Inc. except for portions noted otherwise

Figures

All

GraphicsGrid[
Partition[
Pick[GraphData["NauruGraph","Graph","All"],FreeQ[#,"Degenerate"]&/@GraphData["NauruGraph","EmbeddingClasses"]]//StyleGraphs[#,VertexSize->{"Scaled",.035}]&,
UpTo[6]],
Dividers->All,ImageSize->700]

UnitDistance

GraphicsGrid[
Partition[
GraphData["NauruGraph","Graph","UnitDistance"]//StyleGraphs[#,VertexSize->{"Scaled",.035}]&,
UpTo[4]],
Dividers->All,ImageSize->700]

Configuration

GraphData["NauruGraph","Incidence"]

lines=GraphData["NauruGraph","Configurations"]

Subscript@@Reverse@Flatten@Tally[Length/@lines[[1]]]

RecognizeGraph[LeviGraph[#]]&/@lines

GraphData["NauruConfigurationGraph","StandardName"]

configg=GraphData["NauruConfigurationGraph","Graph",{"Configuration","Labeled"}][[1]]

Sort@ConfigurationLinesFromGraph[configg]

points=GraphEmbedding[configg]

lines2=ResourceFunction["FindExtraordinaryLines"][points]

ConfigurationGraph[points,lines2,VertexLabels->Automatic]

RecognizeGraph@%

ConfigurationDiagram[points,lines2,.2,Boxed->False,VertexLabels->None]

Embeddings

<<MathWorld`Graphs`

Names

GraphData["NauruGraph","StandardName"]

GraphData["NauruGraph","StandardNames"]

HouseOfGraphs

hogid=GraphData["NauruGraph","NotationRules","HouseOfGraphs"]

HouseOfGraphsLookup[hogid]

HouseOfGraphsGraph[hogid]//StyleGraphs[#,ImageSize->Small]&

Wikidata

GraphData["NauruGraph","WikidataID"]

GraphData["NauruGraph","WikidataID","URL"]

Primary

GraphData["NauruGraph"]//StyleGraphs[#,ImageSize->Small]&

Read and Wilson construction

All

GraphData["NauruGraph","Graph","All"]//StyleGraphs

CurvedEdge

GraphData["NauruGraph","Graph","CurvedEdge"]//StyleGraphs

Inexact

Select[GraphData["NauruGraph","Graph","All"],(!FreeQ[GraphEmbedding[#],_?InexactNumberQ]&)]//StyleGraphs

Embedding types

GraphDataEmbeddings[GraphData["NauruGraph","EdgeList"]]

House of Graphs

https://houseofgraphs.org/graphs/1234

v=Join[CirclePoints[20],Tuples[{-1,1},2]/3];
g=Graph[Range@Length@v,UndirectedEdge@@@{e[{1,10}],e[{11,20}],e[18,21,22,13],e[3,23,24,8],e[17,1,6],e[15,20,4],e[16,11,7],e[5,10,14],{19,24},e[2,22],{21,9},{23,12}},VertexCoordinates->v,VertexLabels->Automatic]

RecognizeGraph@g

v=Join[CirclePoints[18],CirclePoints[1/6,6]];
g=Graph[Range@Length@v,UndirectedEdge@@@{e[{1,18},1],e[{19,24},19],{1,12},{2,19},{11,22},{3,10},{16,9},{18,7},{17,24},{21,8},{15,4},{14,23},{20,5},{13,6}},VertexCoordinates->v,VertexLabels->Automatic]

RecognizeGraph@g

v=Join[CirclePoints[18],CirclePoints[a,6]];

p=RegionIntersection[Line@v[[{16,9}]],Line@v[[{10,3}]]][[1,1]]//FullSimplify

dist=FullSimplify[RegionDistance[Line@v[[{21,22}]],p]^2,a>0]

FullSimplify@Solve[dist==0,a,PositiveReals]//Union

v=Join[CirclePoints[18],CirclePoints[,6]];
g=Graph[Range@Length@v,UndirectedEdge@@@{e[{1,18},1],e[{19,24},19],{1,12},{2,19},{11,22},{3,10},{16,9},{18,7},{17,24},{21,8},{15,4},{14,23},{20,5},{13,6}},VertexCoordinates->v,VertexLabels->Automatic]

gs=UnlabelGraph/@{,,}

Default embedding

GraphPlot@GraphData["NauruGraph","Edges"]

v={};
g=Graph[Range[Length[v]],UndirectedEdge@@@{},VertexCoordinates->v,VertexLabels->Automatic]

RecognizeGraph[g]

Degenerate

GraphData["NauruGraph","Graph","Degenerate"]//StyleGraphs

Incidence

GraphData["NauruGraph","Incidence"]

Select[GraphData[All],GraphData[#,"LeviGraph","Name"]==="NauruGraph"&]

lines=GraphData["NauruGraph","IncidenceLines"]

levi=LeviGraph[lines]

RecognizeGraph@levi

Almost HexagonalGrid

g=GraphData["NauruGraph","Graph","All"][[8]]//StyleGraphs

Bilateral

GraphData["NauruGraph","Graph","Bilateral"]//StyleGraphs

Grid[DeleteCases[Monitor[{g=#,BilateralGraphEmbeddingTypes[#],GraphSymmetryGroup[#]}&/@GraphData["NauruGraph","Graph","All"],g],{_,_,TransformationGroup[{}]}],Dividers->All,Alignment->{{Center,{Left}}}]//Quiet

Circular

GraphData["NauruGraph","Graph","Circular"]//StyleGraphs

Circular construction All

GraphData["NauruGraph","Hamiltonian"]

GraphData["NauruGraph","LCF"]

GraphData["NauruGraph","HamiltonianCycleCount"]

GraphData["NauruGraph","HamiltonianCycles"]

GeneralizedPetersen

GraphData["NauruGraph","NotationRules","GeneralizedPetersen"]

GraphData["NauruGraph","Graph","GeneralizedPetersen"]//StyleGraphs

IGraph

Cases[GraphData["NauruGraph","StandardNames"],{"IGraph",_}]

GraphData["NauruGraph","Graph","IGraph"]//StyleGraphs

CompleteKPartite

GraphData["NauruGraph","Graph","CompleteKPartite"]//StyleGraphs

Bipartite

GraphData["NauruGraph","Bipartite"]

GraphData["NauruGraph","Graph","Bipartite"]//StyleGraphs

Bipartite construction

GraphData["NauruGraph","Bipartite"]

g=BipartiteGraph[GraphData["NauruGraph"]]

RecognizeGraph@g

IntegerCoordinates

GraphData["NauruGraph","Graph","IntegerCoordinates"]//StyleGraphs

xyz

GraphData["NauruGraph","Graph","XYZ"]//StyleGraphs

Integral

GraphData["NauruGraph","Graph","Integral"]//StyleGraphs

Planar

GraphData["NauruGraph","Planar"]

GraphData["NauruGraph","Graph","Planar"]//StyleGraphs

MinimalCrossingNumber crossings.uos.de [verified 8]

CrossingNumber[GraphData["NauruGraph"],Method->"WebCompute"]//AbsoluteTiming

DateString[]

MinimalCrossingNumber: "EmbeddingScheme" -> 1

(cn=CrossingNumber[GraphData["NauruGraph"],"EmbeddingScheme"->1,TimeConstraint->1])//AbsoluteTiming

(cn=CrossingNumber[GraphData["NauruGraph"],"EmbeddingScheme"->1,TimeConstraint->10])//AbsoluteTiming

(cn=CrossingNumber[GraphData["NauruGraph"],"EmbeddingScheme"->1,TimeConstraint->60])//AbsoluteTiming

(cn=CrossingNumber[GraphData["NauruGraph"],"EmbeddingScheme"->1,TimeConstraint->3600])//AbsoluteTiming

(cn=CrossingNumber[GraphData["NauruGraph"],"EmbeddingScheme"->1,TimeConstraint->5 3600])//AbsoluteTiming

(cn=CrossingNumber[GraphData["NauruGraph"],"EmbeddingScheme"->1,TimeConstraint->86400])//AbsoluteTiming

MinimalCrossingNumber: "EmbeddingScheme" -> 2

(cn=CrossingNumber[GraphData["NauruGraph"],"EmbeddingScheme"->2,TimeConstraint->1])//AbsoluteTiming

(cn=CrossingNumber[GraphData["NauruGraph"],"EmbeddingScheme"->2,TimeConstraint->10])//AbsoluteTiming

(cn=CrossingNumber[GraphData["NauruGraph"],"EmbeddingScheme"->2,TimeConstraint->60])//AbsoluteTiming

(cn=CrossingNumber[GraphData["NauruGraph"],"EmbeddingScheme"->2,TimeConstraint->3600])//AbsoluteTiming

(cn=CrossingNumber[GraphData["NauruGraph"],"EmbeddingScheme"->2,TimeConstraint->5 3600])//AbsoluteTiming

(cn=CrossingNumber[GraphData["NauruGraph"],"EmbeddingScheme"->2,TimeConstraint->86400])//AbsoluteTiming

MinimalCrossingNumber: "EmbeddingScheme" -> 3

(cn=CrossingNumber[GraphData["NauruGraph"],"EmbeddingScheme"->3,TimeConstraint->1])//AbsoluteTiming

(cn=CrossingNumber[GraphData["NauruGraph"],"EmbeddingScheme"->3,TimeConstraint->10])//AbsoluteTiming

(cn=CrossingNumber[GraphData["NauruGraph"],"EmbeddingScheme"->3,TimeConstraint->60])//AbsoluteTiming

(cn=CrossingNumber[GraphData["NauruGraph"],"EmbeddingScheme"->3,TimeConstraint->3600])//AbsoluteTiming

(cn=CrossingNumber[GraphData["NauruGraph"],"EmbeddingScheme"->3,TimeConstraint->5 3600])//AbsoluteTiming

(cn=CrossingNumber[GraphData["NauruGraph"],"EmbeddingScheme"->3,TimeConstraint->86400])//AbsoluteTiming

MinimalCrossing

GraphData["NauruGraph","CN"]

(gs=GraphData["NauruGraph","Graph","MinimalCrossing"])//StyleGraphs

GraphCrossingCount/@gs

GraphCrossingDiagram/@gs

MinimalRectilinearCrossing

GraphData["NauruGraph","RCN"]

GraphData["NauruGraph","Graph","MinimalRectilinearCrossing"]//StyleGraphs

MinimalCrossing construction Tutte

(cn=CrossingNumber[GraphData["NauruGraph"],TimeConstraint->1])//AbsoluteTiming

(cn=CrossingNumber[GraphData["NauruGraph"],TimeConstraint->10])//AbsoluteTiming

(g=MinimalCrossingGraph[GraphData["NauruGraph"],"CrossingNumber"->cn])//PolyhedralGraphQ

faces=ReverseSort@SymmetricallyDistinctFaces[g]

Tally[ReverseSort[Length/@faces]]

IGLayoutTutte[g,"OuterFace"->#]&/@faces

MinimalCrossing construction Random 1k

Union[Select[Table[RotateGraph[MinimalCrossingGraph[GraphData["NauruGraph"],"CrossingNumber"->cn,RandomSeed->n]],{n,500}],Max[OuterFace[#]]<=GraphData["NauruGraph","V"]&]]//Timing

Table[MinimalCrossingGraph[GraphData["NauruGraph"],"CrossingNumber"->cn,RandomSeed->i],{i,50}]//Union

GraphPlot@RotateGraph[,Pi/6]

RegionIntersection[Line[v[[{20,23}]]],InfiniteLine[v[[{13,14}]]]]

RegionIntersection[Line[v[[{19,21}]]],InfiniteLine[v[[{4,5}]]]]

VectorAngle[v[[23]]-v[[19]],v[[21]]-v[[19]]]//FullSimplify

VectorAngle[v[[23]]-v[[20]],v[[21]]-v[[20]]]//FullSimplify

Solve[Dot[v[[23]]-{x,y},v[[21]]-{x,y}]==0&&x==0,{x,y}]

Solve[Dot[v[[23]]-{x,y},v[[21]]-{x,y}]==0&&x==6,{x,y}]

v={{0,0},{1,0},{6,0},{2,1},{3,1},{4,1},{1,2},{3,2},{5,2},{1,3},{3,3},{5,3},{2,4},{3,4},{4,4},{0,5},{5,5},{6,5}};
v=Join[v,
{{0,(1/2) (5-(Sqrt[161]))},{6,(1/2) (5+(Sqrt[161]))},v[[9]]+{5,0},{-(7/3),4},v[[10]]-{5,0},{(25/3),1}}];
g=Graph[Range[Length[v]],UndirectedEdge@@@{e[19,24,21,20,22,23,19,1,16,17,18],e[22,13,14,15,16],e[1,2,3,18,20],e[2,7,10],e[3,4,5,6,24],e[7,8,9,21],e[9,12,17],e[23,10,11,12],{4,13},{5,8},{6,15},{11,14}},VertexCoordinates->v,VertexLabels->Automatic]

RecognizeGraph[g]

RectilinearCrossingCount[g]

Import["https://upload.wikimedia.org/wikipedia/commons/7/71/Nauru_1-planar_8-crossing.svg"]

v={#/8,#2/7}&@@@{{0,0},{8,0},{1,1},{4,1},{7,1},{1,2},{4,2},{7,2},{2,3},{3,3},{5,3},{6,3},{2,4},{3,4},{5,4},{6,4},{1,5},{4,5},{7,5},{1,6},{4,6},{7,6},{0,7},{8,7}};
g=Graph[Range[Length[v]],UndirectedEdge@@@{e[1,5,8,24,20,17,1,23,22,19,2,3,6,23],{2,24},e[6,9,4,12,16,21,13,17],{9,13},e[20,14,10,3],{16,19},{12,8},e[22,15,11,5],e[14,18,15],e[10,7,11],{4,7},{18,21}},VertexCoordinates->v,VertexLabels->Automatic]

RecognizeGraph@g

RectilinearCrossingCount@g

Circulant

GraphData["NauruGraph","Circulant"]

GraphData["NauruGraph","Graph","Circulant"]//StyleGraphs

Halin

GraphData["NauruGraph","Halin"]

GraphData["NauruGraph","Graph","Halin"]//StyleGraphs

LCF

GraphData["NauruGraph","LCF"]

GraphData["NauruGraph","HamiltonianCycleCount"]

GraphData["NauruGraph","LCFSignature"]

GraphData["NauruGraph","Graph","LCF"]//StyleGraphs

Tally[LCFFromEmbedding[#][[2]]&/@%]

LCF compute

Length[FindHamiltonianCycle[GraphData["NauruGraph"],All][[All,All,1]]]//Timing

Tally[(lcf=LCF[GraphData["NauruGraph"],All])[[All,2]]]//Timing

LCFGraph@@@lcf//StyleGraphs

gs=Flatten[{
(* all LCF's with order >1, sorted by order and with bilateral graphs first *)
Join[DeleteCases[#,{_Missing,_}][[All,1]],Cases[#,{_Missing,_}][[All,2]]]&/@Map[{BilateralLCFEmbedding[#],#}&,Map[LCFGraph@@#&,SplitBy[DeleteCases[lcf,{_,1}],Last],{2}],{2}],
(* order-1 bilateral only *)
DeleteMissing[BilateralLCFEmbedding/@LCFGraph@@@Cases[lcf,{_,1}]]}]

UnitDistance

GraphData["NauruGraph","UnitDistance"]

UnitDistanceGraphQ[GraphData["NauruGraph"],Debug->True]//Timing

GraphData["NauruGraph","Graph","UnitDistance"]//StyleGraphs

GraphicsGrid[Partition[%,UpTo[5]],ImageSize->700]

Select[%,!FreeQ[GraphEmbedding[#],_?InexactNumberQ]&]

UnitDistance by refinement

UnitDistanceEmbeddingRefine[Graph[GraphData["NauruGraph","VertexList"],GraphData["NauruGraph","EdgeList"]]]

UnitDistanceGraphEmbeddingQ[%]

UnitDistanceEmbeddingRefine[Annotate[#,VertexCoordinates->N[GraphEmbedding[#]]]]&/@Complement@@(GraphData["NauruGraph","Graph",#]&/@{"All","UnitDistance"})

Select[%,UnitDistanceGraphEmbeddingQ]

GraphPlot@

GraphPlot@

gs={,}

UnitDistance by FindUnitDistanceEmbedding

FindUnitDistanceEmbedding[GraphData["NauruGraph"],MaxIterations->5000,"ReturnWithMessage"->True]//Timing

FindUnitDistanceEmbedding[GraphData["NauruGraph"],MaxIterations->5000,"ReturnWithMessage"->False]//Quiet//Timing

UnitDistance by FindSubgraphUnitDistanceEmbedding

{"NauruGraph",l=FindSubgraphUnitDistanceEmbedding[GraphData["NauruGraph"],TimeConstraint->300,"Results"->All]//Timing}

gs=SortBy[UniqueEmbeddings[l],Replace[RectilinearCrossingCount[#],Infinity->0]&]

gs={,,,,};

Matchstick

GraphData["NauruGraph","Matchstick"]

GraphData["NauruGraph","Graph","Matchstick"]//StyleGraphs

3D default

Graph3D[GraphData["NauruGraph","Edges"]]

3D All

GraphData["NauruGraph","Graph",{"3D","All"}]

3D UnitDistance

GraphData["NauruGraph","Graph",{"3D","UnitDistance"}]

3D UnitDistance construction

From Ed Pegg, Jr.
Apr 7, 2026

v={{0,1,1},{0,1,2},{0,2,1},{0,2,2},{1,0,1},{1,0,2},{1,1,0},{1,1,3},{1,2,0},{1,2,3},{1,3,1},{1,3,2},{2,0,1},{2,0,2},{2,1,0},{2,1,3},{2,2,0},{2,2,3},{2,3,1},{2,3,2},{3,1,1},{3,1,2},{3,2,1},{3,2,2}}/3;

Mean[v]

g=EuclideanDistanceGraph[v,1]

RecognizeGraph@g

UnitDistanceGraphEmbeddingQ[g]

v=ResourceFunction["SignedPermutations"][{1,1,3}]/6

Mean[v]

g=EuclideanDistanceGraph[v,1]

RecognizeGraph[g]

UnitDistanceGraphEmbeddingQ[g]

3D Polyhedron

GraphData["NauruGraph","Polyhedral"]

GraphData["NauruGraph","Graph",{"3D","Polyhedron"}]

3D xyz

GraphData["NauruGraph","Graph",{"3D","XYZ"}]

3D xyz Construction

v=Select[Tuples[Range[4],3],Unequal@@#&]

ee=UndirectedEdge@@@Select[Subsets[v,{2}],Count[Equal@@@Transpose[#],True]==2&]

Graph3D[v,ee,VertexCoordinates->v]

Projection2D[v0_,o_:{0,0,0},r_:1]:=Module[{v=v0-o},{v[[1]],v[[2]]}r/(r-v[[3]])]

g=Graph[v,ee,VertexCoordinates->(Projection2D[#,20{1,1,1},20]&/@v)]

GraphEmbedding[g]

Construction

From PermutationGraph

From Ed Pegg
May 29, 2020

group=PermutationGroup[{Cycles[{{1,5},{2,8},{3,7},{4,6},{9,13},{10,16},{11,15},{12,14},{17,21},{18,24},{19,23},{20,22}}],Cycles[{{1,6},{2,5},{3,8},{4,7},{9,14},{10,13},{11,16},{12,15},{17,22},{18,21},{19,24},{20,23}}],Cycles[{{1,16},{2,23},{3,14},{4,21},{5,12},{6,19},{7,10},{8,17},{9,24},{11,22},{13,20},{15,18}}]}];

UndirectedGraph[CayleyGraph[group]]

RecognizeGraph[%]

Construction from tuples

http://11011110.livejournal.com/124705.html

disttup=Select[Tuples[Range[4],3],Unequal@@#&]

e=Select[Subsets[disttup,{2}],Count[Equal@@@Transpose[#],True]==2&];

Graph[disttup,UndirectedEdge@@@e]

RecognizeGraph[%]

UnitDistance by Folding (Gerbracht)

GraphData["NauruGraph","Graph","UnitDistance"][[2]]//StyleGraphs

E. H.-A. Gerbracht
Jan. 6, 2010

rA=Sin[1/2*(Pi-2*k/n*Pi)]/Sin[k*2*Pi/n]/.{n->12,k->5};
A01={rA*Sin[0*2*Pi/12],rA*Cos[0*2*Pi/12]};
A02={rA*Sin[11*2*Pi/12],rA*Cos[11*2*Pi/12]};
A03={rA*Sin[10*2*Pi/12],rA*Cos[10*2*Pi/12]};
A04={rA*Sin[9*2*Pi/12],rA*Cos[9*2*Pi/12]};
A05={rA*Sin[8*2*Pi/12],rA*Cos[8*2*Pi/12]};
A06={rA*Sin[7*2*Pi/12],rA*Cos[7*2*Pi/12]};
A07={rA*Sin[6*2*Pi/12],rA*Cos[6*2*Pi/12]};
A08={rA*Sin[5*2*Pi/12],rA*Cos[5*2*Pi/12]};
A09={rA*Sin[4*2*Pi/12],rA*Cos[4*2*Pi/12]};
A10={rA*Sin[3*2*Pi/12],rA*Cos[3*2*Pi/12]};
A11={rA*Sin[2*2*Pi/12],rA*Cos[2*2*Pi/12]};
A12={rA*Sin[1*2*Pi/12],rA*Cos[1*2*Pi/12]};

P01=(xB01-A01[[1]])^2+(yB01-A01[[2]])^2-1;
(* B02 *)
P02=(xB02-A02[[1]])^2+(yB02-A02[[2]])^2-1;
P03=(xB02-xB01)^2+(yB02-yB01)^2-1;
(* B03 *)
P04=(xB03-A03[[1]])^2+(yB03-A03[[2]])^2-1;
P05=(xB03-xB02)^2+(yB03-yB02)^2-1;
(* B04 *)
P06=(xB04-A04[[1]])^2+(yB04-A04[[2]])^2-1;
P07=(xB04-xB03)^2+(yB04-yB03)^2-1;
(* B05 *)
P08=(xB05-A05[[1]])^2+(yB05-A05[[2]])^2-1;
P09=(xB05-xB04)^2+(yB05-yB04)^2-1;
(* B06 *)
P10=(xB06-A06[[1]])^2+(yB06-A06[[2]])^2-1;
P11=(xB06-xB05)^2+(yB06-yB05)^2-1;
(* B07 *)
P12=(xB07-A07[[1]])^2+(yB07-A07[[2]])^2-1;
P13=(xB07-xB06)^2+(yB07-yB06)^2-1;
(* B08 *)
P14=(xB08-A08[[1]])^2+(yB08-A08[[2]])^2-1;
P15=(xB08-xB07)^2+(yB08-yB07)^2-1;
(* B09 *)
P16=(xB09-A09[[1]])^2+(yB09-A09[[2]])^2-1;
P17=(xB09-xB08)^2+(yB09-yB08)^2-1;
(* B10 *)
P18=(xB10-A10[[1]])^2+(yB10-A10[[2]])^2-1;
P19=(xB10-xB09)^2+(yB10-yB09)^2-1;
(* B11 *)
P20=(xB11-A11[[1]])^2+(yB11-A11[[2]])^2-1;
P21=(xB11-xB10)^2+(yB11-yB10)^2-1;
(* B12 *)
P22=(xB12-A12[[1]])^2+(yB12-A12[[2]])^2-1;
P23=(xB12-xB11)^2+(yB12-yB11)^2-1;
(* final adjustment of B01 *)
P00=(xB01-xB12)^2+(yB01-yB12)^2-1;

eqns={P01,P02,P03,P04,P05,P06,
P07,P08,P09,P10,P11,P12,
P13,P14,P15,P16,P17,P18,
P19,P20,P21,P22,P23,P00}

Length[eqns]

vars=Variables[eqns]

Length[%]

GroebnerBasis[eqns,xB01,Rest[vars],MonomialOrder->EliminationOrder]

NSolve[eqns,vars,Reals]

(soln=Solve[Thread[eqns==0],vars,Reals])//Timing

...ran overnight...

K0prec=FindRoot[
Re@{P01,P02,P03,P04,P05,P06,
P07,P08,P09,P10,P11,P12,
P13,P14,P15,P16,P17,P18,
P19,P20,P21,P22,P23,P00},
{xB01,0.07071},
{yB01,1.51514},
{xB02,-0.88675},
{yB02,1.22656},
{xB03,0.1042},
{yB03,1.09234},
{xB04,-0.88269},
{yB04,0.93099},
{xB05,-1.39245},
{yB05, 0.07067},
{xB06,-1.1511},
{yB06,-0.89977},
{xB07,-0.82607},
{yB07, 0.0459},
{xB08,-0.616},
{yB08,-0.93186},
{xB09,0.33092},
{yB09,-1.25191},
{xB10,1.19006},
{yB10,-0.74017},
{xB11,1.44775},
{yB11,0.22606},
{xB12,0.99961},
{yB12,1.12002},WorkingPrecision->100000];//Timing

B01={xB01,yB01}/.K0prec;
B02={xB02,yB02}/.K0prec;
B03={xB03,yB03}/.K0prec;
B04={xB04,yB04}/.K0prec;
B05={xB05,yB05}/.K0prec;
B06={xB06,yB06}/.K0prec;
B07={xB07,yB07}/.K0prec;
B08={xB08,yB08}/.K0prec;
B09={xB09,yB09}/.K0prec;
B10={xB10,yB10}/.K0prec;
B11={xB11,yB11}/.K0prec;
B12={xB12,yB12}/.K0prec;

v=ToExpression[Flatten[Outer[StringJoin,{"A","B"},(If[#<10,"0",""]<>ToString[#])&/@Range[12]]]];

v//N

e=UnitEdges[v]

Length[e]

GraphData["GP12,5","E"]

vnew=FullSimplify[v]/.n_?InexactNumberQ:>N[n]

g=Graph[Range[Length[v]],UndirectedEdge@@@e,VertexCoordinates->v]

UnitDistanceGraphEmbeddingQ[g]

r=RecognizeGraph[g]

Exact algebraic roots of Folding (Gerbracht) embedding

g=Graph[Range[Length[v]],UndirectedEdge@@@e,VertexCoordinates->v,VertexLabels->Automatic]

vnew=FullSimplify[v]/.n_?InexactNumberQ:>N[n]

N[Norm/@Drop[v,12],20]//Sort

vexact=Map[ToAlgebraicRoot[#,"MaxDegree"->32,WorkingPrecision->2000,Debug->True]&,v,{2}]/.v_?InexactNumberQ:>N[v]

(res=ToAlgebraicRoot[v[[13,1]],"MaxDegree"->96,WorkingPrecision->10000]);//Timing

(res=ToAlgebraicRoot[v[[13,1]],"MaxDegree"->96,WorkingPrecision->50000]);//Timing

res===v[[13,1]]

vnew=FullSimplify[v]/.n_?InexactNumberQ:>N[n]

e={1\[UndirectedEdge]6,1\[UndirectedEdge]8,1\[UndirectedEdge]13,2\[UndirectedEdge]7,2\[UndirectedEdge]9,2\[UndirectedEdge]14,3\[UndirectedEdge]8,3\[UndirectedEdge]10,3\[UndirectedEdge]15,4\[UndirectedEdge]9,4\[UndirectedEdge]11,4\[UndirectedEdge]16,5\[UndirectedEdge]10,5\[UndirectedEdge]12,5\[UndirectedEdge]17,6\[UndirectedEdge]11,6\[UndirectedEdge]18,7\[UndirectedEdge]12,7\[UndirectedEdge]19,8\[UndirectedEdge]20,9\[UndirectedEdge]21,10\[UndirectedEdge]22,11\[UndirectedEdge]23,12\[UndirectedEdge]24,13\[UndirectedEdge]14,13\[UndirectedEdge]24,14\[UndirectedEdge]15,15\[UndirectedEdge]16,16\[UndirectedEdge]17,17\[UndirectedEdge]18,18\[UndirectedEdge]19,19\[UndirectedEdge]20,20\[UndirectedEdge]21,21\[UndirectedEdge]22,22\[UndirectedEdge]23,23\[UndirectedEdge]24};

UnitDistance Horvat et al.

GraphData["NauruGraph","Graph","UnitDistance"][[1]]//StyleGraphs

GraphData["NauruGraph","Graph","UnitDistance"][[1]]//GraphEmbedding

(* U.d.e. by Horvat et al. [2009-2010] *)
P1=R-1-L;
P2=r-1-l;
P3=R^2+r^2-2*R*r*Cos[2*Pi/12]-1;
P4=L^2+l^2-2*L*l*Cos[1/2*(300/360)*2*Pi]-1;

S=Solve[{P1,P2,P3,P4}==0,{r,R,l,L}]//FullSimplify;
rA=R/.S[[4]];
rU=L/.S[[4]];
rB=r/.S[[4]];
rV=l/.S[[4]];

A1={rA*Sin[0*2*Pi/6],rA*Cos[0*2*Pi/6]};
A2={rA*Sin[5*2*Pi/6],rA*Cos[5*2*Pi/6]};
A3={rA*Sin[4*2*Pi/6],rA*Cos[4*2*Pi/6]};
A4={rA*Sin[3*2*Pi/6],rA*Cos[3*2*Pi/6]};
A5={rA*Sin[2*2*Pi/6],rA*Cos[2*2*Pi/6]};
A6={rA*Sin[1*2*Pi/6],rA*Cos[1*2*Pi/6]};

B1={rB*Sin[0*2*Pi/6+(2*Pi/12)],rB*Cos[0*2*Pi/6+(2*Pi/12)]};
B2={rB*Sin[5*2*Pi/6+(2*Pi/12)],rB*Cos[5*2*Pi/6+(2*Pi/12)]};
B3={rB*Sin[4*2*Pi/6+(2*Pi/12)],rB*Cos[4*2*Pi/6+(2*Pi/12)]};
B4={rB*Sin[3*2*Pi/6+(2*Pi/12)],rB*Cos[3*2*Pi/6+(2*Pi/12)]};
B5={rB*Sin[2*2*Pi/6+(2*Pi/12)],rB*Cos[2*2*Pi/6+(2*Pi/12)]};
B6={rB*Sin[1*2*Pi/6+(2*Pi/12)],rB*Cos[1*2*Pi/6+(2*Pi/12)]};

U1={rU*Sin[0*2*Pi/6],rU*Cos[0*2*Pi/6]};
U2={rU*Sin[5*2*Pi/6],rU*Cos[5*2*Pi/6]};
U3={rU*Sin[4*2*Pi/6],rU*Cos[4*2*Pi/6]};
U4={rU*Sin[3*2*Pi/6],rU*Cos[3*2*Pi/6]};
U5={rU*Sin[2*2*Pi/6],rU*Cos[2*2*Pi/6]};
U6={rU*Sin[1*2*Pi/6],rU*Cos[1*2*Pi/6]};

V1={rV*Sin[0*2*Pi/6+(2*Pi/12)],rV*Cos[0*2*Pi/6+(2*Pi/12)]};
V2={rV*Sin[5*2*Pi/6+(2*Pi/12)],rV*Cos[5*2*Pi/6+(2*Pi/12)]};
V3={rV*Sin[4*2*Pi/6+(2*Pi/12)],rV*Cos[4*2*Pi/6+(2*Pi/12)]};
V4={rV*Sin[3*2*Pi/6+(2*Pi/12)],rV*Cos[3*2*Pi/6+(2*Pi/12)]};
V5={rV*Sin[2*2*Pi/6+(2*Pi/12)],rV*Cos[2*2*Pi/6+(2*Pi/12)]};
V6={rV*Sin[1*2*Pi/6+(2*Pi/12)],rV*Cos[1*2*Pi/6+(2*Pi/12)]};

v=ToExpression[Flatten[Outer[StringJoin,{"A","B","U","V"},ToString/@Range[6]]]]//FullSimplify

e=Select[Subsets[Range[Length[v]],{2}],.999<=Norm[Subtract@@(v[[#]])]<=1.001&]

e=Select[Subsets[Range[Length[v]],{2}],FullSimplify[Norm[Subtract@@(v[[#]])]]==1&]

Length[e]

GraphData["GP12,5","E"]

ShowLabeledGraph[g2=Graph[List/@e,List/@FullSimplify[v]]]

r=RecognizeGraph[g]

ToCommonEdges[g,r]

Properties

CayleyGraph

GraphData["NauruGraph","Cayley"]

GraphData["NauruGraph","CayleyGraphGeneratingGroupNames"]

GraphData["NauruGraph","CayleyGraphGeneratingGroups"]

FiniteGroupData[24]

GraphData

GraphDataClassString

GraphDataClassString["NauruGraph"]