## Can we uniquely define a graph to have the topology of a polytope via proper edge length selection?

### Remember to vote up questions/answers you find interesting or helpful (requires 15 reputation points)

I'll ask you to consider a situation wherein one has a series of edges for a graph, $(e_1, e_2, ..., e_N) \in E$, each with a specifiable length $(l_1, l_2, ..., l_N) \in L$, and the goal is to insure that the connected graph has a unique topology in 3-space. More specifically, I'm interested in insuring that some graph with the connectivity of a polytope can only be drawn as the skeleton of that particular polytope - that there should be no crossed edges or knots possible for the specified edge lengths.

To provide a physical example:

I use a group of rods to represent the edges of the desired graph (with pencils or the like) and color/symbol-encode their ends to represent vertex-assignments. I want to choose rod lengths in such a way that if I hand them to a naive-constructor (i.e. a 3-year old or a computer-controlled robot), and tell him/her/it to connect the ends of the rods together that have the same color or symbol, after waiting an arbitrarily long time there will only be a unique geometry satisfying the connectivity constraints of the graph I originally had in mind.

Is there a known computational complexity for this problem? Is there even a solution in the general case, or in the case where we apply the restriction that the specified polytope is convex?

I appreciate any feedback!

EDIT 1: The edges of the graph must be straight lines in 3-space, they cannot be bent to accommodate a particular edge length.

EDIT 2: Does the problem become easier if one assumes some physical diameter for the edges?

-

I am curious as to whether or not the author is talking about only convex polytopes, in which case the answer seems like the situation should be pretty clear. – Andrew D. King Nov 24 2010 at 5:53
Dear Andrew, no, I'm referring to arbitrary polytopes.  However, for the convex case, it's not clear to me that it's always true that you can't find an alternate topology for a graph provided some set of edge lengths. – ShallowBlue Nov 24 2010 at 6:03
I apologize... but I don't see how the convex case is clear-cut.  It seems to me like like it could potentially be possible to fix the edge lengths and connectivity constraints for a skeleton graph for some convex polytope, then reconfigure the graph (we don't care how this happens) into a knotted configuration without violating those constraints.   – ShallowBlue Nov 24 2010 at 6:10
Ok I understand the problem now.  I was considering the case in which each face is a triangle.  In that case I am convinced that the topology is always unique.  Another interesting problem, aside from deciding whether a given edge length function is uniquely realizable, is deciding when a 3-connected planar graph is uniquely realizable.  For example, it is clear that if you take K4, the tetrahedron, then if an edge length function is realizable, it is uniquely realizable. – Andrew D. King Nov 26 2010 at 2:53

## 3 Answers

This seems like a question in rigidity theory. In particular it seems like part of what you want is conditions for global rigidity in 3 dimensions.

Let me write down some definitions and basic facts from the introduction of this nice set of slides by Dylan Thurston and then post some references that might be helpful.

A framework is a graph and a map from its vertices into $d$-dimensional Euclidean space $\mathbb{E}^d$. A framework is locally rigid if every other framework in a small neighborhood with the same edge lengths is related to it by an isometry of $\mathbb{E}^d$. A framework is globally rigid if every other framework in $\mathbb{E}^d$ with the same edge lengths is related to it by an isometry of $\mathbb{E}^d$.

It turns out that checking global rigidity is NP hard, even in 1 dimension (Saxe 1979). However, if you're just interested in "generic" frameworks, i.e. those for which the edge lengths do not satisfy any polynomial relation, then work of Connelly and S. Gortler, A. Healy and D. Thurston characterizes these frameworks in any dimension with an efficient randomized algorithm. See the paper of GHT or the slides above. I must admit that I have not yet studied their work in any detail.

Since you are requiring that your frameworks are skeleta of polytopes, there may be extra structure which you can exploit. Let me just point you to Cauchy's rigidity theorem which states that convex polyhedra are rigid if you force the faces to be rigid in addition to the edges. If you don't have this restriction on the faces, then there are nonrigid examples, e.g. the 1-skeleton of a cube can be sheared, also pointed out in sleepless in beantown's answer. If you do have the restriction on the faces, but you allow nonconvex polyhedra, then there are flexible polyhedra.

In addition to the links above, there are several surveys on the webpage of Robert Connelly on various topics in rigidity theory.

