Minimum distance required to travel to “see” all points on a hypercube
up vote
18
down vote
favorite
You begin on a hypercube of dimension N at the origin i.e. $(0,0,0,0,...,0)$
When at the origin you are able to "see" one and only one step away from you. So from the origin you can see vertices $(1,0,0,0..,0), (0,1,0,...,0),... (0,0,0,...,1)$
What is the function $f(M)$ that gives the total number of vertices seen after $M$ steps? (When $f(M=m)=2^N$ in this function then $m$ will be the minimum number of steps to see all vertices)
Step $0$: $mathbf{(0,0,0)}, (0,0,1), (0,1,0), (1,0,0)$ 4 vertices
Step $1$: $mathbf{(0,0,1)}, (0,1,1), (1,0,1)$ +2 vertices
Step $2$: $mathbf{(1,0,1)}, (1,1,1)$ +1 vertex
Step $3$: $mathbf{(1,1,1)}, (1,1,0)$ +1 vertex
geometry graph-theory information-theory discrete-geometry
|
show 8 more comments
up vote
18
down vote
favorite
You begin on a hypercube of dimension N at the origin i.e. $(0,0,0,0,...,0)$
When at the origin you are able to "see" one and only one step away from you. So from the origin you can see vertices $(1,0,0,0..,0), (0,1,0,...,0),... (0,0,0,...,1)$
What is the function $f(M)$ that gives the total number of vertices seen after $M$ steps? (When $f(M=m)=2^N$ in this function then $m$ will be the minimum number of steps to see all vertices)
Step $0$: $mathbf{(0,0,0)}, (0,0,1), (0,1,0), (1,0,0)$ 4 vertices
Step $1$: $mathbf{(0,0,1)}, (0,1,1), (1,0,1)$ +2 vertices
Step $2$: $mathbf{(1,0,1)}, (1,1,1)$ +1 vertex
Step $3$: $mathbf{(1,1,1)}, (1,1,0)$ +1 vertex
geometry graph-theory information-theory discrete-geometry
1
We can give a lower bound of $N-1$, because if we start at $(0,0,ldots,0)$, we need $N-1$ steps to get within one of $(1,1,ldots,1)$.
– Larry B.
Nov 12 at 19:58
4
We can give a lower bound of $frac{2^N}{N}-1$, because we need to see $2^N$ vertices and we only see $N$ from each location.
– Misha Lavrov
Nov 12 at 20:17
3
@MishaLavrov: we can improve that to $frac {2^N-N-1}{N-1}$ because we see at most $N-1$ new ones each step. The $-N-1$ comes because we see $N+1$ at the start without moving. Presumably we see where we are, though the problem does not say so. It is still higher than this because we will see the same vertex more than once.
– Ross Millikan
Nov 12 at 21:22
1
@RossMillikan it doesn't matter whether or not we see the vertex we are at. For all vertices that are not the starting vertex, we must see them before we reach them, and the starting vertex will be seen after the first step.
– vrugtehagel
Nov 20 at 10:49
3
There are a couple of ambiguities that could use some edits to clarify them. First, in the title you ask for "minimum distance required" but in the question body you ask for "the function that gives the total number of vertices seen after $M$ steps." Also, in the example you gave, are there $3$ steps or $4$ steps? That is, is "Step $0$" (merely starting on a vertex, not having moved yet) counted as a step?
– David K
Nov 20 at 20:00
|
show 8 more comments
up vote
18
down vote
favorite
up vote
18
down vote
favorite
You begin on a hypercube of dimension N at the origin i.e. $(0,0,0,0,...,0)$
When at the origin you are able to "see" one and only one step away from you. So from the origin you can see vertices $(1,0,0,0..,0), (0,1,0,...,0),... (0,0,0,...,1)$
What is the function $f(M)$ that gives the total number of vertices seen after $M$ steps? (When $f(M=m)=2^N$ in this function then $m$ will be the minimum number of steps to see all vertices)
Step $0$: $mathbf{(0,0,0)}, (0,0,1), (0,1,0), (1,0,0)$ 4 vertices
Step $1$: $mathbf{(0,0,1)}, (0,1,1), (1,0,1)$ +2 vertices
Step $2$: $mathbf{(1,0,1)}, (1,1,1)$ +1 vertex
Step $3$: $mathbf{(1,1,1)}, (1,1,0)$ +1 vertex
geometry graph-theory information-theory discrete-geometry
You begin on a hypercube of dimension N at the origin i.e. $(0,0,0,0,...,0)$
When at the origin you are able to "see" one and only one step away from you. So from the origin you can see vertices $(1,0,0,0..,0), (0,1,0,...,0),... (0,0,0,...,1)$
What is the function $f(M)$ that gives the total number of vertices seen after $M$ steps? (When $f(M=m)=2^N$ in this function then $m$ will be the minimum number of steps to see all vertices)
Step $0$: $mathbf{(0,0,0)}, (0,0,1), (0,1,0), (1,0,0)$ 4 vertices
Step $1$: $mathbf{(0,0,1)}, (0,1,1), (1,0,1)$ +2 vertices
Step $2$: $mathbf{(1,0,1)}, (1,1,1)$ +1 vertex
Step $3$: $mathbf{(1,1,1)}, (1,1,0)$ +1 vertex
geometry graph-theory information-theory discrete-geometry
geometry graph-theory information-theory discrete-geometry
edited Nov 20 at 22:12
asked Nov 12 at 18:58
James
997
997
1
We can give a lower bound of $N-1$, because if we start at $(0,0,ldots,0)$, we need $N-1$ steps to get within one of $(1,1,ldots,1)$.
– Larry B.
Nov 12 at 19:58
4
We can give a lower bound of $frac{2^N}{N}-1$, because we need to see $2^N$ vertices and we only see $N$ from each location.
– Misha Lavrov
Nov 12 at 20:17
3
@MishaLavrov: we can improve that to $frac {2^N-N-1}{N-1}$ because we see at most $N-1$ new ones each step. The $-N-1$ comes because we see $N+1$ at the start without moving. Presumably we see where we are, though the problem does not say so. It is still higher than this because we will see the same vertex more than once.
– Ross Millikan
Nov 12 at 21:22
1
@RossMillikan it doesn't matter whether or not we see the vertex we are at. For all vertices that are not the starting vertex, we must see them before we reach them, and the starting vertex will be seen after the first step.
– vrugtehagel
Nov 20 at 10:49
3
There are a couple of ambiguities that could use some edits to clarify them. First, in the title you ask for "minimum distance required" but in the question body you ask for "the function that gives the total number of vertices seen after $M$ steps." Also, in the example you gave, are there $3$ steps or $4$ steps? That is, is "Step $0$" (merely starting on a vertex, not having moved yet) counted as a step?
– David K
Nov 20 at 20:00
|
show 8 more comments
1
We can give a lower bound of $N-1$, because if we start at $(0,0,ldots,0)$, we need $N-1$ steps to get within one of $(1,1,ldots,1)$.
– Larry B.
Nov 12 at 19:58
4
We can give a lower bound of $frac{2^N}{N}-1$, because we need to see $2^N$ vertices and we only see $N$ from each location.
– Misha Lavrov
Nov 12 at 20:17
3
@MishaLavrov: we can improve that to $frac {2^N-N-1}{N-1}$ because we see at most $N-1$ new ones each step. The $-N-1$ comes because we see $N+1$ at the start without moving. Presumably we see where we are, though the problem does not say so. It is still higher than this because we will see the same vertex more than once.
– Ross Millikan
Nov 12 at 21:22
1
@RossMillikan it doesn't matter whether or not we see the vertex we are at. For all vertices that are not the starting vertex, we must see them before we reach them, and the starting vertex will be seen after the first step.
– vrugtehagel
Nov 20 at 10:49
3
There are a couple of ambiguities that could use some edits to clarify them. First, in the title you ask for "minimum distance required" but in the question body you ask for "the function that gives the total number of vertices seen after $M$ steps." Also, in the example you gave, are there $3$ steps or $4$ steps? That is, is "Step $0$" (merely starting on a vertex, not having moved yet) counted as a step?
– David K
Nov 20 at 20:00
1
1
We can give a lower bound of $N-1$, because if we start at $(0,0,ldots,0)$, we need $N-1$ steps to get within one of $(1,1,ldots,1)$.
– Larry B.
Nov 12 at 19:58
We can give a lower bound of $N-1$, because if we start at $(0,0,ldots,0)$, we need $N-1$ steps to get within one of $(1,1,ldots,1)$.
– Larry B.
Nov 12 at 19:58
4
4
We can give a lower bound of $frac{2^N}{N}-1$, because we need to see $2^N$ vertices and we only see $N$ from each location.
– Misha Lavrov
Nov 12 at 20:17
We can give a lower bound of $frac{2^N}{N}-1$, because we need to see $2^N$ vertices and we only see $N$ from each location.
– Misha Lavrov
Nov 12 at 20:17
3
3
@MishaLavrov: we can improve that to $frac {2^N-N-1}{N-1}$ because we see at most $N-1$ new ones each step. The $-N-1$ comes because we see $N+1$ at the start without moving. Presumably we see where we are, though the problem does not say so. It is still higher than this because we will see the same vertex more than once.
– Ross Millikan
Nov 12 at 21:22
@MishaLavrov: we can improve that to $frac {2^N-N-1}{N-1}$ because we see at most $N-1$ new ones each step. The $-N-1$ comes because we see $N+1$ at the start without moving. Presumably we see where we are, though the problem does not say so. It is still higher than this because we will see the same vertex more than once.
– Ross Millikan
Nov 12 at 21:22
1
1
@RossMillikan it doesn't matter whether or not we see the vertex we are at. For all vertices that are not the starting vertex, we must see them before we reach them, and the starting vertex will be seen after the first step.
– vrugtehagel
Nov 20 at 10:49
@RossMillikan it doesn't matter whether or not we see the vertex we are at. For all vertices that are not the starting vertex, we must see them before we reach them, and the starting vertex will be seen after the first step.
– vrugtehagel
Nov 20 at 10:49
3
3
There are a couple of ambiguities that could use some edits to clarify them. First, in the title you ask for "minimum distance required" but in the question body you ask for "the function that gives the total number of vertices seen after $M$ steps." Also, in the example you gave, are there $3$ steps or $4$ steps? That is, is "Step $0$" (merely starting on a vertex, not having moved yet) counted as a step?
– David K
Nov 20 at 20:00
There are a couple of ambiguities that could use some edits to clarify them. First, in the title you ask for "minimum distance required" but in the question body you ask for "the function that gives the total number of vertices seen after $M$ steps." Also, in the example you gave, are there $3$ steps or $4$ steps? That is, is "Step $0$" (merely starting on a vertex, not having moved yet) counted as a step?
– David K
Nov 20 at 20:00
|
show 8 more comments
2 Answers
2
active
oldest
votes
up vote
3
down vote
This is just an upper bound but I'm posting it as an answer since it's too long for a comment.
I will build a sequence $p_n$ of paths that allow you to see all the vertexes of the dimension $n$ hypercube.
Let's consider the dimension $n+2$ hypercube, whose vertexes we can represent by a binary sequence $(b_1,...,b_{n+2})$.
We start our path by going through all the vertexes $(b_1,...,b_n,0,0)$. We know we can do that in exactly $2^n$ steps. At this point we have also "seen" all the vertexes $(b_1,...,b_n,1,0)$ and $(b_1,...,b_n,0,1)$, so all that's left are the vertexes $(b_1,...,b_n,1,1)$, which form a dimension $n$ hypercube. It takes us one extra step to reach that dimension $n$ hypercube, and $p_n$ steps to see all of its vertexes.
A path constructed in this way will see all the vertexes in :
$$
|p_{n+2}| = |p_n| + 2^n+1
$$
We also have trivially $|p_1| = 1$ and $|p_2|$ = 2, so we get an upper bound of:
$$
|p_{2k}| = sum_{i=1}^{k-1}2^{2i}+k+1
$$
$$
|p_{2k+1}| = sum_{i=0}^{k-1}2^{2i+1}+k+1
$$
You can get even better results by considering $(b_1,...,b_n,0,0,0)$ etc (we get $|p_{n+3}| = 2^{n+1} + 2$). Someone might be able to generalize it.
To actually reach one of the vertices of the hypercube $(b_1,...,b_n,1,1)$ from the last-visited vertex of $(b_1,...,b_n,0,0)$ requires two steps. On the other hand, you count the question's "Step 0" as a step, so all you need to do is take one step to reach a vertex adjacent to the remaining hypercube, and then $p_n$ steps to "see" all of that hypercube, so the recursion seems correct although I found the reasoning a bit confusing.
– David K
Nov 20 at 19:18
You're right, that's what I meant but I wasn't sure how to phrase it.
– Rch
Nov 20 at 19:51
The generalization is this: Choose any $1le jle n-1$ and let $p$ be a path along the $j$-dimensional hypercube such that all points are seen. Let $N(p,i)$ be how many new points are seen on the $i$-th step of $p$. If $M_n$ is the minimal steps to see all points on an $n$-dimensional hypercube then $$M_nle sum_{i=1}^{|p|}min(2^{n-j},; N(p,i)M_{n-j}).$$ (Here $M_n$ counts the starting point as a step.)
– Will Fisher
Nov 28 at 2:32
This for example gives $M_nle sqrt{2^n M_{n-j}M_j}$.
– Will Fisher
Nov 28 at 3:40
add a comment |
up vote
2
down vote
This is not anything like a complete answer,
but here is a refinement of the upper bound of $f(M)$
(and therefore the lower bound of $m$) when $N geq 2.$
(Note: I am counting only steps from one vertex to another; I do not count starting at a vertex as a "step". If you want to count the number of vertices visited, including the starting vertex, add $1$ to my count.)
For simplicity, I'll assume we "see" the vertex we're currently on.
As pointed out in comments under the question, that doesn't really matter
for $M > 0,$ because the vertices "seen" up to that point will necessarily include the one we just came from, but I wanted my formulas to agree with the example in the question, which seems to imply $f(0) = 4$ when $N = 3.$
In general, then, $f(0) = N + 1.$
After one step, the vertices we have "seen" at either the start or end of this step
cover exactly $2n$ of the vertices of the hypercube.
Therefore $f(1) = 2N.$
At the end of any other step, we "see" $N$ vertices
(not including the one where the step ended),
but one of these is the vertex we just came from, which was already "seen"
at the start of the previous step (if not earlier).
Moreover, no matter where the previous step came from, the last two steps traverse two sides of one of the two-dimensional square faces of the hypercube,
and the fourth vertex of that square is "seen" by both the starting vertex of the next-to-last step and the ending vertex of the last step.
So there are at least two previously-"seen" vertices among the $N$ vertices "seen" at the end of the last step, and that step contributes at most $N - 2$ new vertices.
That is, when $M geq 2$ we have the recursion
$$f(M) leq f(M - 1) + N - 2.$$
From these facts, we can deduce that when $M geq 2,$ then
$$f(M) leq 2N + (N - 2)(M - 1).$$
It follows that
$$M geq 1 + frac{f(M) - 2N}{N - 2}.$$
If $m$ is the minimum value of $M$ such that $f(M) = 2^N,$ then
$$ m geq 1 + frac{2^N - 2N}{N - 2}.$$
add a comment |
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
3
down vote
This is just an upper bound but I'm posting it as an answer since it's too long for a comment.
I will build a sequence $p_n$ of paths that allow you to see all the vertexes of the dimension $n$ hypercube.
Let's consider the dimension $n+2$ hypercube, whose vertexes we can represent by a binary sequence $(b_1,...,b_{n+2})$.
We start our path by going through all the vertexes $(b_1,...,b_n,0,0)$. We know we can do that in exactly $2^n$ steps. At this point we have also "seen" all the vertexes $(b_1,...,b_n,1,0)$ and $(b_1,...,b_n,0,1)$, so all that's left are the vertexes $(b_1,...,b_n,1,1)$, which form a dimension $n$ hypercube. It takes us one extra step to reach that dimension $n$ hypercube, and $p_n$ steps to see all of its vertexes.
A path constructed in this way will see all the vertexes in :
$$
|p_{n+2}| = |p_n| + 2^n+1
$$
We also have trivially $|p_1| = 1$ and $|p_2|$ = 2, so we get an upper bound of:
$$
|p_{2k}| = sum_{i=1}^{k-1}2^{2i}+k+1
$$
$$
|p_{2k+1}| = sum_{i=0}^{k-1}2^{2i+1}+k+1
$$
You can get even better results by considering $(b_1,...,b_n,0,0,0)$ etc (we get $|p_{n+3}| = 2^{n+1} + 2$). Someone might be able to generalize it.
To actually reach one of the vertices of the hypercube $(b_1,...,b_n,1,1)$ from the last-visited vertex of $(b_1,...,b_n,0,0)$ requires two steps. On the other hand, you count the question's "Step 0" as a step, so all you need to do is take one step to reach a vertex adjacent to the remaining hypercube, and then $p_n$ steps to "see" all of that hypercube, so the recursion seems correct although I found the reasoning a bit confusing.
– David K
Nov 20 at 19:18
You're right, that's what I meant but I wasn't sure how to phrase it.
– Rch
Nov 20 at 19:51
The generalization is this: Choose any $1le jle n-1$ and let $p$ be a path along the $j$-dimensional hypercube such that all points are seen. Let $N(p,i)$ be how many new points are seen on the $i$-th step of $p$. If $M_n$ is the minimal steps to see all points on an $n$-dimensional hypercube then $$M_nle sum_{i=1}^{|p|}min(2^{n-j},; N(p,i)M_{n-j}).$$ (Here $M_n$ counts the starting point as a step.)
– Will Fisher
Nov 28 at 2:32
This for example gives $M_nle sqrt{2^n M_{n-j}M_j}$.
– Will Fisher
Nov 28 at 3:40
add a comment |
up vote
3
down vote
This is just an upper bound but I'm posting it as an answer since it's too long for a comment.
I will build a sequence $p_n$ of paths that allow you to see all the vertexes of the dimension $n$ hypercube.
Let's consider the dimension $n+2$ hypercube, whose vertexes we can represent by a binary sequence $(b_1,...,b_{n+2})$.
We start our path by going through all the vertexes $(b_1,...,b_n,0,0)$. We know we can do that in exactly $2^n$ steps. At this point we have also "seen" all the vertexes $(b_1,...,b_n,1,0)$ and $(b_1,...,b_n,0,1)$, so all that's left are the vertexes $(b_1,...,b_n,1,1)$, which form a dimension $n$ hypercube. It takes us one extra step to reach that dimension $n$ hypercube, and $p_n$ steps to see all of its vertexes.
A path constructed in this way will see all the vertexes in :
$$
|p_{n+2}| = |p_n| + 2^n+1
$$
We also have trivially $|p_1| = 1$ and $|p_2|$ = 2, so we get an upper bound of:
$$
|p_{2k}| = sum_{i=1}^{k-1}2^{2i}+k+1
$$
$$
|p_{2k+1}| = sum_{i=0}^{k-1}2^{2i+1}+k+1
$$
You can get even better results by considering $(b_1,...,b_n,0,0,0)$ etc (we get $|p_{n+3}| = 2^{n+1} + 2$). Someone might be able to generalize it.
To actually reach one of the vertices of the hypercube $(b_1,...,b_n,1,1)$ from the last-visited vertex of $(b_1,...,b_n,0,0)$ requires two steps. On the other hand, you count the question's "Step 0" as a step, so all you need to do is take one step to reach a vertex adjacent to the remaining hypercube, and then $p_n$ steps to "see" all of that hypercube, so the recursion seems correct although I found the reasoning a bit confusing.
– David K
Nov 20 at 19:18
You're right, that's what I meant but I wasn't sure how to phrase it.
– Rch
Nov 20 at 19:51
The generalization is this: Choose any $1le jle n-1$ and let $p$ be a path along the $j$-dimensional hypercube such that all points are seen. Let $N(p,i)$ be how many new points are seen on the $i$-th step of $p$. If $M_n$ is the minimal steps to see all points on an $n$-dimensional hypercube then $$M_nle sum_{i=1}^{|p|}min(2^{n-j},; N(p,i)M_{n-j}).$$ (Here $M_n$ counts the starting point as a step.)
– Will Fisher
Nov 28 at 2:32
This for example gives $M_nle sqrt{2^n M_{n-j}M_j}$.
– Will Fisher
Nov 28 at 3:40
add a comment |
up vote
3
down vote
up vote
3
down vote
This is just an upper bound but I'm posting it as an answer since it's too long for a comment.
I will build a sequence $p_n$ of paths that allow you to see all the vertexes of the dimension $n$ hypercube.
Let's consider the dimension $n+2$ hypercube, whose vertexes we can represent by a binary sequence $(b_1,...,b_{n+2})$.
We start our path by going through all the vertexes $(b_1,...,b_n,0,0)$. We know we can do that in exactly $2^n$ steps. At this point we have also "seen" all the vertexes $(b_1,...,b_n,1,0)$ and $(b_1,...,b_n,0,1)$, so all that's left are the vertexes $(b_1,...,b_n,1,1)$, which form a dimension $n$ hypercube. It takes us one extra step to reach that dimension $n$ hypercube, and $p_n$ steps to see all of its vertexes.
A path constructed in this way will see all the vertexes in :
$$
|p_{n+2}| = |p_n| + 2^n+1
$$
We also have trivially $|p_1| = 1$ and $|p_2|$ = 2, so we get an upper bound of:
$$
|p_{2k}| = sum_{i=1}^{k-1}2^{2i}+k+1
$$
$$
|p_{2k+1}| = sum_{i=0}^{k-1}2^{2i+1}+k+1
$$
You can get even better results by considering $(b_1,...,b_n,0,0,0)$ etc (we get $|p_{n+3}| = 2^{n+1} + 2$). Someone might be able to generalize it.
This is just an upper bound but I'm posting it as an answer since it's too long for a comment.
I will build a sequence $p_n$ of paths that allow you to see all the vertexes of the dimension $n$ hypercube.
Let's consider the dimension $n+2$ hypercube, whose vertexes we can represent by a binary sequence $(b_1,...,b_{n+2})$.
We start our path by going through all the vertexes $(b_1,...,b_n,0,0)$. We know we can do that in exactly $2^n$ steps. At this point we have also "seen" all the vertexes $(b_1,...,b_n,1,0)$ and $(b_1,...,b_n,0,1)$, so all that's left are the vertexes $(b_1,...,b_n,1,1)$, which form a dimension $n$ hypercube. It takes us one extra step to reach that dimension $n$ hypercube, and $p_n$ steps to see all of its vertexes.
A path constructed in this way will see all the vertexes in :
$$
|p_{n+2}| = |p_n| + 2^n+1
$$
We also have trivially $|p_1| = 1$ and $|p_2|$ = 2, so we get an upper bound of:
$$
|p_{2k}| = sum_{i=1}^{k-1}2^{2i}+k+1
$$
$$
|p_{2k+1}| = sum_{i=0}^{k-1}2^{2i+1}+k+1
$$
You can get even better results by considering $(b_1,...,b_n,0,0,0)$ etc (we get $|p_{n+3}| = 2^{n+1} + 2$). Someone might be able to generalize it.
edited Nov 20 at 15:55
answered Nov 20 at 15:13
Rch
813
813
To actually reach one of the vertices of the hypercube $(b_1,...,b_n,1,1)$ from the last-visited vertex of $(b_1,...,b_n,0,0)$ requires two steps. On the other hand, you count the question's "Step 0" as a step, so all you need to do is take one step to reach a vertex adjacent to the remaining hypercube, and then $p_n$ steps to "see" all of that hypercube, so the recursion seems correct although I found the reasoning a bit confusing.
– David K
Nov 20 at 19:18
You're right, that's what I meant but I wasn't sure how to phrase it.
– Rch
Nov 20 at 19:51
The generalization is this: Choose any $1le jle n-1$ and let $p$ be a path along the $j$-dimensional hypercube such that all points are seen. Let $N(p,i)$ be how many new points are seen on the $i$-th step of $p$. If $M_n$ is the minimal steps to see all points on an $n$-dimensional hypercube then $$M_nle sum_{i=1}^{|p|}min(2^{n-j},; N(p,i)M_{n-j}).$$ (Here $M_n$ counts the starting point as a step.)
– Will Fisher
Nov 28 at 2:32
This for example gives $M_nle sqrt{2^n M_{n-j}M_j}$.
– Will Fisher
Nov 28 at 3:40
add a comment |
To actually reach one of the vertices of the hypercube $(b_1,...,b_n,1,1)$ from the last-visited vertex of $(b_1,...,b_n,0,0)$ requires two steps. On the other hand, you count the question's "Step 0" as a step, so all you need to do is take one step to reach a vertex adjacent to the remaining hypercube, and then $p_n$ steps to "see" all of that hypercube, so the recursion seems correct although I found the reasoning a bit confusing.
– David K
Nov 20 at 19:18
You're right, that's what I meant but I wasn't sure how to phrase it.
– Rch
Nov 20 at 19:51
The generalization is this: Choose any $1le jle n-1$ and let $p$ be a path along the $j$-dimensional hypercube such that all points are seen. Let $N(p,i)$ be how many new points are seen on the $i$-th step of $p$. If $M_n$ is the minimal steps to see all points on an $n$-dimensional hypercube then $$M_nle sum_{i=1}^{|p|}min(2^{n-j},; N(p,i)M_{n-j}).$$ (Here $M_n$ counts the starting point as a step.)
– Will Fisher
Nov 28 at 2:32
This for example gives $M_nle sqrt{2^n M_{n-j}M_j}$.
– Will Fisher
Nov 28 at 3:40
To actually reach one of the vertices of the hypercube $(b_1,...,b_n,1,1)$ from the last-visited vertex of $(b_1,...,b_n,0,0)$ requires two steps. On the other hand, you count the question's "Step 0" as a step, so all you need to do is take one step to reach a vertex adjacent to the remaining hypercube, and then $p_n$ steps to "see" all of that hypercube, so the recursion seems correct although I found the reasoning a bit confusing.
– David K
Nov 20 at 19:18
To actually reach one of the vertices of the hypercube $(b_1,...,b_n,1,1)$ from the last-visited vertex of $(b_1,...,b_n,0,0)$ requires two steps. On the other hand, you count the question's "Step 0" as a step, so all you need to do is take one step to reach a vertex adjacent to the remaining hypercube, and then $p_n$ steps to "see" all of that hypercube, so the recursion seems correct although I found the reasoning a bit confusing.
– David K
Nov 20 at 19:18
You're right, that's what I meant but I wasn't sure how to phrase it.
– Rch
Nov 20 at 19:51
You're right, that's what I meant but I wasn't sure how to phrase it.
– Rch
Nov 20 at 19:51
The generalization is this: Choose any $1le jle n-1$ and let $p$ be a path along the $j$-dimensional hypercube such that all points are seen. Let $N(p,i)$ be how many new points are seen on the $i$-th step of $p$. If $M_n$ is the minimal steps to see all points on an $n$-dimensional hypercube then $$M_nle sum_{i=1}^{|p|}min(2^{n-j},; N(p,i)M_{n-j}).$$ (Here $M_n$ counts the starting point as a step.)
– Will Fisher
Nov 28 at 2:32
The generalization is this: Choose any $1le jle n-1$ and let $p$ be a path along the $j$-dimensional hypercube such that all points are seen. Let $N(p,i)$ be how many new points are seen on the $i$-th step of $p$. If $M_n$ is the minimal steps to see all points on an $n$-dimensional hypercube then $$M_nle sum_{i=1}^{|p|}min(2^{n-j},; N(p,i)M_{n-j}).$$ (Here $M_n$ counts the starting point as a step.)
– Will Fisher
Nov 28 at 2:32
This for example gives $M_nle sqrt{2^n M_{n-j}M_j}$.
– Will Fisher
Nov 28 at 3:40
This for example gives $M_nle sqrt{2^n M_{n-j}M_j}$.
– Will Fisher
Nov 28 at 3:40
add a comment |
up vote
2
down vote
This is not anything like a complete answer,
but here is a refinement of the upper bound of $f(M)$
(and therefore the lower bound of $m$) when $N geq 2.$
(Note: I am counting only steps from one vertex to another; I do not count starting at a vertex as a "step". If you want to count the number of vertices visited, including the starting vertex, add $1$ to my count.)
For simplicity, I'll assume we "see" the vertex we're currently on.
As pointed out in comments under the question, that doesn't really matter
for $M > 0,$ because the vertices "seen" up to that point will necessarily include the one we just came from, but I wanted my formulas to agree with the example in the question, which seems to imply $f(0) = 4$ when $N = 3.$
In general, then, $f(0) = N + 1.$
After one step, the vertices we have "seen" at either the start or end of this step
cover exactly $2n$ of the vertices of the hypercube.
Therefore $f(1) = 2N.$
At the end of any other step, we "see" $N$ vertices
(not including the one where the step ended),
but one of these is the vertex we just came from, which was already "seen"
at the start of the previous step (if not earlier).
Moreover, no matter where the previous step came from, the last two steps traverse two sides of one of the two-dimensional square faces of the hypercube,
and the fourth vertex of that square is "seen" by both the starting vertex of the next-to-last step and the ending vertex of the last step.
So there are at least two previously-"seen" vertices among the $N$ vertices "seen" at the end of the last step, and that step contributes at most $N - 2$ new vertices.
That is, when $M geq 2$ we have the recursion
$$f(M) leq f(M - 1) + N - 2.$$
From these facts, we can deduce that when $M geq 2,$ then
$$f(M) leq 2N + (N - 2)(M - 1).$$
It follows that
$$M geq 1 + frac{f(M) - 2N}{N - 2}.$$
If $m$ is the minimum value of $M$ such that $f(M) = 2^N,$ then
$$ m geq 1 + frac{2^N - 2N}{N - 2}.$$
add a comment |
up vote
2
down vote
This is not anything like a complete answer,
but here is a refinement of the upper bound of $f(M)$
(and therefore the lower bound of $m$) when $N geq 2.$
(Note: I am counting only steps from one vertex to another; I do not count starting at a vertex as a "step". If you want to count the number of vertices visited, including the starting vertex, add $1$ to my count.)
For simplicity, I'll assume we "see" the vertex we're currently on.
As pointed out in comments under the question, that doesn't really matter
for $M > 0,$ because the vertices "seen" up to that point will necessarily include the one we just came from, but I wanted my formulas to agree with the example in the question, which seems to imply $f(0) = 4$ when $N = 3.$
In general, then, $f(0) = N + 1.$
After one step, the vertices we have "seen" at either the start or end of this step
cover exactly $2n$ of the vertices of the hypercube.
Therefore $f(1) = 2N.$
At the end of any other step, we "see" $N$ vertices
(not including the one where the step ended),
but one of these is the vertex we just came from, which was already "seen"
at the start of the previous step (if not earlier).
Moreover, no matter where the previous step came from, the last two steps traverse two sides of one of the two-dimensional square faces of the hypercube,
and the fourth vertex of that square is "seen" by both the starting vertex of the next-to-last step and the ending vertex of the last step.
So there are at least two previously-"seen" vertices among the $N$ vertices "seen" at the end of the last step, and that step contributes at most $N - 2$ new vertices.
That is, when $M geq 2$ we have the recursion
$$f(M) leq f(M - 1) + N - 2.$$
From these facts, we can deduce that when $M geq 2,$ then
$$f(M) leq 2N + (N - 2)(M - 1).$$
It follows that
$$M geq 1 + frac{f(M) - 2N}{N - 2}.$$
If $m$ is the minimum value of $M$ such that $f(M) = 2^N,$ then
$$ m geq 1 + frac{2^N - 2N}{N - 2}.$$
add a comment |
up vote
2
down vote
up vote
2
down vote
This is not anything like a complete answer,
but here is a refinement of the upper bound of $f(M)$
(and therefore the lower bound of $m$) when $N geq 2.$
(Note: I am counting only steps from one vertex to another; I do not count starting at a vertex as a "step". If you want to count the number of vertices visited, including the starting vertex, add $1$ to my count.)
For simplicity, I'll assume we "see" the vertex we're currently on.
As pointed out in comments under the question, that doesn't really matter
for $M > 0,$ because the vertices "seen" up to that point will necessarily include the one we just came from, but I wanted my formulas to agree with the example in the question, which seems to imply $f(0) = 4$ when $N = 3.$
In general, then, $f(0) = N + 1.$
After one step, the vertices we have "seen" at either the start or end of this step
cover exactly $2n$ of the vertices of the hypercube.
Therefore $f(1) = 2N.$
At the end of any other step, we "see" $N$ vertices
(not including the one where the step ended),
but one of these is the vertex we just came from, which was already "seen"
at the start of the previous step (if not earlier).
Moreover, no matter where the previous step came from, the last two steps traverse two sides of one of the two-dimensional square faces of the hypercube,
and the fourth vertex of that square is "seen" by both the starting vertex of the next-to-last step and the ending vertex of the last step.
So there are at least two previously-"seen" vertices among the $N$ vertices "seen" at the end of the last step, and that step contributes at most $N - 2$ new vertices.
That is, when $M geq 2$ we have the recursion
$$f(M) leq f(M - 1) + N - 2.$$
From these facts, we can deduce that when $M geq 2,$ then
$$f(M) leq 2N + (N - 2)(M - 1).$$
It follows that
$$M geq 1 + frac{f(M) - 2N}{N - 2}.$$
If $m$ is the minimum value of $M$ such that $f(M) = 2^N,$ then
$$ m geq 1 + frac{2^N - 2N}{N - 2}.$$
This is not anything like a complete answer,
but here is a refinement of the upper bound of $f(M)$
(and therefore the lower bound of $m$) when $N geq 2.$
(Note: I am counting only steps from one vertex to another; I do not count starting at a vertex as a "step". If you want to count the number of vertices visited, including the starting vertex, add $1$ to my count.)
For simplicity, I'll assume we "see" the vertex we're currently on.
As pointed out in comments under the question, that doesn't really matter
for $M > 0,$ because the vertices "seen" up to that point will necessarily include the one we just came from, but I wanted my formulas to agree with the example in the question, which seems to imply $f(0) = 4$ when $N = 3.$
In general, then, $f(0) = N + 1.$
After one step, the vertices we have "seen" at either the start or end of this step
cover exactly $2n$ of the vertices of the hypercube.
Therefore $f(1) = 2N.$
At the end of any other step, we "see" $N$ vertices
(not including the one where the step ended),
but one of these is the vertex we just came from, which was already "seen"
at the start of the previous step (if not earlier).
Moreover, no matter where the previous step came from, the last two steps traverse two sides of one of the two-dimensional square faces of the hypercube,
and the fourth vertex of that square is "seen" by both the starting vertex of the next-to-last step and the ending vertex of the last step.
So there are at least two previously-"seen" vertices among the $N$ vertices "seen" at the end of the last step, and that step contributes at most $N - 2$ new vertices.
That is, when $M geq 2$ we have the recursion
$$f(M) leq f(M - 1) + N - 2.$$
From these facts, we can deduce that when $M geq 2,$ then
$$f(M) leq 2N + (N - 2)(M - 1).$$
It follows that
$$M geq 1 + frac{f(M) - 2N}{N - 2}.$$
If $m$ is the minimum value of $M$ such that $f(M) = 2^N,$ then
$$ m geq 1 + frac{2^N - 2N}{N - 2}.$$
edited Nov 20 at 22:29
answered Nov 20 at 18:55
David K
51.7k340114
51.7k340114
add a comment |
add a comment |
Thanks for contributing an answer to Mathematics Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
Use MathJax to format equations. MathJax reference.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f2995699%2fminimum-distance-required-to-travel-to-see-all-points-on-a-hypercube%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
We can give a lower bound of $N-1$, because if we start at $(0,0,ldots,0)$, we need $N-1$ steps to get within one of $(1,1,ldots,1)$.
– Larry B.
Nov 12 at 19:58
4
We can give a lower bound of $frac{2^N}{N}-1$, because we need to see $2^N$ vertices and we only see $N$ from each location.
– Misha Lavrov
Nov 12 at 20:17
3
@MishaLavrov: we can improve that to $frac {2^N-N-1}{N-1}$ because we see at most $N-1$ new ones each step. The $-N-1$ comes because we see $N+1$ at the start without moving. Presumably we see where we are, though the problem does not say so. It is still higher than this because we will see the same vertex more than once.
– Ross Millikan
Nov 12 at 21:22
1
@RossMillikan it doesn't matter whether or not we see the vertex we are at. For all vertices that are not the starting vertex, we must see them before we reach them, and the starting vertex will be seen after the first step.
– vrugtehagel
Nov 20 at 10:49
3
There are a couple of ambiguities that could use some edits to clarify them. First, in the title you ask for "minimum distance required" but in the question body you ask for "the function that gives the total number of vertices seen after $M$ steps." Also, in the example you gave, are there $3$ steps or $4$ steps? That is, is "Step $0$" (merely starting on a vertex, not having moved yet) counted as a step?
– David K
Nov 20 at 20:00