Stacked Book Graph

Author

Eric W. Weisstein
March 25, 2022

This notebook downloaded from http://mathworld.wolfram.com/notebooks/GraphTheory/StackedBookGraph.nb.

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

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

Figures

Graphs.m Rectangular

GraphicsGrid[Table[BookGraph[m,n,GraphLayout->"Rectangular",PlotLabel->Style[Subscript[B,m,n],FontFamily->"Times"]]//StyleGraphs,{m,5},{n,5}],ImageSize->500]

Graphs.m UnitDistance

GraphicsGrid[Table[BookGraph[m,n,GraphLayout->"UnitDistance",PlotLabel->Style[Subscript[B,m,n],FontFamily->"Times"]]//StyleGraphs,{m,5},{n,10}]]

GraphData

GraphicsGrid[Table[Show[GraphData[{"StackedBook",{m,n}}]//StyleGraphs,PlotLabel->Style[Subscript[B,m,n],FontFamily->"Times"]],{m,10},{n,10}]]

GraphData UnitDistance

GraphicsGrid[Table[Show[GraphData[{"StackedBook",{m,n}},"Graph","UnitDistance"][[1]]//StyleGraphs,PlotLabel->Style[Subscript[B,m,n],FontFamily->"Times"]],{m,10},{n,10}]]

l=Flatten[Table[{gn=GraphData[{"StackedBook",{m,n}},"#"],{0,Append[GraphData[gn,"Embeddings"],N@ToCommonEdges[BookGraph[m,n,GraphLayout->"UnitDistance"],GraphData[gn]]]}},{m,3,10},{n,2,2}],1]

PropertyReplace[l,"Embeddings","11.3"]

RenameGraphFiles[]

l=Sort[Flatten[Table[{gn=GraphData[{"StackedBook",{m,n}},"#"],{0,Append[GraphData[gn,"EmbeddingClasses"],{"Integral","MinimalIntegral",If[n>2,"Primary",Nothing],"UnitDistance"}]}},{m,3,10},{n,2,2}],1]]

PropertyReplace[l,"EmbeddingClasses","11.3"]

RenameGraphFiles[]

Old

GraphicsGrid[Table[GraphPlot[StackedBookGraph[m,n],PlotLabel->Subscript[B,Sequence@@{m,n}]],{m,3,5},{n,2,5}],ImageSize->500]

Special cases

TextGrid[DeleteCases[Flatten[Table[{{m,n},RecognizeGraph@BookGraph[m,n]},{m,10},{n,10}],1],{_,{"StackedBook",_}}],Dividers->All]

Properties m×n

ChordCount

With[{g={"StackedBook",{3,4}}},HighlightGraph[GraphData[g],Complement[GraphData[g,"Edges"],GraphData[g,"Chords"]]]]

With[{g={"StackedBook",{5,9}}},HighlightGraph[GraphData[g],Complement[GraphData[g,"Edges"],GraphData[g,"Chords"]]]]

edgecount=m n+(n-1)(m+1);

edgecount-4m

FullSimplify[-4 m+(1+m) (-1+n)+m n]

Sort[Flatten[Table[{{m,n},GraphData[{"StackedBook",{m,n}},"ChordCount"],Piecewise[{{0,m==n==1},{Max[m,n]-2,Min[m,n]==1}},-4 m+(1+m) (-1+n)+m n]},{n,10},{m,n}],1]]

ConnectedDominationPolynomial

(x^m+x(1+x)^m)*(x^n + x(1+x)^n)

(x^m+x(1+x)^m)*(x^n+x(1+x)^n)/.m->2//Simplify

Table[(x^m+x(1+x)^m)*(x^n+x(1+x)^n)

Flatten[Table[Expand/@{{m,n},GraphData[{"StackedBook",{m,n}},"DominationPolynomial"],(x^m+x(1+x)^m)*(x^n+x(1+x)^n)},{n,5},{m,5}]/.f_Function:>f[x],1]//Column

EdgeCount

With[{g={"StackedBook",{3,4}}},GraphData[g]]

FullSimplify[m n+(n-1)(m+1)]

DeleteCases[Sort[Flatten[Table[{{m,n},GraphData[{"StackedBook",{m,n}},"EdgeCount"],m n+(n-1)(m+1)},{n,10},{m,n}],1]],{_,x_,x_}]

VertexCount

With[{g={"StackedBook",{3,4}}},GraphData[g]]

DeleteCases[Sort[Flatten[Table[{{m,n},GraphData[{"StackedBook",{m,n}},"VertexCount"],(m +1)n},{n,10},{m,n}],1]],{_,x_,x_}]

Properties n×n

Circumference

seq=Table[GraphData[{"StackedBook",{n,n}},"Circumference"],{n,2,10}]

FindSequenceFunction[DeleteCases[seq,_Missing],n-1]

Initial terms match A183575

seq=Table[Ceiling[n^2/2-1]+n-1,{n,20}]

FindSequenceFunction[%,n]

gf=x FindGeneratingFunction[seq,x]

FullSimplify[SeriesCoefficient[gf,{x,0,n}],n>0]

Table[(2 n (n+2)-7-(((-1))^n))/4,{n,20}]

Simplify[(2 n (n+2)-7-(((-1))^n))/4,Mod[n,2]==#]&/@{0,1}//Factor

Table[If[Mod[n,2]==0,n^2+2n-4,(n+3)(n-1)]/2,{n,20}]

Table[Ceiling[n^2/2-1]+n-1,{n,20}]

ConnectedDominationPolynomial

(poly=Factor@Table[GraphData[{"StackedBook",{n,n}},"ConnectedDominationPolynomial"],{n,k0=1,kmax=10}]/.f_Function:>f[x])//Column

coef=Factor/@FindLinearRecurrence[DeleteMissing[poly]]

ToPolynomialRecurrence[p,x,n,coef]

FormattedPolynomialRecurrence[p,x,n,coef]//TraditionalForm

TeXForm[%]

LinearRecurrence[coef,poly,{2-k0,Length[coef]-k0+1}]

FullSimplify[RSolve[Prepend[Table[p[k+k0-1,x]==poly[[k]],{k,Length[coef]}],ToPolynomialRecurrence[p,x,n,coef]],p[n,x],n],n∈Integers&&n>0]

gf=Factor[(z^k0)FindGeneratingFunction[poly,z]]

FullSimplify[SeriesCoefficient[gf,{z,0,n}],n>0]

poly2=Table[XXX,{n,k0,kmax}]

FullSimplify[poly2-poly]

DominationPolynomial

(poly=Factor@Table[GraphData[{"StackedBook",{n,n}},"DominationPolynomial"],{n,k0=1,kmax=10}]/.f_Function:>f[x])//Column

coef=Factor/@FindLinearRecurrence[DeleteMissing[poly]]

ToPolynomialRecurrence[p,x,n,coef]

FormattedPolynomialRecurrence[p,x,n,coef]//TraditionalForm

TeXForm[%]

LinearRecurrence[coef,poly,{2-k0,Length[coef]-k0+1}]

FullSimplify[RSolve[Prepend[Table[p[k+k0-1,x]==poly[[k]],{k,Length[coef]}],ToPolynomialRecurrence[p,x,n,coef]],p[n,x],n],n∈Integers&&n>0]

gf=Factor[(z^k0)FindGeneratingFunction[poly,z]]

FullSimplify[SeriesCoefficient[gf,{z,0,n}],n>0]

poly2=Table[XXX,{n,k0,kmax}]

FullSimplify[poly2-poly]

IndependentEdgeSetCount

seq=Table[GraphData[{"StackedBook",{n,n}},"IndependentEdgeSetCount"],{n,10}]

FindLinearRecurrence[DeleteMissing[seq]]

FindSequenceFunction[DeleteMissing[seq],n]

gf=x FindGeneratingFunction[DeleteMissing[seq],x]

IndependentVertexSetCount

seq=Table[GraphData[{"StackedBook",{n,n}},"IndependentVertexSetCount"],{n,10}]

FindLinearRecurrence[DeleteMissing[seq]]

FindSequenceFunction[DeleteMissing[seq],n]

gf=x FindGeneratingFunction[DeleteMissing[seq],x]

LongestPathLength

table=Sort[{"StackedBook"/.GraphData[#,"NotationRules"],GraphData[#,"LongestPathLength"]}&/@GraphData["StackedBook"]]

(data=Table[Cases[table,{{k,n_},l_}:>l],{k,10}])//Column

FindSequenceFunction[data[[1]],n]

FindSequenceFunction[Rest@data[[2]],n-1]//Factor

FindSequenceFunction[data[[3]],n]//Factor//FullSimplify

Refine[(1/2) (((-1))^n) (1+(((-1))^n) (-3+8 n)),n∈Integers&&n>2]

FindSequenceFunction[DeleteMissing@data[[4]],n]//Factor//FullSimplify

FindSequenceFunction[DeleteMissing@data[[5]],n]//Factor//FullSimplify

FindSequenceFunction[DeleteMissing@data[[6]],n]//Factor//FullSimplify

Length[paths=GraphData[{"StackedBook",{4,3}},"LongestPaths"]]

path=paths[[1]]

HighlightGraph[GraphData[{"StackedBook",{4,3}},"Graph","Labeled"],UndirectedEdge@@@Partition[path,2,1]]

Identification

ids=Flatten[Table[{{m,n},RecognizeGraph[StackedBookGraph[m,n]]},{m,10},{n,10}],1]

nice=DeleteCases[ids,{_,{"Book"|"Ladder"|"Path"|"StackedBook"|"Star",_}|{}}]

Grid[nice,Dividers->All,Alignment->Left]

new=Cases[ids,{x_,{}}:>x]

Grid[{#,GraphData[#,"StandardNames"]}&/@{"SquareGraph","DominoGraph",{"Book",3},{"Book",4}},Dividers->All,Alignment->Left]

Grid[{#,GraphData[#,"Names"]}&/@{"SquareGraph","DominoGraph",{"Book",3},{"Book",4}},Dividers->All,Alignment->Left]

Embeddings

<<MathWorld`Graphs`

e[l__Integer]:=Sequence@@Partition[{l},2,1]

{"StackedBook", {3, 6}}

GraphData[{"StackedBook",{3,6}},"StandardName"]

All

GraphData[{"StackedBook",{3,6}},"Graph","All"]//StyleGraphs

LCF

GraphData[{"StackedBook",{3,6}},"LCFSignature"]

GraphData[{"StackedBook",{3,6}},"Graph","LCF"]//StyleGraphs

UnitDistance

UnitDistanceGraphQ[GraphData[{"StackedBook",{3,6}}],Debug->True]

GraphData[{"StackedBook",{3,6}},"Graph","UnitDistance"]//StyleGraphs

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

Select[UnitDistanceEmbeddingRefine/@Complement@@(GraphData[{"StackedBook",{3,6}},"Graph",#]&/@{"All","UnitDistance"}),UnitDistanceGraphEmbeddingQ]

l=FindSubgraphIsomorphism[GraphData[{"StackedBook",{3,6}}],"Results"->All]//Timing

gs=UniqueEmbeddings[l]

Matchstick

GraphData[{"StackedBook",{3,6}},"Graph","Matchstick"]//StyleGraphs

MinimalCrossing

GraphData[{"StackedBook",{3,6}},{"RCN","CN"}]

GraphData[{"StackedBook",{3,6}},"Graph","MinimalCrossing"]//StyleGraphs

3D

Graph3D[GraphData[{"StackedBook",{3,6}},"Edges"]]

Default embedding

g=GraphPlot@GraphData[{"StackedBook",{3,6}},"Edges"]

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

RecognizeGraph[g]

MinimalCrossing Construction

GraphData[{"StackedBook",{3,6}},"V"]

GraphPlot@MinimalCrossingGraph[GraphData[{"StackedBook",{3,6}}],"CrossingNumber"->4]

GraphPlot@MinimalCrossingGraph[GraphData[{"StackedBook",{3,6}}],"CrossingNumber"->4,RandomSeed->1111]

GraphPlot@HighlightGraph[RotateGraph[GraphicsToGraph@,-Pi/2],Range[24+1,24+4]]

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

RecognizeGraph[g]

RectilinearCrossingCount[g]

{"StackedBook", {3, 7}}

GraphData[{"StackedBook",{3,7}},"StandardName"]

All

GraphData[{"StackedBook",{3,7}},"Graph","All"]//StyleGraphs

LCF

GraphData[{"StackedBook",{3,7}},"LCFSignature"]

GraphData[{"StackedBook",{3,7}},"Graph","LCF"]//StyleGraphs

UnitDistance

UnitDistanceGraphQ[GraphData[{"StackedBook",{3,7}}],Debug->True]

GraphData[{"StackedBook",{3,7}},"Graph","UnitDistance"]//StyleGraphs

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

Select[UnitDistanceEmbeddingRefine/@Complement@@(GraphData[{"StackedBook",{3,7}},"Graph",#]&/@{"All","UnitDistance"}),UnitDistanceGraphEmbeddingQ]

l=FindSubgraphIsomorphism[GraphData[{"StackedBook",{3,7}}],"Results"->All]//Timing

gs=UniqueEmbeddings[l]

Matchstick

GraphData[{"StackedBook",{3,7}},"Graph","Matchstick"]//StyleGraphs

MinimalCrossing

GraphData[{"StackedBook",{3,7}},{"RCN","CN"}]

GraphData[{"StackedBook",{3,7}},"Graph","MinimalCrossing"]//StyleGraphs

3D

Graph3D[GraphData[{"StackedBook",{3,7}},"Edges"]]

Default embedding

GraphPlot@GraphData[{"StackedBook",{3,7}},"Edges"]

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

RecognizeGraph[g]

MinimalCrossing Construction

GraphData[{"StackedBook",{3,7}},"V"]

GraphPlot@RotateGraph[MinimalCrossingGraph[GraphData[{"StackedBook",{3,7}}],VertexSize->{"Scaled",.02},"CrossingNumber"->5,RandomSeed->1111],-Pi/2]

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

RecognizeGraph[g]

RectilinearCrossingCount[g]

{"StackedBook", {4, 4}}

GraphData[{"StackedBook",{4,4}},"StandardName"]

All

GraphData[{"StackedBook",{4,4}},"Graph","All"]//StyleGraphs

LCF

GraphData[{"StackedBook",{4,4}},"LCFSignature"]

GraphData[{"StackedBook",{4,4}},"Graph","LCF"]//StyleGraphs

UnitDistance

UnitDistanceGraphQ[GraphData[{"StackedBook",{4,4}}],Debug->True]

GraphData[{"StackedBook",{4,4}},"Graph","UnitDistance"]//StyleGraphs

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

Select[UnitDistanceEmbeddingRefine/@Complement@@(GraphData[{"StackedBook",{4,4}},"Graph",#]&/@{"All","UnitDistance"}),UnitDistanceGraphEmbeddingQ]

l=FindSubgraphIsomorphism[GraphData[{"StackedBook",{4,4}}],"Results"->All]//Timing

gs=UniqueEmbeddings[l]

Matchstick

GraphData[{"StackedBook",{4,4}},"Graph","Matchstick"]//StyleGraphs

MinimalCrossing

GraphData[{"StackedBook",{4,4}},{"RCN","CN"}]

GraphData[{"StackedBook",{4,4}},"Graph","MinimalCrossing"]//StyleGraphs

3D

Graph3D[GraphData[{"StackedBook",{4,4}},"Edges"]]

Default embedding

g=GraphPlot@GraphData[{"StackedBook",{4,4}},"Edges"]

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

RecognizeGraph[g]

MinimalCrossing Construction

GraphData[{"StackedBook",{4,4}},"V"]

GraphPlot@MinimalCrossingGraph[GraphData[{"StackedBook",{4,4}}],"CrossingNumber"->5]

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

RecognizeGraph[g]

RectilinearCrossingCount[g]

{"StackedBook", {5, 3}}

GraphData[{"StackedBook",{5,3}},"StandardName"]

All

GraphData[{"StackedBook",{5,3}},"Graph","All"]//StyleGraphs

LCF

GraphData[{"StackedBook",{5,3}},"LCFSignature"]

GraphData[{"StackedBook",{5,3}},"Graph","LCF"]//StyleGraphs

UnitDistance

UnitDistanceGraphQ[GraphData[{"StackedBook",{5,3}}],Debug->True]

GraphData[{"StackedBook",{5,3}},"Graph","UnitDistance"]//StyleGraphs

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

Select[UnitDistanceEmbeddingRefine/@Complement@@(GraphData[{"StackedBook",{5,3}},"Graph",#]&/@{"All","UnitDistance"}),UnitDistanceGraphEmbeddingQ]

l=FindSubgraphIsomorphism[GraphData[{"StackedBook",{5,3}}],"Results"->All]//Timing

gs=UniqueEmbeddings[l]

Matchstick

GraphData[{"StackedBook",{5,3}},"Graph","Matchstick"]//StyleGraphs

MinimalCrossing

GraphData[{"StackedBook",{5,3}},{"RCN","CN"}]

GraphData[{"StackedBook",{5,3}},"Graph","MinimalCrossing"]//StyleGraphs

3D

Graph3D[GraphData[{"StackedBook",{5,3}},"Edges"]]

Default embedding

g=GraphPlot@GraphData[{"StackedBook",{5,3}},"Edges"]

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

RecognizeGraph[g]

MinimalCrossing Construction

GraphData[{"StackedBook",{5,3}},"V"]

GraphPlot@MinimalCrossingGraph[GraphData[{"StackedBook",{5,3}}],"CrossingNumber"->4,RandomSeed->1234]

GraphPlot@MinimalCrossingGraph[GraphData[{"StackedBook",{5,3}}],"CrossingNumber"->4]

GraphPlot@RotateGraph[HighlightGraph[GraphicsToGraph@,Range[18+1,18+4]],{13,16}]

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

RecognizeGraph[g]

RectilinearCrossingCount[g]

GraphData

DeleteCases[Flatten[Table[{{"StackedBook",{m,n}},RecognizeGraph[StackedBookGraph@@{m,n}]},{m,3,8},{n,2,5}],1],{_,{}}]

GraphDataString old

Do[Print[GraphDataString[StackedBookGraph[m,n],
"Name"->"("<>ToString[m]<>","<>ToString[n]<>")-stacked book graph",
"StandardName"->{"StackedBook",{m,n}},
"Classes"->{"StackedBook"},
"NotationRules"->{"StackedBook"->{m,n}},
"Information"->"StackedBookGraph",
"Skip"->{"Perfect"},
TimeConstraint->120
]],{m,3,8},{n,2,5}]

Do[Print[GraphDataString[StackedBookGraph[m,n],
"Name"->"("<>ToString[m]<>","<>ToString[n]<>")-stacked book graph",
"StandardName"->{"StackedBook",{m,n}},
"Classes"->{"StackedBook"},
"NotationRules"->{"StackedBook"->{m,n}},
"Information"->"StackedBookGraph",
"Skip"->{"Perfect"},
TimeConstraint->120
]],{m,8,8},{n,4,5}]

GraphDataString new

Up to 10

new=Select[Flatten[Table[{k,n},{k,3,10},{n,k,10}],1],Quiet[Head[RecognizeGraph[GraphData[{"StackedBook",#}]]]]===RecognizeGraph&]

System`Graph[EdgeList[StackedBookGraph@@#]]&/@new

file=OpenAppend["~/stackedbook.m"]

WriteString[file,GraphDataString[g=StackedBookGraph@@#,
"Name"->"("<>ToString[#[[1]]]<>","<>ToString[#[[2]]]<>")\[Hyphen]stacked book graph",
"Embeddings"->None,
"StandardName"->{"StackedBook",#},
"Classes"->{"StackedBook"},
"NotationRules"->{"StackedBook"->#},
"Information"->"StackedBookGraph",
"Skip"->{"MatchingPolynomial","IndependencePolynomial","ChromaticPolynomial","Bandwidth","RankPolynomial","CliqueCoveringNumber"},
Debug->True,
TimeConstraint->10
]]&/@new

Close[file]

WriteString[file,GraphDataString[g=StackedBookGraph@@#,
"Name"->"("<>ToString[#[[1]]]<>","<>ToString[#[[2]]]<>")\[Hyphen]stacked book graph",
"Embeddings"->None,
"StandardName"->{"StackedBook",#},
"Classes"->{"StackedBook"},
"NotationRules"->{"StackedBook"->#},
"Information"->"StackedBookGraph",
"Skip"->{"MatchingPolynomial","IndependencePolynomial","ChromaticPolynomial","Bandwidth","RankPolynomial","CliqueCoveringNumber"},
Debug->True,
TimeConstraint->10
]]&/@{{3,3},{3,5}}

Close[file]

file=OpenWrite["~/stackedbook.m"]

WriteString[file,GraphDataString[g=StackedBookGraph@@#,
"Name"->"("<>ToString[#[[1]]]<>","<>ToString[#[[2]]]<>")\[Hyphen]stacked book graph",
"Embeddings"->None,
"StandardName"->{"StackedBook",#},
"Classes"->{"StackedBook"},
"NotationRules"->{"StackedBook"->#},
"Information"->"StackedBookGraph",
"Skip"->{"MatchingPolynomial","IndependencePolynomial","ChromaticPolynomial","Bandwidth","RankPolynomial","CliqueCoveringNumber"},
Debug->True,
TimeConstraint->10
]]&/@{{4,4},{7,6},{8,6},{8,7},{9,3},{9,4},{9,5},{9,6},{9,7},{9,8},{10,3},{10,4},{10,5},{10,6},{10,7},{10,8},{10,9}}

Close[file]