-
If instead of global rigidity, we ask that the naive-constructor must create a complete graph with some desired topology, is the problem still NP-hard? – ShallowBlue Nov 27 2010 at 0:50
By "complete graph" do you mean the "complete graph on n-vertices" K_n ? And I'm afraid I don't know what you mean by some "desired topology". From your question it seems like the graph structure is already fixed. Here's how I currently understand the setup in your problem. Every rod has two ends each of which is assigned a different color. All the ends with the same color end up stuck together, so every color will correspond to a distinct vertex in the resulting graph. Thus the set V of vertices of the abstract graph structure is indexed by the number of colors. – jc Nov 27 2010 at 1:22

1
Since each rod has two ends, every rod corresponds to an element of the set V x V, and thus the set E of edges is given by looking at the set of rods. The abstract graph structure (V,E) is thus fixed by the coloring. You are interested in the set of possible embeddings of these rods into 3-space, since all the rods are line segments, we just have solve for the positions of the vertices, and ask whether all the solutions are related by translations or rotations. – jc Nov 27 2010 at 1:26
I guess first you need to ask whether any solutions exist - this sort of question is answered in the field of "distance geometry", and the key tool is "Cayley-Menger determinants". Once you know that some solution exists you can probably start mapping your questions onto those of rigidity theory (actually rigidity theory usually starts out without any length assignments, but I believe that the situation where you choose some generic working length assignments maps into the theory of generic rigidity). – jc Nov 27 2010 at 1:30
"...we just have solve for the positions of the vertices, and ask whether all the solutions are related by translations or rotations." Right, I'm interested in picking rod lengths so that there's a solution for positioning vertices such that it can be drawn in 3-space. I'd also like to show that such a solution (and perhaps its mirror image) has a unique topology, that all such solutions are interconvertible by translations or rotations. – ShallowBlue Nov 27 2010 at 1:36
show 2 more comments

### You can accept an answer to one of your own questions by clicking the check mark next to it. This awards 15 reputation points to the person who answered and 2 reputation points to you.

You are asking about the embedding of a graph structure into 3-space $\mathbb{R}^3$. A graph structure by itself does not specify its embedding into $n$-space. In chemistry, these two different chiral instances of (tetrahedral) molecules below would be called stereo-isomers or enantiomers of each other.

In mechanical engineering, you'd be talking about building trusses and support structures, and a lot is known about the fact that quadrilaterals do not define a rigid structure. Quadrilaterals are easily sheared within a plane, and are not restricted to being coplanar, whereas triangular faces are at least limited to being coplanar.

Also, the presence of these constraints (on edge length and vertex-edge connectivity) also does not mean that it would be impossible to build partial structures that meet the specified partial constraints but which cannot be built upon to complete the structure. In other words, a "naive constructor" cold generate a partial assembly which is a configuration which is impossible to continue onto a final desired construction. There could be dead-end partial constructions which could not be completed. This type of problem could partially be avoided by also imposing a temporal constraint, or a sequence constraint, e.g. first add this, then add that.

However, there are chirality issues in play which cannot be avoided.

If the "vertices" do not impose restrictions on relative angles, then there are no additional contraints beyond edge-length, and the graph-structure and edge lengths will not usually define a single embedding in 3-space, relative to transformations such as translation and rotation.

If by topology, you do not also mean chirality, you may be correct. If you allow chirality differences to mean something, then there is a simple counterexample in the tetrahedron.

Let this tetrahedron $T_1$ in $\mathbb{R}^3$ be defined with a base triangle $ABC$ with the points $A=(0,0,0), B=(0,1,0), C=(1,0,0)$ and the top of the tetrahedron at $D=(0,0,1)$. Let the edge lengths of the skeleton of this polytope be defined based on this baseline instantiation in 3-space, $|AB|=1, |AC|=1, |BC|=\sqrt{2}, |AD|=1, |BD|=\sqrt{2}, |CD|=\sqrt{2}$.

