Skip to main content
2 of 8
Fixing a typo and adding a P.S.
Marco Ripà
  • 1.5k
  • 5
  • 19

Joining the $2^k$ points of $\{0,1\}^k$ with the shortest tree

Let $k$ be a given positive integer, and then consider the unit hypercube $\{0, 1\}^k \subset \mathbb{R}^k$ (i.e., a $k$-dimensional "cube" in the well-known Euclidean space).
We need to join all the $2^k$ vertices of the stated hypercube by using a tree, which is just a group of line segments connected to each other so that none of them is isolated from the rest of this rigid structure.
Now, our goal is to find the minimum total (Euclidean) length, $l_{min}(k)$ of these optimal trees, for any integer $k$ (e.g., $l_{min}(1) = 1$, $l_{min}(2) = 2 \cdot \sqrt{2}$, $l_{min}(3) = 4 \cdot \sqrt{2} + 1$, and so forth).

I wonder if solving the problem for every $k$ would be doable. I can only point out that an upper bound is trivially given by $2^k-1$ and that the trick to join $2^{k-1}$ pairs of opposite vertices does not improve the mentioned trivial solution as $k$ goes above $3$.

The figure below shows my proposal for the $k=3$ case. enter image description here

P.S. For any $k + 1$ we can also recycle our best tree, double it and then spend a unit segment to join the two subtrees (e.g., from $l_{min}(3) = 4 \cdot \sqrt{2} + 1$ we would get the upper bound $l_{upper}(4) = 2 \cdot(4 \cdot \sqrt{2} + 1)+1$ and so on).

Marco Ripà
  • 1.5k
  • 5
  • 19