#### Constructing Uniquely Realizable Graphs

Discrete Comput Geom
Constructing Uniquely Realizable Graphs
Igor Pak 0 1
Dan Vilenchik 0 1
0 D. Vilenchik (
1 I. Pak Department of Mathematics, UCLA , Los Angeles, CA 90095 , USA
In the Graph Realization Problem (GRP), one is given a graph G, a set of non-negative edge-weights, and an integer d. The goal is to find, if possible, a realization of G in the Euclidian space Rd , such that the distance between any two vertices is the assigned edge weight. The problem has many applications in mathematics and computer science, but is NP-hard when the dimension d is fixed. Characterizing tractable instances of GRP is a classical problem, first studied by Menger in 1931. We construct two new infinite families of GRP instances which can be solved in polynomial time. Both constructions are based on the blow-up of fixed small graphs with large expanders. Our main tool is the Connelly's condition in Rigidity Theory, combined with an explicit construction and algebraic calculations of the rigidity (stress) matrix. As an application of our results, we describe a general framework to construct uniquely k-colorable graphs. These graphs have the extra property of being uniquely vector k-colorable. We give a deterministic explicit construction of such a family using Cayley expander graphs.
Rigidity; Graph colorability; Semi-definite programming; Graph realization problem
1 Introduction
The Graph Realization Problem (GRP) is one of the most well studied problems in
distance geometry and has received attention in many disciplines. In that problem,
one is given a graph G = (V , E ) on n vertices, a set of non-negative edge weights
{wi j : (i, j ) ∈ E }, and a positive integer d. The goal is to compute a realization of G
in the Euclidean space Rd , i.e. a mapping p : V → Rd such that p(i ) − p( j ) = wi j
( x stands for the Euclidian length of the vector x), or determine if such realization
does not exist.
The GRP and its variants arise from applications in different areas both in
mathematics and computer science. In molecular conformation (see, e.g., [
14, 26
]), solving
the GRP in dimension three allows construction of the 3-dimensional structure of the
molecule. In wireless sensor network localization (see, e.g., [
4, 17
]), where one is
interested in inferring the locations of sensor nodes in a sensor network. And in computer
vision, where image reconstruction is performed from selected pairwise distances of
labeled sources [
6, 25
].
In geometry, the GRP is widely studied in the context of the theory of rigid
structures. One thinks of a graph as having metal bars instead of edges (the length of
each bar is the weight of the edge), and the vertices are points in Rd . The bars
are connected by joints and therefore movement is possible (but the bars cannot
change length). Loosely speaking, a framework is called globally rigid if there is
only one possible realization in Rd . A triangle is for example a rigid framework
in R2, while a square is not. Two triangles sharing a common edge is also not a
globally rigid structure in R2, even if they are continuously and infinitesimally rigid
(see [
11
]; Fig. 1). Note also, that some frameworks can be rigid in Rd but not in
Rd (take e.g. a closed chain of bars of lengths 2, 2, 2, 3 and 3, which is rigid in R
but not in R2). For a comprehensive survey on rigidity theory we refer the reader
to [
11
].
It is often required that the solution to the GRP is unique (that is the case in
the examples we mentioned). This leads us to a related Unique Realization Problem
(URP): given a realization of a graph G in Rd , is there another realization in the
same dimension? (We consider realizations equivalent under rotations, reflections or
translations).
Solving either the GRP or the URP when d ≥ 1 is fixed is NP-hard [
37
]; of course,
in many applications the interesting case is d = 2 or d = 3. On the positive side, for
d = 1, 2, one can solve a restricted (generic lengths) version of the URP in polynomial
time [
28
], while GRP and unrestricted URP may still be NP-hard in this setting [
4, 18
].
Unfortunately, the GRP cannot be formulated as a semidefinite program (SDP), due
to the non-convex dimension constraint. If we disregard the dimension constraint for
a moment, then GRP can be formulated as an SDP, and if a solution exists then an
approximate solution can be computed efficiently in dimension at most n, see [23]
(here n is the number of vertices of the graph), and in some cases dimension o(n)
suffices (see [
1,5
]). For an in-depth survey about the SDP approach to the problem we
refer the reader to [38].
1.1 Our Contribution
We address the following natural problem. Since the GRP and URP are NP-hard in
general, can we identify large families of instances for which the realization problem
can be efficiently solved? In 1931, Menger [
34
] resolved the problem in the special case
of the complete graph Kn on n vertices (giving a necessary and sufficient condition for
the existence of a solution to the GRP, and showing that this solution can be computed
efficiently). In a different (non-algorithmic) language, Connelly [
10
] showed that the
family of Cauchy polygons has a unique realization in Rd for all d ≥ 2, developing
tools which were later used to find several other ad hoc examples (see [
11,13,39
]).
With a notable exception of the work of So [
38
] who studied the GRP of graphs based
on certain k-trees, there has been little progress in this direction, either algorithmic
or non-algorithmic. In this paper, we continue this line of research by describing new
infinite families of tractable GRP instances.
Our construction is based on the following idea. Suppose that a realization p of
a graph G is unique not just in Rd , but in any dimension up to n. In that case, the
only solution to the SDP of the GRP is the realization p. This fact lends itself to
an efficient approximate solution (up to an arbitrary precision) of the problem. This
sort of uniqueness is captured by the notion of universal rigidity which was studied
extensively in [
10,12,13
]. Our main idea is to construct a blow-up of G (for a carefully
chosen graph G) with a sufficiently good expander, which gives a large universally
rigid framework. We do this explicitly in two special cases: for G the complete graph
on k vertices, and G the Cauchy polygon C8 (see below). We use tools developed
earlier to give sufficient conditions for the blow-ups to be universally rigid, which by
the above observation become tractable GRP instances (in approximation). The main
tool that we use is Connelly’s sufficient condition for a realization to be universally
rigid. For completeness and reader’s convenience, we give a concise proof of this result
(Theorem 4), following closely the sketch and ideas in [
10,12
].
1.2 Uniquely k-Colorable and Vector k-Colorable Graphs
In the k-colorability problem, given a graph G one is asked to compute (if possible) an
assignment of colors to the vertices (using k colors) s.t. two adjacent vertices receive
different colors. The least number k such that G is k-colorable is called the chromatic
number of G and is commonly denoted by χ (G). A vector k-coloring of an n-vertex
graph G = (V , E ) is an assignment of unit vectors {x1, x2, . . . , xn} ∈ Rn to the
vertices of G such that xi , x j ≤ −1/(k − 1) for every (vi , v j ) ∈ E . The least
positive real number k such that G admits a vector k-coloring is called the vector
chromatic number of G, usually denoted by χv(G) [
31
]. It is not hard to see that
χv(G) ≤ χ (G) (by identifying each color class with one vertex of a regular (k −
1)dimensional simplex centered at the origin), and indeed χv(G) can be much smaller
than χ (G) [
19
]. A graph G is uniquely k-colorable (resp. vector k-colorable) if G
admits only one proper k-coloring, up to color permutations (resp. congruency).
Theorem 3 below gives a recipe how to “cook” uniquely k-colorable graphs. The
resulting graphs have the extra property of being uniquely vector k-colorable as well.
The latter is not obvious at all, as k need not even be an integer. We could not find any
mention in the literature about uniquely vector k-colorable graphs, nor the relation to
unique k-colorability. Hopefully this paper can instigate research in this fascinating
unexplored direction. The fact that our graphs have this extra property is the product
of our proof method for unique k-colorability. The proof uses a reduction from
kcolorability to the GRP. Specifically, the graph is embedded in a (k − 1)-simplex, and
unique k-colorability is reduced to rigidity of the (k − 1)-simplex embedding. Since
the inner product of every two simplex vertices is −1/(k − 1), this gives the result
about unique vector k-colorability. Note that in the definition of vector coloring, the
inner product is required to be at least −1/(k − 1), not necessarily equal. Therefore
unique vector k-colorability reduces to rigidity with cables as well as bars, thus taking
full advantage of the rigidity framework.
At the end of Sect. 2 we use our recipe to obtain an explicit construction of a family
of uniquely k-colorable expander graphs. Our graphs are also vertex-transitive, and
the construction uses good Cayley expanders (see e.g. [
29,33
]).
Finally let us mention that our results about k-colorability are related to the work
of Alon and Kahale [
3
] on planted k-colorable graphs.
1.3 Definitions and Preliminaries
Before we press on with a formal description of our results, we establish a few key
notions and useful facts.
A d-dimensional tensegrity framework p is a configuration of n points in Rd , in
which every two points are connected using a strut, or a cable, or a bar, or not connected
at all. (A strut is a structural component which resists longitudinal compression, a
cable resists longitudinal extension, and a bar resits both). We say that a configuration
q satisfies the tensegrity constraints of p if for every strut connecting point u and
point v we have q(u) − q(v) ≥ p(u) − p(v) , for every cable q(u) − q(v) ≤
p(u) − p(v) and for every bar q(u) − q(v) = p(u) − p(v) . We say that p is
universally rigid if every configuration q (in any dimension) that satisfies the tensegrity
constraints is congruent to p (in particular, all constraints are satisfied with equality).
The tensor product of a graph G with a graph H is the graph G ⊗ H . Its vertex set
is V (G ⊗ H ) = V (G) × V (H ), and its edge set satisfies ((u, x ), (v, y)) ∈ E (G ⊗ H )
iff (u, v) ∈ E (G) and (x , y) ∈ E (H ). The tensor product is a well known notion
in graph theory, also called the graph weak product, or the Kronecker product [
30
].
The adjacency matrix A(G ⊗ H ) is easily seen to be the matrix tensor (or Kronecker)
product of the adjacency matrices of G and H . A well known fact is that if λ1, . . . , λs
are the eigenvalues of A(G) and μ1, . . . , μt are those of A(H ) (listed according to
multiplicity), the eigenvalues of A(G ⊗ H ) are λi μ j for i = 1, . . . s, j = 1, . . . t .
For a graph G, let G+ be the graph obtained from G by adding a new vertex v0 and
connecting it to all vertices of G.
2 Main Results
Our main contribution is a “recipe” how to cook tractable, universally rigid, GRP
instances. Informally, our recipe is to take a small universally rigid framework, and
tensor it with a good expander graph. We demonstrate this construction using two
examples: The k-simplex configuration (Theorem 1) and the Cauchy polygon on eight
vertices (Theorem 2). Finally, we show how to use the k-simplex result to obtain a
construction of uniquely k-cloroable graphs, which are also uniquely vector k-colorable.
The k-Simplex Configuration A regular k-simplex is a k-dimensional regular polytope
which is the convex hull of its k + 1 vertices. We use Kk to denote the complete graph
on k vertices x1, . . . , xk . For an arbitrary graph H, the simplex configuration of the
graph product Kk ⊗ H assigns all vertices of the from (xi , ∗) with the i th vertex of
the regular (k − 1)-simplex in Rk−1. In other words, each color class of Kk ⊗ H is
mapped to another vertex of the (k − 1)-simplex. In case we have the additional vertex
v0 (connected to all other vertices), then it is assigned the barycenter of the simplex.
Theorem 1 Let H be an r-regular graph on n vertices that satisfies λ(H ) < r/(k − 1),
and let G = Kk ⊗ H . Then the simplex configuration of G+ is universally rigid.
Furthermore, the unique solution to the corresponding GRP problem can be computed
in polynomial time.
Let us emphasize the algorithmic task referred to in Theorem 1. The tensegrity
framework of the graph G is indeed constructed as in Theorem 1, but the algorithm
receives only a list of pairwise distances, in an arbitrary order, and is required to
reconstruct the k-simplex configuration out of that. This task in general is NP-hard.
We remark that in this graph theoretical setting, the mathematical notions that are
used to prove universal rigidity reduce to standard calculations involving quadratic
forms that arise in the context of the Rayleigh quotient definition for the eigenvalues
of a matrix (another example is the Hoffman [
20
] bound for the size of independent
sets in a graph). Thus in some sense, the language of universal rigidity can be viewed
as a generalization of those ideas in a geometric setting.
The Cauchy Polygon Configuration Our second result has a true geometric flavor.
Denote by C8 the Cauchy polygon on eight vertices, x1, . . . , x8, which form a regular
8-gon inscribed into a unit circle (see Fig. 2). We refer to [
11,10,36
] for more about
Cauchy polygons and their role in rigidity theory. Note that the short edges in C8 have
length 2 − √2, and long edges have length √2. For a graph G = C8 ⊗ H , the
C8-configuration of G+ assigns all vertices of the form (xi , ∗) with the i th vertex of
the Cauchy Polygon in R2, and v0 with the origin (v0 is the additional vertex that is
connected to all vertices of the C8).
Theorem 2 Let H be an r -regular graph on n vertices that satisfies λ(H ) < √2r/3,
and also let G = C8 ⊗ H . The C8-configuration of G+ is universally rigid.
Furthermore, the solution to the corresponding GRP problem can be computed in polynomial
time.
Let us note a connection between the realizations of G = C8 ⊗ H and certain
3-circular 8-colorings of G (see [
40
] for definitions). We elaborate more in Sect. 8.2.
Uniquely k-Colorable Graphs The next theorem is a corollary of Theorem 1. It
describes a general construction of a family of uniquely k-colorable graphs, which
have the extra property of being uniquely vector k-colorable as well.
Theorem 3 Let H be an r -regular graph with λ < r/(k − 1). Then G = Kk ⊗ H is
uniquely k-colorable and uniquely vector k-colorable. Furthermore, the k-colorability
problem for G can be solved in polynomial time.
Finally, let us show how to use Theorem 3 to obtain an explicit construction of
such family. Let H be an r -regular Ramanujan expander graphs (such as described
in [
33
]), satisfying λ(H ) ≤ 2√r − 1. If r ≥ 4(k − 1)2, then G = Kk ⊗ H is
uniquely k-colorable. In particular, when {Hp} are the 17-regular Ramanujan graphs
on n = ( p2 − 1) vertices ( p is a prime), as in [
33
], we can take k = 3 and set
G p = K3 ⊗ Hp. The graphs {G p} are then 34-regular uniquely 3-colorable graphs on
3n vertices, and vector chromatic number 3. Furthermore, since the Ramanujan graph
and Kk are both vertex transitive, so is G.
Paper’s Organization The remainder of the paper is organized as follows. In Sect. 3
we discuss in details Connlley’s universal rigidity result. In Sect. 4 we discuss the
algorithmic perspective of our result. Then in Sects. 5, 6 and 7 we prove our main
results. Conclusions and open problems are given in Sect. 8. For completeness, the
proof of Connelly’s sufficient condition for universal rigidity, Theorem 4, is given in
Appendix B.
3 Universal Rigidity
The main tool we use in proving our results is Connelly’s universal rigidity theorem.
In this section we set the backdrop for the theorem, and give its exact statement.
For a graph G, let P(G) be the space of all configurations of the graph G, and let
Pd (G) be the space of configurations that lie entirely in the Rd (or congruent to a
configuration in Rd ).
An equilibrium stress matrix of a configuration p(G) is a matrix indexed by
V × V satisfying:
1. is a symmetric matrix,
2. If (u, v) ∈/ E , and u = v then (u, v) = 0.
3. For every u ∈ V , v∈V (u, v) = 0.
4. For every u ∈ V , v∈V (u, v)p(v) = 0.
The stress matrix is considered proper if it satisfies uv ≥ 0 for every strut
{u, v} and uv ≤ 0 if it is a cable.
We say that the edge directions of a configuration p in Pd (G) lie on a conic at
infinity if there exists a non-zero symmetric d × d matrix Q such that for all edges
(u, v) of G [p(u) − p(v)]t Q[p(u) − p(v)] = 0. A symmetric matrix Q is positive
semidefinite (or PSD for short) if for every vector x, xt Qx ≥ 0.
The following is a sufficient condition for a configuration to be universally rigid.
It was derived by Connelly in a series of papers, see [
12
] for example. The complete
proof is given in full details in Appendix B.
Theorem 4 Suppose that G is a graph with d +2 or more vertices and p is a
configuration in Pd (G). Suppose that there is a proper PSD equilibrium stress matrix (p, G)
whose rank is n − d − 1. Also suppose that the edge directions of p do not lie on a
conic at infinity. Then p is universally rigid.
4 Semidefinite Programming and the Algorithmic Perspective
In Theorems 1 and 2 we claim that one can efficiently find the unique solution to the
specific GRP. In this section we elaborate on the algorithmic aspect of this problem.
As we mentioned already, the GRP is naturally expressed as a semi-definite program.
What follows is a self-contained discussion, which appears in [
38
] and [
22
] as well.
Let ei be the i th standard basis vector of Rn. By A 0 we mean that A is a
symmetric PSD matrix. For two n × n matrices A, B define A ◦ B = in, j=1 Ai j · Bi j .
Let X = [x1|x2| · · · |xn] be a k × n matrix (xi is the i th column of X). One can easily
verify that
xi − x j
2
= ei − e j t Xt X ei − e j = ei − e j ei − e j t ◦ Xt X .
Define the matrix Li j = (ei − e j )(ei − e j )T . Given a graph G = (V , E ) and a set of
weights {wi j : (i, j ) ∈ E }, the GRP is equivalent to the following feasibility SDP:
Find Y s.t.
2
Li j ◦ Y = wi j
Y
0.
∀(i, j ) ∈ E (G),
(4.1)
Let us explain why this formulation is equivalent to the GRP. For a symmetric matrix Y,
Y is PSD iff there exists a matrix B such that Y = Bt B (the Cholesky decomposition).
Let Y be a solution to the above SDP, and write Y = Xt X. The first constraint ensures
that the columns of X, treated as a configuration of the graph G, satisfy the distance
constraints.
Unfortunately, this still does not quite suffice for the algorithmic part of our result,
since the SDP can only be computed up to a finite precision in polynomial time (the
running time is proportional to log 1/ε, where ε is the desired precision). Universal
rigidity does not exclude the existence of a configuration q which looks very different
than p (maybe even in a different dimension), and satisfies the distance constraints
up to a tiny error. So q might be an output of the SDP, when the precision is finite.
Fortunately, there is a family of SDP solvers called path-following algorithms, see
for example [
2
], which compute a series of solutions (Yi , Si ), i = 1, 2, . . ., such that
limi→∞(Yi , Si ) = (Y∗, S∗), where Y∗, S∗ are optimal solutions to the primal and dual
SDP programs. Since in our case, Y∗ is the unique solution to the primal SDP, then
using a path-following method guarantees that indeed the output is an approximation
of the unique solution. More about the path-following method in our context is given
in Appendix A.
Finally, recall that the solution to the SDP is only an approximation. Consider the
concrete example of the k-simplex configuration of a graph G, which we defined in
Sect. 2. Suppose that we fed the SDP solver with the constraints implied by G and
indeed it came back with the k-simplex configuration, but now the points are accurate
up to some small error. Since the distance between two points (in the original k-simplex
configuration) is much larger than the error (which can be made arbitrarily small), we
can group the vertices of the graph according to vertices whose assigned vectors are
close to each other, say their inner product is positive (it should be −1/(k − 1) in the
exact solution). This ensures that we indeed reconstruct the k-simplex configuration
exactly.
Eigenvector Approach Let us remark that in the case of Theorem 1, one can use a
different algorithmic approach to efficiently extract the k-simplex configuration. Indeed,
the k −1 eigenvectors corresponding to the least eigenvalue −r of the adjacency matrix
A of Kk ⊗ H , carry information about the k-coloring. For example, any vector which
is constant on every color class, and whose entries sum to zero is an eigenvector of
A belonging to the eigenspace of −r . This argument is traced for example in [
3,9
]
or [10]. This might as well be the case for the Cauchy configuration in Theorem 2,
although we haven’t checked the details. A prominent advantage of this approach is
the fact that it is computationally lighter than solving an SDP. On the other hand,
one advantage of the SDP approach is captured in the following setting. Suppose that
on top of the graph Kk ⊗ H , one adds additional edges that respect the partitioning
imposed by Kk . This operation may jumble the spectrum of the graph, and in general
the aforementioned eigenvector approach to extract the realization using
eigenvectors, may not work. The SDP approach however is resilient to such “noise”. This
line of research was followed in [
7
] for example, under the title “the semi-random
model”.
5 Proof of Theorem 1
Recall that Kk is the complete graph on k vertices x1, . . . , xk , and H is some r -regular
graph satisfying λ < r/(k − 1) (λ = maxi≥2 |λi |). Let G = Kk ⊗ H , and the
configuration p of G+ assigns every vertex of the form (xi , ∗) with the i th vertex of
the k-simplex (we think of the k-simplex whose vertices lie on the unit ball in Rk ),
and v0 with the origin. We shall prove the theorem for the case k = 3, as the general
k case is easily deduced in a similar fashion.
If k = 3, then the 3-simplex is just an equilateral triangle (the dimension is d = 2).
Let P1, P2, P3 be the three vertices of an equilateral triangle whose center of mass is
at the origin O and |O Pi | = 1 for i = 1, 2, 3. The configuration p assigns Pi to all
vertices of the form (xi , ∗), and O to the vertex v0. In this configuration, −O−→Pi is a unit
vector, and −P−i→Pj is of length √3 for every i = j .
The heart of the proof lies in providing a PSD equilibrium stress matrix whose
nullspace has dimension d + 1 which is three in our case. Let A be the n × n adjacency
matrix of H , and be the adjacency matrix of K3. We let 13n ∈ R3n be the column
all-one vector, I3n is the identity 3n × 3n matrix. Define
1
I3n + r
⊗ A
−3 · 1t3n
⎞
The matrix is an (3n+1)×(3n+1) matrix and indeed in G+ there are 3n+1 vertices.
The theorem follows from the following Lemmas 5–7. Before proceeding with the
proof, let us remark how the general-k setting looks like. As mentioned before, each
color class of G is assigned with a different vertex of the regular (k −1)-simplex whose
barycenter is the origin. The point v0 is assigned the origin. The matrix changes in
the natural way: replace three by k, and nine by k2. The proofs of Lemmas 5–7 are
adjusted in the same straightforward way to accommodate the general k setting.
Lemma 5 The edge directions of p do not lie on a conic in infinity.
Lemma 5 follows immediately by noticing that the stressed directions in p contain
least three distinct directions, and a conic on the projective line has at most two points.
Lemma 6
(G+, p) is an equilibrium stress matrix.
Lemma 7 The dimension of the null space of
Proof (Lemma 7) Our first observation is that 13n+1 is an eigenvector of
corresponding to the eigenvalue 0 (this is true for every equilibrium stress matrix, by the third
property in its definition). One can also verify that ξ = (1, 1, . . . , 1, −3n) ∈ R3n+1
is an eigenvector of corresponding to the eigenvalue 3 + 9n.
Define the subspace W = span{13n+1, ξ }. A symmetric m ×m matrix has a set of m
orthogonal eigenvectors. Since dim(W ) = 2, one can find the remaining (3n + 1) − 2
eigenvectors of in a subspace perpendicular to W. Consider z = (x1, x2, . . . , x3n, y)
s.t. z⊥W . In particular, z⊥13n+1, which implies
Also z⊥ξ , which implies
y = −
3n
i=1
The only way to satisfy both equations is by forcing i3=n1 xi = 0, which gives y = 0.
Therefore the vector z = (x1, x2, . . . , x3n , 0) = (x, 0). Let z⊥W be an eigenvector
of corresponding to the eigenvalue λ. Since the last entry of z is 0,
z = λz
⇒
1
I3n + r
The eigenvalues of are easily seen to be 2, −1, −1 (in the general k setting they are
(k − 1) and −1 with multiplicity k − 1). The eigenvalues of A are r with multiplicity 1
(this is true for every connected r -regular graph, and we know H is connected, since
otherwise its second largest eigenvalue in absolute value would be r ), and all others are
< r/2 in absolute value. By the discussion in Sect. 1.3, the eigenvalues of ⊗ A are
−r with multiplicity 2, and the smallest eigenvalue is no smaller than 2·(−r/2) = −r .
Multiplying by 1/r , we get −1 with multiplicity 2, and the rest have absolute value
< 1. Returning to I3n + r1 ⊗ A, we have 0 with multiplicity 2, and the remaining
eigenvalues are positive.
To conclude, 0 is an eigenvalue of with multiplicity 3 (this gives the required
rank of the null space). The remaining eigenvalues are positive. It is easy to see that
a matrix is PSD iff all its eigenvalues are non-negative. This gives the second part of
the lemma.
The proof of Theorem 1 now easily follows. Lemmas 5–7, together with Theorem 4
imply that the simplex configuration for G+ is universally rigid. The discussion in
Sect. 4 implies the algorithmic part of the theorem.
5.1 Proof of Theorem 3
Fix an integer k > 0, and let H be a r -regular graph satisfying λ < r/(k − 1). We
need to prove that G = Kk ⊗ H is uniquely k-colorable. Assume otherwise. Then we
can construct two non-congruent realizations of G+, by mapping color class i to the
i th vertex of the k-simplex. This however contradicts the universal rigidity established
in Theorem 1.
For the vector chromatic number part, we need the slightly more general version
of Theorem 4 which appears in Appendix B. In that case, the bars are replaced with
struts (i.e, the edges can now stretch). A configuration p is universally rigid if every
configuration with edge lengths at least the ones in p is congruent to p. The conditions
in Theorem 1 imply also this version of universal rigidity. Observe that if xi , x j are
two unit vectors, then arccos( xi , x j ) is just the angle between xi and x j , which
determines the length of the edge (i, j ) ∈ E . Therefore, using the broader notion of
rigidity, if G has two different vector k-colorings, then the two configurations that
assign each color class with a different vector of the coloring, give two non-congruent
realizations of G, contradicting the universal rigidity.
For the algorithmic part, observe that once we compute the realization of G+, we
can group the vertices according to the vectors that the SDP assigned them (take all
vertices whose vectors are at distance, say, at most 0.01, to the same color class).
Another way to obtain the coloring is to compute the eigenvectors corresponding to
the (k − 1) smallest eigenvalues. Those eigenvectors encode the k-coloring (see [
9
]).
6 Proof of Theorem 2
We think of C8, the Cauchy polygon on eight vertices, bounded in the unit circle in
R2, centered around the origin. Let H be a r -regular graph satisfying λ < √2r/3
(λ = maxi≥2 |λi |). Let G = C8 ⊗ H , and the configuration p of G+ assigns every
vertex of the form (xi , ∗) with the i th vertex of C8, and v0 with the origin.
Again, the heart of the proof lies in providing a PSD equilibrium stress matrix
whose nullspace has dimension d + 1 which is 3 in our case. Let A be the n × n
adjacency matrix of H , and be the following weighted adjacency matrix of C8.
We let 18n ∈ R8n be the column all-one vector, I8n is the identity 8n × 8n matrix.
Define
= ⎜⎝
⎛
The proofs of Lemmas 8 and 9 are a straightforward verification procedure and are
given in Sect. 7. We now give the proof of Lemma 10.
Proof (Lemma 10) Our first observation is that 18n+1 is an eigenvector of
corresponding to the eigenvalue 0 (this is true for every equilibrium stress matrix, by the
third property in its). One can also verify that ξ = √(1, 1, . . . , 1, −8n) ∈ R8n+1 is an
eigenvector of corresponding to the eigenvalue ( 2 − 1)(8n + 1).
Define the subspace W = span{18n+1, ξ }. A symmetric m ×m matrix has a set of m
orthogonal eigenvectors. Since dim(W ) = 2, one can find the remaining (8n + 1) − 2
eigenvectors of in a subspace perpendicular to W . Consider z = (x1, x2, . . . , x8n, y)
s.t. z⊥W . In particular, z⊥18n+1, which implies
Also z⊥ξ , which implies
y = −
xi .
8n
i=1
The only way to satisfy both equations is by forcing i8=n1 xi = 0, which gives y = 0.
Therefore the vector z = (x1, x2, . . . , x8n, 0) = (x, 0). Let z⊥W be an eigenvector
of corresponding to the eigenvalue λ. Since the last entry of z is 0,
z = λz ⇒
√
1
2 · I8n + r
The eigenvalues of √2 · I8n + r1 ⊗ A are the eigenvalues of r1 ⊗ A when adding
√2 to every eigenvalue. The eigenvalues of can be computed (using MATLAB for
example), and they are {−√2, −√2, −1, −1, −1, √2, √2, 3}. The eigenvalues of A
are r with multiplicity 1 (this is true for every connected r -regular graph, and we
know H is connected, since otherwise its smallest eigenvalue would be −d, and we
know that it is larger than −√2r/3), and all others are < √2r/3 in absolute value
(by the conditions on the theorem). By the discussion in Sect. 1.3, the eigenvalues
t3ohf·e (r−e⊗s√tAh2arv/aer3e)a−b=s√o−l2ur√tew2vriat.lhuMemu<ultlitp√iply2lii.cniRgtyebt2uy,r1na/innrdg, twthoee√gsm2etIa8−lnle√+st2er1wigiet⊗hnvmAal,uulwetiepislhilcaaivrtgyee02r,wtahinathnd
multiplicity 2, and the remaining eigenvalues are positive.
To conclude, 0 is an eigenvalue of with multiplicity 3 (this gives the required
rank of the null space). The remaining eigenvalues are positive. It is easy to see that
a matrix is PSD iff all its eigenvalues are non-negative. This gives the second part of
the lemma.
The proof of Theorem 2 now easily follows. Lemmas 8–10, together with Theorem 4
imply that Cauchy-polygon configuration for G+ is universally rigid. The discussion
in Sect. 4 implies the algorithmic part of the theorem.
7 Missing Proofs from Sects. 5 and 6
7.1 Proof of Lemma 6
Let us go over the required properties in the definition of a stress matrix (Sect. 3). is
a symmetric matrix. There is no limitation on the diagonal entries, and it has non-zero
entries only where there is an edge of G+. The sum of every row i is indeed 0: For the
first 3n rows, aii = 1, and the sum of the remaining entries is 1/r times the degree of
a vertex i , which is 2r . This is balanced by the −3 at the last column. For the last row,
the sum is 3n · (−3) + 9n = 0. As for the last property, for every v ∈ V (G), treating
the configuration as vectors,
1
(v, w)p(w) = −O−→P1 + r
1
(v, w)−O−→P2 + r
w∈V3
(v, w)−O−→P3 − 3 · 0
−→
7.2 Proof of Lemma 8
1 (√2, √2), P3 =
The four vertices of the Cauchy polygon are P1 = (1, 0), P2 = 2
(0, 1) and Pv0 = (0, 0) (omitting the 0-padding of the points). Let
−O−→Pi = 0.
w∈V
w∈V
For the last row, corresponding to v = v0, we have
(v0, w) p(w) = −3n
−O−→P1 − 3n
−O−→P2 − 3n
−O−→P3 + 9n · 0
−→
w∈V1
3
i=1
= −3n
−O−→Pi = 0.
w∈V2
w∈V3
Q =
a b
b c
be a symmetric 2 × 2 matrix. Solving [ Pi − Pv0 ]Q[ Pi − Pv0 ]t = 0 for i = 1, 3 gives
a = c = 0. Solving [ P2 − Pv0 ]Q[ P2 − Pv0 ]t = 0 gives b = 0.
7.3 Proof of Lemma 9
Let us go over the required properties in the definition of a stress matrix (Sect. 3).
The stress matrix is a symmetric matrix. There is no limitation on the diagonal
entries, and besides it we have non-zero entries only where there is an edge of G+.
The sum of every row i is indeed 0: For the first 8n rows, aii = √2, and the sum
of the remaining entries is 1/r times the degree times the weight, which is gives
−1. This is balanced by the 1 − √2 at the last column. For the last row, the sum is
√ √
8n · (1 − 2) + 8n · ( 2 − 1) = 0.
Let us treat the configuration as vectors. Look at a vertex v = (x1, u), where
x1 corresponds to the point P1 = (1, 0) (since C8 is symmetric for every vertex,
we can just consider this case). The vertex v has 4d neighbors, d of each form
(x2, ∗), (x3, ∗), (x7, ∗), (x8, ∗). The vectors corresponding to its neighbors of the
form (x3, ∗) and (x7, ∗) are antipodal, and therefore cancel each other (as long as both
are assigned with the same weight, which is 0.5 in our case). The sum of every two
vectors of the form (x2, ∗) and (x8, ∗) is r1 √2 · −O−→P1. Therefore,
w∈V
1 √
(v, w) p(w) = −1 · r · r
2 · −O−→P1 + √2 · −O−→P1 = −→0.
For the last row, corresponding to v = v0, we have
w∈V
(v0, w) p(w) = 8n
√
−→
2 − 1 · 0 + 1 −
√2
8
i=1 w∈Hvi
−O−→Pi = −→0.
8 Conclusions and Open Problems
8.1 In this paper we characterized two families of tractable GRP instances, using a
blow-up of the regular k-simplex and the Cauchy polygon with a suitable r -regular
graph. Both the regular k-simplex and the Cauchy polygon C8 are universally rigid
frameworks by themselves. Our results suggests perhaps the following more
general method for generating universally rigid frameworks (and thus tractable GRP
instances): take a universally rigid framework R and an r -regular graph H . Find a
condition on λ(H ) (the second largest eigenvalue in absolute value) so that R ⊗ H is
universally rigid. An interesting question for future research would be to prove that
indeed the method works in this full generality, or come up with a counter example.
8.2 Let us note that every realization of G = C8 ⊗ H into Rd corresponds to a 3-circular
8-coloring of G (see [
40
] for a comprehensive survey). As of yet, we could not prove
the reverse claim, although we conjecture that it holds, and that G is a uniquely
3circular 8-colorable graph. Explicit constructions of c-circular k-colorable graphs with
good expansion is an open question in general (cf. [
40
]), and we propose our graphs
G = C8 ⊗ H as good candidates in the case c = 3 and k = 8. Finally, let us mention
that in this spirit general frameworks are related to general graph homomorphism
problems, where uniquely homomorphic graphs are of importance again (see [
27
]).
Acknowledgments We are grateful to Bob Connelly, Michael Krivelevich, Nati Linial and Benjamin
Sudakov for useful discussions and helpful remarks, and to an anonymous referee for pointing out the
interesting relationship with vector k-colorings. We would also like to thank Anthony Man-Cho So and
Greg Blekherman for informative comments about the SDP part.
Appendix A. Self-Duality
One of the requirements for the path-following methods to apply is that both the primal
and dual SDP have strictly feasible solutions (by strict we mean positive-definite). This
will not be the case for the SDP we just described since the rank of Y is the dimension
of the configuration p for the GRP. However, Y is positive-definite iff it has full rank,
which in most cases will not be true. To overcome this problem, we use the self-dual
method (see [
15, 16
]) which embeds both the primal and dual SDP in a new SDP,
which is self-dual, and has strict feasible solutions. The solutions of the new SDP give
the solution to the embedded programs iff the original primal and dual programs are
gap free (that is, they both have the same maximal/minimal solution value). Let us
show that indeed this is the case for us. Let b be the vector b = (wi2j ) for (i, j ) ∈ E .
The dual to (4.1) is
min bt x
x,S
(i, j)∈E
S
0.
xi j Li j + S = 0,
(A.1)
The solution x = 0 and S = 0 is a feasible solution to (A.1) whose value is 0. By the
weak duality theorem, this is the optimal value of the dual SDP (since the primal has
value 0).
We are going to embed both our primal and dual programs in the following self–dual
SDP:
min
θβ
Li j Y − τ bi j + θ b¯ i j = 0
|E|
−
i=1
xi j Li j − Z = 0,
(i, j ) ∈ E ,
bt x + θ − ρ = 0,
− b¯t x − I • Y − τ − ν = −β,
Y, Z 0, x ∈ R|E|, θ , ρ , τ, ν ≥ 0.
where b¯i j = bi j − tr (Li j ). One can verify that this SDP is self dual, and since setting
all parameters to 0 is a feasible solution, by the self-duality we get that this is indeed
the optimal value of the SDP, and θ = 0 in the optimum. Furthermore, de-Klerk et al.
[
15
] shows that τ > 0 iff the original pair of primal and dual SDP were gap free. This
is indeed the case for us, and we get that τ > 0 in the optimal solution. Therefore the
optimal solution to the self-dual satisfies
Li j Y = τ bi j = τ wi2j .
Therefore, if the original SDP had a unique solution, then the self-dual has a unique Y
that satisfies the first constraint (since if Y is part of a solution to the self-dual, τ −1Y
is a solution to the primal).
The second requirement for applying a path-following method is that the matrices
Li j be linearly independent. Since there are no parallel edges in G, this is indeed the
case.
Appendix B. Proof of Theorem 4
For two configurations p, q we use the notation p q to denote the fact that p(u) −
p(v) = q(u) − q(v) for every bar (u, v) ∈ E , p(u) − p(v) ≥ q(u) − q(v)
for a cable (u, v) ∈ E and p(u) − p(v) ≤ q(u) − q(v) for a strut.
Lemma 11 Let (p, G) be a proper equilibrium stress matrix for the configuration
p(G). Let q be another configuration for G s.t. p q. If is PSD, (q, G) is an
equilibrium stress as well. Furthermore, all tensegrity constraints hold with equality.
Proof The first three requirements that needs to satisfy as an equilibrium stress
matrix do not depend on p. Therefore, they hold for q as well. It remains to verify the
last property, that is
(u,v)∈V ×V
ωuv
(uv).
Let us define the matrix (uv) to be the n × n matrix with −1 in the (u, v) and
(v, u) entries, 1 in the (u, u) and (v, v) entries, and 0 otherwise. Define ωuv = − uv.
We claim that
This is clear for the off-diagonal entries. For the diagonal entries, observe that since
is an equilibrium stress matrix, the sum of every row is 0, therefore the diagonal
entry uu must equal the negative of the sum of all entries of the u-row. This is
equivalent to having the 1 entry in (uu). For a vector x = (x1, x2, . . . , xn) consider
the quadratic form xt x. It is easy to see that xt (uv)x = (xu − xv)2, therefore it
follows that
xt x = xt
ωuv
(uv) x =
Think of the entries of the points in p as formal variables (that is, n2 variables), and
let us define the following function E (p) (which is usually called the energy function
in rigidity theory):
E (p) =
ωuv p(u) − p(v) 2.
Let p0 be a configuration such that (p0, G) is an equilibrium stress matrix. The
first observation that we make is that ∇ E (p0) = 0. To see this, let Z be the d × n
matrix such that the uth column of Z is p0(u). Let xu be the uth row of Z (i.e., the
j th entry in xu is the uth entry of p0( j ) for j = 1, . . . , n). Fix a vertex u ∈ V and
consider the variable xuv—the vth entry of xu .
∂ E
∂ xuv
= 2
ωvw xuv − xwv .
w∈V
The last two properties of a stress matrix imply that if (p0, G) is an equilibrium
stress, then
Combining the last two equations we get that if (p0, G) is an equilibrium stress
matrix, ∇ E (p0) = 0.
The next observation that we make is that E (p0) = 0. Define y = t p0, then
E (y) = E (t p0) = t 2 E (p0) (the last equality just follows from the quadratic form of
E ). Using the chain rule,
On the other hand
E (y) = ∇ E (y) · y = ∇ E (t p0) · p0.
E (y) = t 2 E (p0)
= 2t E (p0).
Combining the two and setting t = 1 (and recalling that ∇ E (p0) = 0), we get
E (p0) = 0.
E (p) = x1 x1t + x2 x2t + · · · + xn xnt.
Since is PSD, it holds that xi xit ≥ 0 for every i , hence E (p) ≥ 0.
Now we are ready to prove that (q, G) is an equilibrium stress matrix as well, if
p q. First observe that for every (u, v) ∈ E , ωuv q(u)−q(v) ≤ ωuv p(u)−p(v) .
This is obvious for bars (which hold with equality). For struts, q(u) − q(v) ≥
p(u) − p(v) , and uv ≥ 0 since is a proper stress matrix. Therefore, ωuv ≤ 0,
and the inequality holds. The same argument implies the inequality for cables. This
observation, combined with E (q) ≥ 0 gives
0 ≤ E (q) ≤ E (p) = 0
⇒
E (q) = 0.
This also means that the struts and cables constraints must hold with equality. If
E (q) = 0, then q is a minimum point for E, and therefore ∇ E (q) = 0. However this
implies that
Combining this observation with the third property of a stress matrix,
w∈V
So we conclude that
w∈V
(u, w)q(w) = −
ωuwq(w) = −q(u)
ωuw = q(u)
(u, w) = 0.
w∈V
Before we state the next lemma, we remind the reader that an affine transformation
T : Rn → Rn is a function of the form T(x) = Ax + b, A ∈ Mn×n(R) and b ∈ Rn;
T is linear if b = 0. For a configuration p, T(p) stands for the ordered set {T(p(u)) :
u ∈ V }.
Lemma 12 If (p, G) is a PSD equilibrium stress matrix of degree n − d − 1, G has
at least d + 2 vertices, and q p is another configuration, then there exists an affine
transformation T such that T(p) = q.
Proof The configuration p has dimension d, therefore there exists an isometry T1 =
A1x + d1 (A1 is an orthogonal matrix, therefore T1 preserves edge lengths) such that
T1(p) lies in Rd (we pad every vector in Rd with n − d zeros for consistency of
dimensions). Let p∗ = T1(p). Define b1 = p∗(1) and set p = {p∗(u) − b1 : u ∈ V }.
Similarly define q = {q(u) − b2 : u ∈ V }, where b2 = q(1). Clearly if p q then
p q . Therefore it suffices to prove that there exists a linear affine transformation T
such that T(p ) = q . If this is indeed the case, then q (u) = Ap (u) for some matrix
A. Recalling that q (u) = q(u) − b2, and p (u) = p∗(u) − b1 = A1p(u) + d1 − b1,
we get q(u) − b2 = A(A1p(u) + d1 − b1). This implies q(u) = Cp(u) + c for
C = AA1 and c = b2 + A(d1 − b1), which is just a vector in Rn. In other words,
q = U(p) for the affine transformation U(x) = Cx + c. It can be verified rather easily
that if (p, G) is an equilibrium stress matrix, so is (T(p), G) (for an arbitrary affine
transformation T). Hence from now on we shall consider only the configurations p
and q
Recall the definition of the matrix Z from above, the columns of Z are the vectors
{p (u) : u ∈ V }. Observe that by our construction of p , p (1) = 0 and let us
assume w.l.o.g that the vectors p(2), . . . , p(d + 1) are linearly independent. Since also
q (1) = 0, every linear transformation satisfies T(p (1)) = q (1). We can certainly
define a linear affine transformation T such that T(p (i )) = q (i ) for i = 2, . . . , d + 1.
If this also holds for i = d + 2, . . . , n then we are done. If not, then there is some
index i > d + 1 such that T(pi ) = qi . Therefore, T(p (i )) − q (i ) is not the zero
vector, so there exists some coordinate i0 which is non-zero. Define the vector e =
(e1, e2, . . . , en ) to be: e j is the i0 coordinate of T(p ( j )) − q ( j ). Let Z∗ be the matrix
Z in which row d + 2 is replaced with e. Observe that the first d + 1 entries in row
d + 2 are 0 (just because T(p (i )) = q (i )), and in the remaining n − d − 1 entries
there is at least one non-zero entry. It is not hard to see that this implies that the rank
of Z∗ is at least d + 1. The fourth property in the definition of a stress matrix (Sect. 3)
implies that if (p , G) is an equilibrium stress matrix, then the rows of Z are in the
kernel of . Also if a linear affine transformation is applied to p , the rows of the new
matrix Z will be in the kernel (using the linearity of matrix multiplication). Similarly
to Z, we can define the matrix Y whose columns are the vectors in q . Since (q , G)
is an equilibrium stress (by Lemma 11), the rows of Y are also in the kernel of .
These two facts imply that the vector e is going to be in the kernel of as well. To
conclude, all the rows of Z∗ belong to the kernel of and their rank is at least d + 1.
The vector 1n ∈ Rn always belongs to the kernel of (third property of a stress
matrix); since the first coordinate of every row in Z∗ are 0, 1n does not belong to the
span of the rows of Z∗. To conclude, the kernel of contains the span of the rows of
Z∗, which has dimension at least d + 1, and the vector 1n. The rank of is then at
most n − (d + 2), which contradicts our rank assumption. Hence, T(p (i )) = q (i ) for
every i , and we have shown that there is a linear transformation such that T(p ) = q
as required.
Lemma 13 Let (p, G) be a proper PSD equilibrium stress matrix for the
configuration p(G). Let q be another configuration for G s.t. p q. If there is an affine
transformation T such that T(p) = q, then either the directions of p lie on a conic at
infinity, or q is congruent to p
Proof Lemma 11 implies that the tensegrity constraints hold with equality. Therefore
since p q, we have that for every (u, v) ∈ E (G),
0 =
q(u) − q(v) 2 − p(u) − p(v) 2
=
A(p(u) − p(v)) 2 − p(u) − p(v) 2.
= (Ap(u) + b) − (Ap(v) + b) 2 − p(u) − p(v) 2
= Ap(u) − Ap(v) 2 − p(u) − p(v) 2
Using the fact that Ax 2 = (Ax)t Ax = xt At Ax, the latter can be restated as
Define Q = At A − In . If Q = 0, then by the definition in Sect. 3, the directions of
p indeed lie on a conic at infinity. If Q = 0, this means that At A = In , or in other
words, A is an orthogonal matrix. Thus T = Ax + b is an isometry, and therefore p
and q are congruent.
Theorem 4 now follows easily from these lemmas. Let p be a configuration in
Rd for the graph G, satisfying the conditions of Theorem 4. That is, (p, G) is a
proper PSD equilibrium stress matrix with rank n − d − 1. Further, we assume that
the directions of p do not lie on a conic at infinity. Let q be another configuration that
satisfies the tensegrity constraints of G(p). Lemma 12 asserts that there exists an affine
transformation T such that T(p) = q. Lemma 13 then gives that either the directions
of p lie on a conic at infinity or T is a congruence. But the conditions of the theorem
exclude the former, and we are left with p and q are congruent.
1. Alfakih , A. , Wolkowicz , H.: On the embeddability of weighted graphs in euclidean spaces . Research Report CORR 98-12 . University of Waterloo, Waterloo ( 1998 )
2. Alizadeh , F. , Haeberly , J.-P. , Overton , M. : Primal-dual interior-point methods for semidefinite programming: convergence rates, stability and numerical results . SIAM J. Optim. 8 , 746 - 768 ( 1998 )
3. Alon , N. , Kahale , N.A. : A spectral technique for coloring random 3-colorable graphs . SIAM J. Comput . 26 , 1733 - 1748 ( 1997 )
4. Aspnes , J. , Eren , T. , Goldenberg , D. , Morse , A. , Whiteley , W. , Yang , Y. , Anderson , B. , Belhumeur , P.: A theory of network localization . IEEE Trans. Mobile Comput . 5 , 1663 - 1678 ( 2006 )
5. Barvinok , A. : Problems of distance geometry and convex properties of quadratic maps . Discrete Comput. Geom . 13 , 189 - 202 ( 1995 )
6. Boutin , M. , Kemper , G.: Which point configurations are determined by the distribution of their pairwise distances? Int. J. Comput. Geom. Appl . 17 , 31 - 43 ( 2007 )
7. Coja-Oghlan , A. : Coloring semirandom graphs . Combin. Probab. Comput . 16 , 515 - 552 ( 2007 )
8. Coja-Oghlan , A. : Graph partitioning via adaptive spectral techniques . Combin. Probab. Comput . 19 , 227 - 284 ( 2010 )
9. Coja-Oghlan , A. , Krivelevich , M. , Vilenchik , D. : Why almost all k-colorable graphs are easy to color . J. Theory Comput. Syst . 46 , 523 - 565 ( 2009 )
10. Connelly , R.: Rigidity and energy . Invent. Math . 66 , 11 - 33 ( 1982 )
11. Connelly , R.: Rigidity. In: Handbook of Convex Geometry , vol. A, pp. 223 - 271 . North-Holland, Amsterdam ( 1993 )
12. Connelly , R.: Stress and Stability, Chapt. II. Unfinished monograph ( 2001 )
13. Connelly , R. , Whiteley , W.: Second-order rigidity and prestress stability for tensegrity frameworks . SIAM J. Discrete Math. 9 , 453 - 491 ( 1996 )
14. Crippen , G. , Havel , T. : Distance geometry and molecular conformation . In: Chemometrics Series , vol. 15 . Research Studies Press, Somerset ( 1988 )
15. de-Klerk , E. , Roos , C. , Terlaky , T. : Initialization in semidefinite programming via a self-dual skewsymmetric embedding . Oper. Res. Lett . 20 , 213 - 221 ( 1997 )
16. de-Klerk , E. , Roos C. , Terlaky , T. : Infeasible-start semidefinite programming algorithms via selfdual embeddings . In: Topics in Semidefinite and Interior-Point Methods , vol. 18 , pp. 215 - 236 . AMS, Providence ( 1998 )
17. Doherty , L. , Pister K. , Ghaoui , L.E. : Convex position estimation in wireless sensor networks . In: Proceedings of INFOCOM , pp. 1655 - 1663 ( 2001 )
18. Fedorchuk , M. , Pak , I. : Rigidity and polynomial invariants of convex polytopes . Duke Math. J . 129 , 371 - 404 ( 2005 )
19. Feige , U. , Langberg , M. , Schechtman , G.: Graphs with tiny vector chromatic numbers and huge chromatic numbers . SIAM J. Comput . 33 , 1338 - 1368 ( 2004 )
20. Godsil , C. , Newman , M. : Eigenvalue bounds for independent sets . J. Combin. Theory Ser. B 98 , 721 - 734 ( 2008 )
21. Goemans , M. , Williamson , D. : 879-approximation algorithms for MAX CUT and MAX 2SAT . In: Proceedings of the 26th STOC , pp. 422 - 431 ( 1994 )
22. Gortler , S.J. , Thurston , D.P. : Characterizing the universal rigidity of generic frameworks . http://arxiv/ abs/1001.0172
23. Grötschel , M. , Lovász , L. , Schrijver , A. : Geometric Algorithms and Combinatorial Optimization. Springer, Berlin ( 1988 )
24. Harary , F. , Hedetniemi , S.T. , Robinson , R.W. : Uniquely colourable graphs . J. Combin. Theory 6 , 264 - 270 ( 1969 )
25. Hartley , R. , Zisserman , A. : Multiple View Geometry in Computer Vision . Cambridge University Press, Cambridge ( 2001 )
26. Havel , T. : Metric matrix embedding in protein structure calculations . Magn. Reson. Chem . 41 , S37 - S50 ( 2003 )
27. Hell , P. , Nešetrˇil , J.: Graphs and Homomorphisms . Oxford University Press, Oxford ( 2004 )
28. Hendrickson , B. : Conditions for unique graph realizations . SIAM J. Comput . 21 , 65 - 84 ( 1992 )
29. Hoory , S. , Linial , N. , Wigderson , A. : Expander graphs and their applications . Bull. Am. Math. Soc . 43 , 439 - 561 ( 2006 )
30. Imrich , W. , Klavžar , S. : Product Graphs. Wiley, New York ( 2000 )
31. Karger , D. , Motwani , R. , Sudan , M. : Approximate graph coloring by semidefinite programming . J. ACM 45 , 246 - 265 ( 1998 )
32. Lovász , L. : On chromatic number of finite set-systems . Acta Math. Acad. Sci. Hung . 19 , 59 - 67 ( 1968 )
33. Lubotzky , A. , Phillips , R. , Sarnak , P. : Ramanujan graphs . Combinatorica 8 , 261 - 277 ( 1988 )
34. Menger , K. : New foundation of euclidean geometry . Am. J. Math. 53 , 721 - 745 ( 1931 )
35. Michel , X. , Goemans , D.P. : Williamson: 879-approximation algorithms for MAX CUT and MAX 2SAT . In: Proceedings of STOC , pp. 422 - 431 ( 1994 )
36. Roth , B. , Whiteley , W. : Tensegrity frameworks . Trans. Am. Math. Soc . 265 , 419 - 446 ( 1981 )
37. Saxe , J.B. : Embeddability of weighted graphs in k-space is strongly NP-hard . In: Proceedings of 17th Allerton Conference on Communication, Control, and Computing , pp. 480 - 489 ( 1979 )
38. So , A. : A semidefinite programming approach to the graph realization problem . Ph.D. Thesis , Stanford University, Stanford ( 2007 )
39. Whiteley , W.: Rigidity and scene analysis . In: Goodman, J. , O 'Rourke , J . (eds.) Handbook of Discrete and Computational Geometry, 2nd edn , pp. 1327 - 1354 . SRC, Boca Raton ( 2004 )
40. Zhu , X. : Circular chromatic number: a survey . Discrete Math . 229 , 371 - 410 ( 2001 )