Now note that if $D$ is instead placed at $D_2=(0,0,-1)$, that the this alternate tetrahedron (let's call it $T_2=ABCD_2$), has the same edge lengths as $T_1$, but has the mirror chirality. If we labeled the vertices with $A,B,C,D$, it is not possible to rotate and translate $T_1$ into $T_2$, whereas it is possible to turn $T_1$ inside-out and transform it into $T_2$.

If you don't have all triangular faces, e.g. you use the edge lengths of a cube as the only constraints on a skeleton of a cube, you'll quickly see the problem that engineers found in constructing trusses with square faces: parallelograms are not necessarily "rigid" and can be sheared easily and still maintain the correct edge-lengths between vertices. Thus it's not possible to build a rigid skelton with only square faces.

Thus, it depends on the axiomatic construction of your objects:

if you disallow disassembly and reconstruction, then the tetrahedra $T_1$ and $T_2$ are separate chiral mirror-images of each other. If you allow for disassembly and reconstruction, then $T_1$ and $T_2$ have the same topology. If you also define "topologically equivalent" to allow for elastic stretching (at least for transforming from one 3-d realization to another, then back to being solid and rigid while in a specific 3-d realization), then $T_1$ can be transformed into $T_2$ by pushing the vertex $D$ through the center of the face $ABC$ and onto the other side. If the faces actually have a physical planar object defining that face (like a kite has its tissue paper), then this sort of transform is disallowed and the mirror image tetrahedra $T_1$ and $T_2$ are different.

You can also visualize this by allowing the edges to be made of elastic springy rods with spring constants $k_i$. If the $k$'s are very large, then the springs are very stiff and the inversion will be impossible; if the $k$'s are small, the springs have a lot of give and it's easily possible to change between the two mirror-image configurations.

-

Not just parallelograms, this can be generalized to quadrilaterals not being rigid structures. – sleepless in beantown Nov 26 2010 at 21:50
Also, if any of the faces are quadrilaterals, there is no rigid construction unless there are sufficient other constraints.  The presence of other constraints also does not mean that it would be impossible to build partial structures that meet the specified partial constraints but which cannot be built upon to complete the structure.  In other words, a "naive constructor" cold generate a partial assembly which is a configuration which is impossible to continue onto a final desired construction. – sleepless in beantown Nov 26 2010 at 22:00
Also, you talking about the *embedding of a graph structure into \mathbb{R}^3 (3-space) * and in chemistry, these two different chiral instances of (tetrahedral) molecules would be called stereo-isomers or enantiomers of each other. – sleepless in beantown Nov 26 2010 at 22:04
Also, you talking about the embedding of a graph structure into 3-space  $\mathbb{R}^3$ and in chemistry, these two different chiral instances of (tetrahedral) molecules would be called stereo-isomers or enantiomers of each other. – sleepless in beantown Nov 26 2010 at 22:05

A matrix realizing Colin de Verdi`eres $\mu$-invariant yields an answer if you accept that you get lengths at the end, not at the beginning.

A planar graph $G$ arising as the $1-$skeleton of a polytope has always $\mu$-invariant equal to $3$. There exists thus a combinatorial Schr\"odinger operator on $G$ whose second largest eigenvalue has multiplicity $3$ (and the eigenspace satisfies a stability condition). Choose a basis of $3$ eigenvectors for such an operator. Interpret these eigenvectors as $x,y$ and $z$ coordinates of points in $\mathbb R^3$, indexed by vertices of $G$. This yields a set of points in $\mathbb R^3$ which are extremal vertices of a polytope realizing $G$ (and the realization is of course the obvious one, vertices are already labeled by vertices of $G$).

Moreover, all convex polytopes realizing $G$ can be constructed in this way. The "moduli space" of such polytopes is thus (up to the choice of a basis) in bijection with Schr\"odinger operators realizing the $\mu$ invariant.

-
{"extraction_info": {"found_math": true, "script_math_tex": 0, "script_math_asciimath": 0, "math_annotations": 0, "math_alttext": 0, "mathml": 0, "mathjax_tag": 0, "mathjax_inline_tex": 55, "mathjax_display_tex": 0, "mathjax_asciimath": 0, "img_math": 0, "codecogs_latex": 0, "wp_latex": 0, "mimetex.cgi": 0, "/images/math/codecogs": 0, "mathtex.cgi": 0}, "config": {"markdown_headings": true, "markdown_code": true, "boilerplate_config": {"ratio_threshold": 0.18, "absolute_threshold": 10, "end_threshold": 15, "enable": true}, "remove_buttons": true, "remove_image_figures": true, "remove_link_clusters": true, "table_config": {"min_rows": 2, "min_cols": 3, "format": "github"}, "remove_chinese": true, "remove_edit_buttons": true, "extract_latex": true}, "english_confidence": 0.9331217408180237, "perplexity_flag": "head"}