Vertex identifying codes and the random graph

Vertex identifying codes and the
random graph
Ryan Martin
[email protected]
Assistant Professor
Mathematics Department
Iowa State University
Vertex identifying codes and the random graph – p. 1/2
Joint work
This is joint work with
• Alan Frieze, Carnegie Mellon University
Vertex identifying codes and the random graph – p. 2/2
Joint work
This is joint work with
• Alan Frieze, Carnegie Mellon University
• Julien Moncel, Université Joseph Fourier
Vertex identifying codes and the random graph – p. 2/2
Joint work
This is joint work with
• Alan Frieze, Carnegie Mellon University
• Julien Moncel, Université Joseph Fourier
• Miklós Ruszinkó, Computer and Automation
Institute of the Hungarian Academy of Sciences
Vertex identifying codes and the random graph – p. 2/2
Joint work
This is joint work with
• Alan Frieze, Carnegie Mellon University
• Julien Moncel, Université Joseph Fourier
• Miklós Ruszinkó, Computer and Automation
Institute of the Hungarian Academy of Sciences
• Cliff Smyth, Carnegie Mellon University and
Massachusetts Institute of Technology
Vertex identifying codes and the random graph – p. 2/2
Origins
Let’s begin with a network.
Vertex identifying codes and the random graph – p. 3/2
Origins
Let’s begin with a network.
At some point, we know there will be a failed node
somewhere in the network.
Vertex identifying codes and the random graph – p. 3/2
Origins
Let’s begin with a network.
At some point, we know there will be a failed node
somewhere in the network.
We monitor a subset of the nodes, called a code.
Vertex identifying codes and the random graph – p. 3/2
Origins
Let’s begin with a network.
At some point, we know there will be a failed vertex
somewhere in the network.
We monitor a subset of the vertices, called a code.
Vertex identifying codes and the random graph – p. 3/2
Origins
Let’s begin with a network.
At some point, we know there will be a failed vertex
somewhere in the network.
We monitor a subset of the vertices, called a code.
Each vertex in the code will test itself and its
neighbors for failure.
Vertex identifying codes and the random graph – p. 3/2
An example
Consider the following graph and code.
Vertex identifying codes and the random graph – p. 4/2
An example
Consider the following graph and code.
The code vertices are in red.
Vertex identifying codes and the random graph – p. 4/2
An example
Consider the following graph and code.
This code will detect when any failure occurs.
Vertex identifying codes and the random graph – p. 4/2
An example
Consider the following graph and code.
This code will detect when any failure occurs.
Vertex identifying codes and the random graph – p. 4/2
An example
Consider the following graph and code.
This code will distinguish which node fails.
Vertex identifying codes and the random graph – p. 4/2
An example
Consider the following graph and code.
This code will distinguish which node fails.
If the magenta vertex reads failure and the
red do not, then the failed node must be the
green one.
Vertex identifying codes and the random graph – p. 4/2
An example
Consider the following graph and code.
This code will distinguish which node fails.
If the magenta vertices read failure, then the
failed node must be the green/magenta
checked one.
Vertex identifying codes and the random graph – p. 4/2
Identifying code
Let G be a graph with vertex set V (G) and edge set
E(G).
Vertex identifying codes and the random graph – p. 5/2
Identifying code
Let G be a graph with vertex set V (G) and edge set
E(G).
Let N (v) be the neighborhood of a vertex.
Vertex identifying codes and the random graph – p. 5/2
Identifying code
Let G be a graph with vertex set V (G) and edge set
E(G).
Let N (v) be the neighborhood of a vertex.
Let N [v] = N (v) ∪ {v} be the closed neighborhood
of a vertex.
Vertex identifying codes and the random graph – p. 5/2
Identifying code
Let N (v) be the neighborhood of a vertex.
Let N [v] = N (v) ∪ {v} be the closed neighborhood
of a vertex.
A dominating set is a C ⊆ V (G) such that
N [v] ∩ C 6= ∅
∀v ∈ V (G).
Vertex identifying codes and the random graph – p. 5/2
Identifying code
Let N (v) be the neighborhood of a vertex.
Let N [v] = N (v) ∪ {v} be the closed neighborhood
of a vertex.
A dominating set is a C ⊆ V (G) such that
N [v] ∩ C 6= ∅
∀v ∈ V (G).
An identifying code is a C ⊆ V (G) such that
Vertex identifying codes and the random graph – p. 5/2
Identifying code
Let N (v) be the neighborhood of a vertex.
Let N [v] = N (v) ∪ {v} be the closed neighborhood
of a vertex.
A dominating set is a C ⊆ V (G) such that
N [v] ∩ C 6= ∅
∀v ∈ V (G).
An identifying code is a C ⊆ V (G) such that
• C is a dominating set and
Vertex identifying codes and the random graph – p. 5/2
Identifying code
Let N (v) be the neighborhood of a vertex.
Let N [v] = N (v) ∪ {v} be the closed neighborhood
of a vertex.
A dominating set is a C ⊆ V (G) such that
N [v] ∩ C 6= ∅
∀v ∈ V (G).
An identifying code is a C ⊆ V (G) such that
• C is a dominating set and
• N [v] ∩ C 6= N [w] ∩ C for all v 6= w.
Vertex identifying codes and the random graph – p. 5/2
Petersen code
Let’s return to the example of the Petersen graph.
Vertex identifying codes and the random graph – p. 6/2
Petersen code
Let’s return to the example of the Petersen graph.
Vertex identifying codes and the random graph – p. 6/2
Petersen code
Let’s return to the example of the Petersen graph.
The red vertices are an identifying code of size 5.
Vertex identifying codes and the random graph – p. 6/2
Petersen code
Let’s return to the example of the Petersen graph.
This is a smaller set.
Vertex identifying codes and the random graph – p. 6/2
Petersen code
Let’s return to the example of the Petersen graph.
This is a smaller set. Smaller is better for this
problem. But, is it a code?
Vertex identifying codes and the random graph – p. 6/2
Petersen code
Let’s return to the example of the Petersen graph.
This is a smaller set. Smaller is better for this
problem. But, is it a code?
Vertex identifying codes and the random graph – p. 6/2
Petersen code
Let’s return to the example of the Petersen graph.
This is a smaller set. Smaller is better for this
problem. But, is it a code?
Vertex identifying codes and the random graph – p. 6/2
Petersen code
Let’s return to the example of the Petersen graph.
This is a smaller set. Smaller is better for this
problem. But, is it a code?
Vertex identifying codes and the random graph – p. 6/2
Petersen code
Let’s return to the example of the Petersen graph.
This is a smaller set. Smaller is better for this
problem. But, is it a code?
Vertex identifying codes and the random graph – p. 6/2
Petersen code
Let’s return to the example of the Petersen graph.
This is a smaller set. Smaller is better for this
problem. But, is it a code?
Vertex identifying codes and the random graph – p. 6/2
Petersen code
Let’s return to the example of the Petersen graph.
This is a smaller set. Smaller is better for this
problem. But, is it a code?
Vertex identifying codes and the random graph – p. 6/2
Petersen code
Let’s return to the example of the Petersen graph.
This is a smaller set. Smaller is better for this
problem. But, is it a code?
Vertex identifying codes and the random graph – p. 6/2
Petersen code
Let’s return to the example of the Petersen graph.
This is a smaller set. Smaller is better for this
problem. But, is it a code?
Vertex identifying codes and the random graph – p. 6/2
Petersen code
Let’s return to the example of the Petersen graph.
This is a smaller set. Smaller is better for this
problem. But, is it a code?
Yes!
Vertex identifying codes and the random graph – p. 6/2
Petersen code
Let’s return to the example of the Petersen graph.
This is a smaller set. Smaller is better for this
problem. But, is it a code?
Yes!
Is there a smaller code?
Vertex identifying codes and the random graph – p. 6/2
Lower bound
If C is a code of size 3 in the Petersen graph, P10 ,
Vertex identifying codes and the random graph – p. 7/2
Lower bound
If C is a code of size 3 in the Petersen graph, P10 ,
then the map
Vertex identifying codes and the random graph – p. 7/2
Lower bound
If C is a code of size 3 in the Petersen graph, P10 ,
then the map
f
: V (P10 ) → 2C \ ∅
Vertex identifying codes and the random graph – p. 7/2
Lower bound
If C is a code of size 3 in the Petersen graph, P10 ,
then the map
f : V (P10 ) → 2C \ ∅
f (v) = N [v] ∩ C
Vertex identifying codes and the random graph – p. 7/2
Lower bound
If C is a code of size 3 in the Petersen graph, P10 ,
then the map
f : V (P10 ) → 2C \ ∅
f (v) = N [v] ∩ C
is an injection.
Vertex identifying codes and the random graph – p. 7/2
Lower bound
If C is a code,
then the map
f : V (G) → 2C \ ∅
f (v) = N [v] ∩ C
is an injection.
Thus, 10 ≤ 23 − 1, a contradiction.
Vertex identifying codes and the random graph – p. 7/2
Lower bound
If C is a code,
then the map
f : V (G) → 2C \ ∅
f (v) = N [v] ∩ C
is an injection.
Thus, n ≤ 2|C| − 1
Vertex identifying codes and the random graph – p. 7/2
Lower bound
If C is a code,
then the map
f : V (G) → 2C \ ∅
f (v) = N [v] ∩ C
is an injection.
Thus, n ≤ 2|C| − 1 ⇔ |C| ≥ log2 (n + 1).
Vertex identifying codes and the random graph – p. 7/2
Lower bound
If C is a code,
then the map
f : V (G) → 2C \ ∅
f (v) = N [v] ∩ C
is an injection.
Thus, n ≤ 2|C| − 1 ⇔ |C| ≥ dlog2 (n + 1)e.
Vertex identifying codes and the random graph – p. 7/2
Lower bound
Theorem. [Karpovsky, Chakrabarty, Levitin]
Let G be a graph with identifying code C,
then |C| ≥ dlog2 (n + 1)e.
Proof.
If C is a code,
then the map
f : V (G) → 2C \ ∅
f (v) = N [v] ∩ C
is an injection.
Thus, n ≤ 2|C| − 1 ⇔ |C| ≥ dlog2 (n + 1)e.
Vertex identifying codes and the random graph – p. 7/2
Lower bound
Theorem. [Karpovsky, Chakrabarty, Levitin]
Let G be a graph with identifying code C,
then |C| ≥ dlog2 (n + 1)e.
Proof.
If C is a code,
then the map
f : V (G) → 2C \ ∅
f (v) = N [v] ∩ C
is an injection.
Thus, n ≤ 2|C| − 1 ⇔ |C| ≥ dlog2 (n + 1)e.
Vertex identifying codes and the random graph – p. 7/2
We don’t need no stinkin’ code
What if no code exists?
Vertex identifying codes and the random graph – p. 8/2
We don’t need no stinkin’ code
What if no code exists?
The complete graph has no code.
Vertex identifying codes and the random graph – p. 8/2
We don’t need no stinkin’ code
What if no code exists?
The complete graph, Kn , n ≥ 1, has no code.
Vertex identifying codes and the random graph – p. 8/2
We don’t need no stinkin’ code
What if no code exists?
The complete graph, Kn , n ≥ 1, has no code.
This is because
N [v] ∩ C = N [w] ∩ C.
Vertex identifying codes and the random graph – p. 8/2
We don’t need no stinkin’ code
What if no code exists?
The complete graph, Kn , n ≥ 1, has no code.
This is because
N [v] ∩ C = N [w] ∩ C,
for all C ⊆ V (Kn ).
Vertex identifying codes and the random graph – p. 8/2
We don’t need no stinkin’ code
What if no code exists?
The complete graph, Kn , n ≥ 1, has no code.
This is because
N [v] ∩ C = N [w] ∩ C,
for all C ⊆ V (Kn ),
and all v, w ∈ V (G).
Vertex identifying codes and the random graph – p. 8/2
Codes among us
If there exists a code in graph G, . . .
Vertex identifying codes and the random graph – p. 9/2
Codes among us
If there exists a code in graph G, then N [v] 6= N [w],
for all distinct v, w ∈ V (G).
Vertex identifying codes and the random graph – p. 9/2
Codes among us
If there exists a code in graph G, then N [v] 6= N [w],
for all distinct v, w ∈ V (G).
If N [v] 6= N [w] for all distinct v, w ∈ V (G), . . .
Vertex identifying codes and the random graph – p. 9/2
Codes among us
If there exists a code in graph G, then N [v] 6= N [w],
for all distinct v, w ∈ V (G).
If N [v] 6= N [w] for all distinct v, w ∈ V (G), then
C = V (G) is a code.
Vertex identifying codes and the random graph – p. 9/2
Codes among us
If there exists a code in graph G, then N [v] 6= N [w],
for all distinct v, w ∈ V (G).
If N [v] 6= N [w] for all distinct v, w ∈ V (G), then
C = V (G) is a code. (Closed neighborhoods are
always nonempty.)
Vertex identifying codes and the random graph – p. 9/2
Codes among us
Theorem. [KCL] A graph G admits an
identifying code if and only if N [v] 6= N [w],
for all distinct v, w ∈ V (G).
Proof.
If there exists a code in graph G, then N [v] 6= N [w],
for all distinct v, w ∈ V (G).
If N [v] 6= N [w] for all distinct v, w ∈ V (G), then
C = V (G) is a code. (Closed neighborhoods are
always nonempty.)
Vertex identifying codes and the random graph – p. 9/2
Random graphs
Consider the usual model of a random graph.
Vertex identifying codes and the random graph – p. 10/2
Random graphs
Consider the usual model of a random graph.
Fix n vertices.
Vertex identifying codes and the random graph – p. 10/2
Random graphs
Consider the usual model of a random graph.
Fix n vertices.
For each pair {v, w} ∈
[n]
2
,
Vertex identifying codes and the random graph – p. 10/2
Random graphs
Consider the usual model of a random graph.
Fix n vertices.
[n]
2
,
For each pair {v, w} ∈
make v ∼ w with probability p,
Vertex identifying codes and the random graph – p. 10/2
Random graphs
Consider the usual model of a random graph.
Fix n vertices.
[n]
2
,
For each pair {v, w} ∈
make v ∼ w with probability p,
each pair is independent.
Vertex identifying codes and the random graph – p. 10/2
Codes in random graphs
Theorem. [FMMRS] If E(n, p) is the event that Gn,p
has an identifying code, then limn→∞ Pr (E(n, p)) is
Vertex identifying codes and the random graph – p. 11/2
Codes in random graphs
Theorem. [FMMRS] If E(n, p) is the event that Gn,p
has an identifying code, then limn→∞ Pr (E(n, p)) is
1, if p = o(n−2 );
Vertex identifying codes and the random graph – p. 11/2
Codes in random graphs
Theorem. [FMMRS] If E(n, p) is the event that Gn,p
has an identifying code, then limn→∞ Pr (E(n, p)) is
1, if p = o(n−2 );
e−c1 /2 , if p = c1 n−2 ;
Vertex identifying codes and the random graph – p. 11/2
Codes in random graphs
Theorem. [FMMRS] If E(n, p) is the event that Gn,p
has an identifying code, then limn→∞ Pr (E(n, p)) is
1, if p = o(n−2 );
e−c1 /2 , if p = c1 n−2 ;
0, if ω(n−2 ) = p =
ln n+ln ln n−ω(1)
;
2n
Vertex identifying codes and the random graph – p. 11/2
Codes in random graphs
Theorem. [FMMRS] If E(n, p) is the event that Gn,p
has an identifying code, then limn→∞ Pr (E(n, p)) is
1,
e−c1 /2 ,
0,
−e−c2 /4
,
e
if p = o(n−2 );
if p = c1 n−2 ;
ln n+ln ln n−ω(1)
−2
if ω(n ) = p =
;
2n
if p = ln n+ln2nln n+c2 ;
Vertex identifying codes and the random graph – p. 11/2
Codes in random graphs
Theorem. [FMMRS] If E(n, p) is the event that Gn,p
has an identifying code, then limn→∞ Pr (E(n, p)) is
1,
e−c1 /2 ,
0,
−e−c2 /4
,
e
1,
if p = o(n−2 );
if p = c1 n−2 ;
ln n+ln ln n−ω(1)
−2
if ω(n ) = p =
;
2n
if p = ln n+ln2nln n+c2 ;
ln n+ω(1)
if ln n+ln 2n
=p
ln n+ω(1)
;
and p = 1 −
n
Vertex identifying codes and the random graph – p. 11/2
Codes in random graphs
Theorem. [FMMRS] If E(n, p) is the event that Gn,p
has an identifying code, then limn→∞ Pr (E(n, p)) is
if p = o(n−2 );
if p = c1 n−2 ;
ln n+ln ln n−ω(1)
−2
if ω(n ) = p =
;
2n
if p = ln n+ln2nln n+c2 ;
ln n+ω(1)
if ln n+ln 2n
=p
ln n+ω(1)
;
and p = 1 −
n
−e−c3
3
(1 + e−c3 ), if p = 1 − ln n+c
e
n ;
1,
e−c1 /2 ,
0,
−e−c2 /4
,
e
1,
Vertex identifying codes and the random graph – p. 11/2
Codes in random graphs
Theorem. [FMMRS] If E(n, p) is the event that Gn,p
has an identifying code, then limn→∞ Pr (E(n, p)) is
if p = o(n−2 );
if p = c1 n−2 ;
ln n+ln ln n−ω(1)
−2
if ω(n ) = p =
;
2n
if p = ln n+ln2nln n+c2 ;
ln n+ω(1)
if ln n+ln 2n
=p
ln n+ω(1)
;
and p = 1 −
n
−e−c3
3
(1 + e−c3 ), if p = 1 − ln n+c
e
n ;
ln n−ω(1)
.
0, if p = 1 −
n
1,
e−c1 /2 ,
0,
−e−c2 /4
,
e
1,
Vertex identifying codes and the random graph – p. 11/2
Codes in random graphs
Theorem. [FMMRS] If E(n, p) is the event that Gn,p
has an identifying code, then
lim Pr (E(n, p)) = 1,
n→∞
if
ln n + ln ln n + ω(1)
ln n + ω(1)
=p=1−
.
2n
n
Vertex identifying codes and the random graph – p. 11/2
Codes in random graphs
Theorem. [FMMRS] If E(n, p) is the event that Gn,p
has an identifying code, then
Vertex identifying codes and the random graph – p. 11/2
Code sizes in random graphs
For a graph G, define c(G)
Vertex identifying codes and the random graph – p. 12/2
Code sizes in random graphs
For a graph G, define c(G) to be the size of a smallest
identifying code in G.
Vertex identifying codes and the random graph – p. 12/2
Code sizes in random graphs
For a graph G, define c(G) to be the size of a smallest
identifying code in G. (If none, c(G) = ∞.)
Vertex identifying codes and the random graph – p. 12/2
Code sizes in random graphs
For a graph G, define c(G) to be the size of a smallest
identifying code in G. (If none, c(G) = ∞.)
Theorem. [FMMRS] Let 0 < p < 1.
Vertex identifying codes and the random graph – p. 12/2
Code sizes in random graphs
For a graph G, define c(G) to be the size of a smallest
identifying code in G. (If none, c(G) = ∞.)
Theorem. [FMMRS] Let 0 < p < 1.
def
q = p2 + (1 − p)2 .
Vertex identifying codes and the random graph – p. 12/2
Code sizes in random graphs
For a graph G, define c(G) to be the size of a smallest
identifying code in G. (If none, c(G) = ∞.)
Theorem. [FMMRS] Let 0 < p < 1.
def
q = p2 + (1 − p)2 .
For almost every graph in G(n, p), we have
Vertex identifying codes and the random graph – p. 12/2
Code sizes in random graphs
For a graph G, define c(G) to be the size of a smallest
identifying code in G. (If none, c(G) = ∞.)
Theorem. [FMMRS] Let 0 < p < 1.
def
q = p2 + (1 − p)2 .
For almost every graph in G(n, p), we have
2 log n
c (Gn,p ) ∼
.
log(1/q)
Vertex identifying codes and the random graph – p. 12/2
Code sizes in random graphs
Theorem. [FMMRS] Let 0 < p < 1.
def
2
2
q = p + (1 − p) .
For almost every graph in G(n, p), we have
2 log n
.
c (Gn,p ) ∼
log(1/q)
I.e., for all >
0,
−1
2
log
n
− 1 ≥ = 0.
limn→∞ Pr c (Gn,p ) · log(1/q)
Vertex identifying codes and the random graph – p. 12/2
Code sizes in random graphs
Theorem. [FMMRS] Let p, 1 − p ≥ 4 ln ln n/ ln n.
def
q = p2 + (1 − p)2 .
For almost every graph in G(n, p), we have
2 log n
c (Gn,p ) ∼
.
log(1/q)
I.e., for all >
0,
−1
2
log
n
− 1 ≥ = 0.
limn→∞ Pr c (Gn,p ) · log(1/q)
Vertex identifying codes and the random graph – p. 12/2
Code sizes in random graphs
Theorem. [FMMRS] Let p, 1 − p ≥ 4 ln ln n/ ln n.
def
q = p2 + (1 − p)2 .
For almost every graph in G(n, p), we have
2 log n
c (Gn,p ) ∼
.
log(1/q)
The proof uses an inequality of Suen.
Vertex identifying codes and the random graph – p. 12/2
Code sizes in random graphs
Theorem. [FMMRS] Let p, 1 − p ≥ 4 ln ln n/ ln n.
def
q = p2 + (1 − p)2 .
For almost every graph in G(n, p), we have
2 log n
c (Gn,p ) ∼
.
log(1/q)
The proof uses an inequality of Suen.
Suen’s inequality resembles the Lovász Local
Lemma, in that there is a dependency graph.
Vertex identifying codes and the random graph – p. 12/2
Existentialism
We can generalize the idea of a code,
even when one does not exist.
Vertex identifying codes and the random graph – p. 13/2
Existentialism
We can generalize the idea of a code,
even when one does not exist.
Construct a relation R on
the vertex set of a graph G.
Vertex identifying codes and the random graph – p. 13/2
Existentialism
We can generalize the idea of a code,
even when one does not exist.
Construct a relation R on
the vertex set of a graph G.
We say xRy if N [x] = N [y].
Vertex identifying codes and the random graph – p. 13/2
Existentialism
We can generalize the idea of a code,
even when one does not exist.
Construct a relation R on
the vertex set of a graph G.
We say xRy if N [x] = N [y].
It is easy to see that this is an
equivalence relation on V (G):
Vertex identifying codes and the random graph – p. 13/2
Existentialism
We say xRy if N [x] = N [y].
It is easy to see that this is an
equivalence relation on V (G):
Vertex identifying codes and the random graph – p. 13/2
Existentialism
We say xRy if N [x] = N [y].
It is easy to see that this is an
equivalence relation on V (G):
• Reflexivity:
N [u] = N [u].
Vertex identifying codes and the random graph – p. 13/2
Existentialism
We say xRy if N [x] = N [y].
It is easy to see that this is an
equivalence relation on V (G):
• Reflexivity:
N [u] = N [u].
Vertex identifying codes and the random graph – p. 13/2
Existentialism
We say xRy if N [x] = N [y].
It is easy to see that this is an
equivalence relation on V (G):
• Reflexivity:
N [u] = N [u].
• Symmetry:
N [u] = N [v] ⇒ N [v] = N [u].
Vertex identifying codes and the random graph – p. 13/2
Existentialism
We say xRy if N [x] = N [y].
It is easy to see that this is an
equivalence relation on V (G):
• Reflexivity:
N [u] = N [u].
• Symmetry:
N [u] = N [v] ⇒ N [v] = N [u].
Vertex identifying codes and the random graph – p. 13/2
Existentialism
We say xRy if N [x] = N [y].
It is easy to see that this is an
equivalence relation on V (G):
• Reflexivity:
N [u] = N [u].
• Symmetry:
N [u] = N [v] ⇒ N [v] = N [u].
• Transitivity:
N [u] = N [v]&N [v] = N [w] ⇒ N [u] = N [w].
Vertex identifying codes and the random graph – p. 13/2
Existentialism
We say xRy if N [x] = N [y].
It is easy to see that this is an
equivalence relation on V (G):
• Reflexivity:
N [u] = N [u].
• Symmetry:
N [u] = N [v] ⇒ N [v] = N [u].
• Transitivity:
N [u] = N [v]&N [v] = N [w] ⇒ N [u] = N [w].
Vertex identifying codes and the random graph – p. 13/2
Existentialism
We say xRy if N [x] = N [y].
It is easy to see that this is an
equivalence relation on V (G):
• Reflexivity:
• Symmetry:
• Transitivity:
Vertex identifying codes and the random graph – p. 13/2
Existentialism
We say xRy if N [x] = N [y].
It is easy to see that this is an
equivalence relation on V (G):
• Reflexivity:
• Symmetry:
• Transitivity:
So, if vertices have different closed neighborhoods,
they can be distinguished.
Vertex identifying codes and the random graph – p. 13/2
Existentialism
We say xRy if N [x] = N [y].
It is easy to see that this is an
equivalence relation on V (G):
• Reflexivity:
• Symmetry:
• Transitivity:
So, if vertices have different balls,
they can be distinguished.
Vertex identifying codes and the random graph – p. 13/2
Existentialism
We say xRy if N [x] = N [y].
It is easy to see that this is an
equivalence relation on V (G):
• Reflexivity:
• Symmetry:
• Transitivity:
So, if vertices have different balls,
they can be distinguished.
If the balls are the same, then we cannot
distinguish them anyway.
Vertex identifying codes and the random graph – p. 13/2
Existentialism
We say xRy if N [x] = N [y].
It is easy to see that this is an
equivalence relation on V (G):
• Reflexivity:
• Symmetry:
• Transitivity:
So, if vertices have different balls,
they can be distinguished.
If the balls are the same, then we cannot
distinguish them anyway, so why bother?
Vertex identifying codes and the random graph – p. 13/2
You get a stinkin’ code anyway
So, instead of a vertex-identifying code,
we can get a ball-identifying code.
Vertex identifying codes and the random graph – p. 14/2
You get a stinkin’ code anyway
So, instead of a vertex-identifying code,
we can get a ball-identifying code.
Such a code is always well-defined.
Vertex identifying codes and the random graph – p. 14/2
You get a stinkin’ code anyway
So, instead of a vertex-identifying code,
we can get a ball-identifying code.
Such a code is always well-defined.
Although it enables us to get around the question of
the existence of a code,
Vertex identifying codes and the random graph – p. 14/2
You get a stinkin’ code anyway
So, instead of a vertex-identifying code,
we can get a ball-identifying code.
Such a code is always well-defined.
Although it enables us to get around the question of
the existence of a code, it doesn’t seem to have any
great practical value.
Vertex identifying codes and the random graph – p. 14/2
You get a stinkin’ code anyway
So, instead of a vertex-identifying code,
we can get a ball-identifying code.
Such a code is always well-defined.
Although it enables us to get around the question of
the existence of a code, it doesn’t seem to have any
great practical value.
Since a code exists in the random graph Gn,p for
most reasonable values of p,
Vertex identifying codes and the random graph – p. 14/2
You get a stinkin’ code anyway
So, instead of a vertex-identifying code,
we can get a ball-identifying code.
Such a code is always well-defined.
Although it enables us to get around the question of
the existence of a code, it doesn’t seem to have any
great practical value.
Since a code exists in the random graph Gn,p for
most reasonable values of p, this is not a useful
generalization because a vertex-identifying code
already exists, with high probability.
Vertex identifying codes and the random graph – p. 14/2
A topology
If you like the language of topology,
Vertex identifying codes and the random graph – p. 15/2
A topology
If you like the language of topology, then you’re
alone.
Vertex identifying codes and the random graph – p. 15/2
A topology
If you like the language of topology, then you’re
alone.
But this is just tennis topology.
Vertex identifying codes and the random graph – p. 15/2
A topology
If you like the language of topology, then you’re
alone.
But this is just point topology.
Vertex identifying codes and the random graph – p. 15/2
A topology
If you like the language of topology, then you’re
alone.
But this is just point-set topology.
Vertex identifying codes and the random graph – p. 15/2
A topology
If you like the language of topology, then you’re
alone.
But this is just point-set-match? topology.
Vertex identifying codes and the random graph – p. 15/2
A topology
If you like the language of topology, then you’re
alone.
But this is just point-set topology.
Briefly,
Vertex identifying codes and the random graph – p. 15/2
A topology
If you like the language of topology, then you’re
alone.
But this is just point-set topology.
Briefly,
• We can take as elements of the set to be closed
neighborhoods.
Vertex identifying codes and the random graph – p. 15/2
A topology
If you like the language of topology, then you’re
alone.
But this is just point-set topology.
Briefly,
• We can take as elements of the set to be closed
neighborhoods.
• And every union of closed neighborhoods is an
open set.
Vertex identifying codes and the random graph – p. 15/2
A topology
If you like the language of topology, then you’re
alone.
But this is just point-set topology.
Briefly,
• We can take as elements of the set to be closed
neighborhoods.
• And every union of closed neighborhoods is an
open set. (This is the discrete topology.)
Vertex identifying codes and the random graph – p. 15/2
A topology
If you like the language of topology, then you’re
alone.
But this is just point-set topology.
Briefly,
• We can take as elements of the set to be closed
neighborhoods.
• And every union of closed neighborhoods is an
open set. (This is the discrete topology.)
This forms a T1 topology, in that for any pair of
distinct neighborhoods,
Vertex identifying codes and the random graph – p. 15/2
A topology
If you like the language of topology, then you’re
alone.
But this is just point-set topology.
Briefly,
• We can take as elements of the set to be closed
neighborhoods.
• And every union of closed neighborhoods is an
open set. (This is the discrete topology.)
This forms a T1 topology, in that for any pair of
distinct neighborhoods, there is an open set that
contains one but not the other.
Vertex identifying codes and the random graph – p. 15/2
A topology
Yeah, I know.
Vertex identifying codes and the random graph – p. 15/2
A topology
Yeah, I know. Let’s just forget I brought it up.
Vertex identifying codes and the random graph – p. 15/2
More failure
Suppose we can allow more than one node to fail.
Vertex identifying codes and the random graph – p. 16/2
More failure
Suppose we can allow more than one node to fail.
We will fix ` and try to distinguish between
subsets of size at most `.
Vertex identifying codes and the random graph – p. 16/2
More failure
Suppose we can allow more than one node to fail.
We will fix ` and try to distinguish between
subsets of size at most `.
Recall N [v] = N (v) ∪ {v}.
Vertex identifying codes and the random graph – p. 16/2
More failure
Suppose we can allow more than one node to fail.
We will fix ` and try to distinguish between
subsets of size at most `.
Recall N [v] = N (v) ∪ {v}. For S ⊆ V (G), let
Vertex identifying codes and the random graph – p. 16/2
More failure
Suppose we can allow more than one node to fail.
We will fix ` and try to distinguish between
subsets of size at most `.
Recall N [v] = N (v) ∪ {v}. For S ⊆ V (G), let
[
N [v].
N [S] =
v∈S
Vertex identifying codes and the random graph – p. 16/2
More failure
We will fix ` and try to distinguish between
subsets of size at most `.
Recall N [v] = N (v) ∪ {v}. For S ⊆ V (G), let
[
N [S] =
N [v].
v∈S
We say C ⊆ V (G) is an `-identifying code if
Vertex identifying codes and the random graph – p. 16/2
More failure
We will fix ` and try to distinguish between
subsets of size at most `.
Recall N [v] = N (v) ∪ {v}. For S ⊆ V (G), let
[
N [S] =
N [v].
v∈S
We say C ⊆ V (G) is an `-identifying code if
N [S] ∩ C 6= N [T ] ∩ C
Vertex identifying codes and the random graph – p. 16/2
More failure
Recall N [v] = N (v) ∪ {v}. For S ⊆ V (G), let
[
N [S] =
N [v].
v∈S
We say C ⊆ V (G) is an `-identifying code if
N [S] ∩ C 6= N [T ] ∩ C
for all distinct nonempty S, T ⊆ V (G)
with |S|, |T | ≤ `.
Vertex identifying codes and the random graph – p. 16/2
More code sizes
It is clear that every (` + 1)-identifying code
is an `-identifying code.
Vertex identifying codes and the random graph – p. 17/2
More code sizes
It is clear that every (` + 1)-identifying code
is an `-identifying code.
So, how large is the smallest `-identifying code
in the random graph?
Vertex identifying codes and the random graph – p. 17/2
More code sizes
It is clear that every (` + 1)-identifying code
is an `-identifying code.
So, how large is the smallest `-identifying code
in the random graph?
It is clearly at least as large as the smallest
1-identifying code.
Vertex identifying codes and the random graph – p. 17/2
More code sizes
It is clear that every (` + 1)-identifying code
is an `-identifying code.
So, how large is the smallest `-identifying code
in the random graph?
It is clearly at least as large as the smallest
1-identifying code.
In the random graph, Gn,p , for p constant, is it still
Θ(log n)?
Vertex identifying codes and the random graph – p. 17/2
More random code sizes
For a graph G, define c` (G)
Vertex identifying codes and the random graph – p. 18/2
More random code sizes
For a graph G, define c` (G) to be the size
of a smallest `-identifying code in G.
Vertex identifying codes and the random graph – p. 18/2
More random code sizes
For a graph G, define c` (G) to be the size
of a smallest `-identifying code in G.
(If none, c` (G) = ∞.)
Vertex identifying codes and the random graph – p. 18/2
More random code sizes
For a graph G, define c` (G) to be the size
of a smallest `-identifying code in G.
(If none, c` (G) = ∞.)
Theorem. [FMMRS] Let 0 < p < 1.
Vertex identifying codes and the random graph – p. 18/2
More random code sizes
For a graph G, define c` (G) to be the size
of a smallest `-identifying code in G.
(If none, c` (G) = ∞.)
Theorem. [FMMRS] Let 0 < p < 1.
def
q` = 1 − min{p, 2p(1 − p)}(1 − p)`−1 .
Vertex identifying codes and the random graph – p. 18/2
More random code sizes
For a graph G, define c` (G) to be the size
of a smallest `-identifying code in G.
(If none, c` (G) = ∞.)
Theorem. [FMMRS] Let 0 < p < 1.
def
q` = 1 − min{p, 2p(1 − p)}(1 − p)`−1 .
For any > 0 and almost every graph
in G(n, p), we have
Vertex identifying codes and the random graph – p. 18/2
More random code sizes
For a graph G, define c` (G) to be the size
of a smallest `-identifying code in G.
(If none, c` (G) = ∞.)
Theorem. [FMMRS] Let 0 < p < 1.
def
q` = 1 − min{p, 2p(1 − p)}(1 − p)`−1 .
For any > 0 and almost every graph
in G(n, p), we have
2(` + ) log n
.
c` (Gn,p ) ≤
log(1/q` )
Vertex identifying codes and the random graph – p. 18/2
More random code sizes
Theorem. [FMMRS] Let 0 < p < 1.
def
q` = 1 − min{p, 2p(1 − p)}(1 − p)`−1 .
For any > 0 and almost every graph
in G(n, p), we have
2(` + ) log n
c` (Gn,p ) ≤
.
log(1/q` )
Note that we may have
c` (Gn,p ) 6= O (` ln n) ,
Vertex identifying codes and the random graph – p. 18/2
More random code sizes
Theorem. [FMMRS] Let 0 < p < 1.
def
q` = 1 − min{p, 2p(1 − p)}(1 − p)`−1 .
For any > 0 and almost every graph
in G(n, p), we have
2(` + ) log n
c` (Gn,p ) ≤
.
log(1/q` )
Note that we may have
c` (Gn,p ) 6= O (` ln n) ,
−1
`
because (log(1/q` )) = O 2 .
Vertex identifying codes and the random graph – p. 18/2
More random code sizes
Theorem. [FMMRS] Let 0 < p < 1.
def
q` = 1 − min{p, 2p(1 − p)}(1 − p)`−1 .
For any > 0 and almost every graph
in G(n, p), we have
2(` + ) log n
c` (Gn,p ) ≤
.
log(1/q` )
It is true that
`
c` (Gn,p ) = O `2 ln n ,
−1
`
because (log(1/q` )) = O 2 .
Vertex identifying codes and the random graph – p. 18/2
Connections to matrices
Given: A graph G, C ⊆ V (G).
Vertex identifying codes and the random graph – p. 19/2
Connections to matrices
Given: A graph G, C ⊆ V (G).
Construct: Matrix M , |C| × |V (G)|.
Vertex identifying codes and the random graph – p. 19/2
Connections to matrices
Given: A graph G, C ⊆ V (G).
Construct: Matrix M , |C| × |V (G)|.
1, if ci ∼ vj or ci = vj ;
mij =
0, else.
If C is an `-identifying code for G, then
Vertex identifying codes and the random graph – p. 19/2
Connections to matrices
Given: A graph G, C ⊆ V (G).
Construct: Matrix M , |C| × |V (G)|.
1, if ci ∼ vj or ci = vj ;
mij =
0, else.
If C is an `-identifying code for G, then
there is no zero column and
Vertex identifying codes and the random graph – p. 19/2
Connections to matrices
Given: A graph G, C ⊆ V (G).
Construct: Matrix M , |C| × |V (G)|.
1, if ci ∼ vj or ci = vj ;
mij =
0, else.
If C is an `-identifying code for G, then
there is no zero column and
The bitwise OR of each set of ≤ ` columns is
unique.
Vertex identifying codes and the random graph – p. 19/2
Connections to matrices
Given: A graph G, C ⊆ V (G).
Construct: Matrix M , |C| × |V (G)|.
1, if ci ∼ vj or ci = vj ;
mij =
0, else.
If C is an `-identifying code for G, then
there is no zero column and
The bitwise OR of each set of ≤ ` columns is
unique.
This is an `-superimposed code (UD` -code).
Vertex identifying codes and the random graph – p. 19/2
Connections to matrices
Given: A graph G, C ⊆ V (G).
Construct: Matrix M , |C| × |V (G)|.
If C is an `-identifying code for G, then
there is no zero column and
The bitwise OR of each set of ≤ ` columns is
unique.
This is an `-superimposed code (UD` -code).
• |C| is the dimension, and
Vertex identifying codes and the random graph – p. 19/2
Connections to matrices
Given: A graph G, C ⊆ V (G).
Construct: Matrix M , |C| × |V (G)|.
If C is an `-identifying code for G, then
there is no zero column and
The bitwise OR of each set of ≤ ` columns is
unique.
This is an `-superimposed code (UD` -code).
• |C| is the dimension, and
• |V (G)| is the cardinality.
Vertex identifying codes and the random graph – p. 19/2
Superimposed codes
Theorem. [D’yachkov-Rykov,
Füredi-Ruszinkó, Csűrös-Rusz., Rusz.]
There exists a constant a such that, in a space of
dimension N , a code with cardinality n satisfies
Vertex identifying codes and the random graph – p. 20/2
Superimposed codes
Theorem. [D’yachkov-Rykov,
Füredi-Ruszinkó, Csűrös-Rusz., Rusz.]
There exists a constant a such that, in a space of
dimension N , a code with cardinality n satisfies
−1 log `
.
n ≤ exp a N 2
`
Vertex identifying codes and the random graph – p. 20/2
Superimposed codes
Theorem. [D’yachkov-Rykov,
Füredi-Ruszinkó, Csűrös-Rusz., Rusz.,
FMMRS]
There exists a constant a such that, for an
`-identifying code, C, of an n-vertex graph G,
log `
n ≤ exp a |C| 2
`
−1
.
Vertex identifying codes and the random graph – p. 20/2
Superimposed codes
Theorem. [D’yachkov-Rykov,
Füredi-Ruszinkó, Csűrös-Rusz., Rusz.,
FMMRS]
There exists a constant a such that, for an
`-identifying code, C, of an n-vertex graph G,
`2
log n ≤ |C|.
a
log `
Vertex identifying codes and the random graph – p. 20/2
Superimposed codes
Theorem. [D’yachkov-Rykov,
Füredi-Ruszinkó, Csűrös-Rusz., Rusz.,
FMMRS]
There exists a constant a such that, for an
`-identifying code, C, of an n-vertex graph G,
`2
log n ≤ |C|.
a
log `
Note that this lower bound holds for all graphs.
Vertex identifying codes and the random graph – p. 20/2
Superimposed codes
Theorem. [D’yachkov-Rykov,
Füredi-Ruszinkó, Csűrös-Rusz., Rusz.,
FMMRS]
There exists a constant a such that, for an
`-identifying code, C, of an n-vertex graph G,
`2
log n ≤ |C|.
a
log `
Note that this lower bound holds for all graphs, not
just random graphs.
Vertex identifying codes and the random graph – p. 20/2
Superimposed codes
Theorem. [D’yachkov-Rykov,
Füredi-Ruszinkó, Csűrös-Rusz., Rusz.,
FMMRS]
There exists a constant a such that, for an
`-identifying code, C, of an n-vertex graph G,
`2
log n ≤ |C|.
a
log `
Note that this lower bound holds for all graphs, not
just random graphs.
Actually, a = 1/8 does the job, for n sufficiently
large.
Vertex identifying codes and the random graph – p. 20/2
Smallest possible code
Let m` (n) be the size of the smallest `-identifying
code in an n-vertex graph.
Theorem. [KCL] Let ` ≥ 2. There exists an absolute
constant c0 such that
c0 ` log n ≤ m` (n).
Vertex identifying codes and the random graph – p. 21/2
Smallest possible code
Let m` (n) be the size of the smallest `-identifying
code in an n-vertex graph.
Theorem. [FMMRS] Let ` ≥ 2. There exist absolute
constants c0 , c1 , c2 such that
`2
log n ≤ m` (n) ≤ c2 `2 log n.
c1
log `
Vertex identifying codes and the random graph – p. 21/2
Absurd generalization
In the literature, the notation is a bit different.
Vertex identifying codes and the random graph – p. 22/2
Absurd generalization
In the literature, the notation is a bit different.
• Vertex identifying codes are called
(1, 1)-identifying codes.
Vertex identifying codes and the random graph – p. 22/2
Absurd generalization
In the literature, the notation is a bit different.
• Vertex identifying codes are called
(1, 1)-identifying codes.
• For ` ≥ 2, `-identifying codes are called
(1, ≤ `)-identifying codes.
The first coordinate indicates the size of the balls that
surround each vertex.
Vertex identifying codes and the random graph – p. 22/2
Absurd generalization
In the literature, the notation is a bit different.
• Vertex identifying codes are called
(1, 1)-identifying codes.
• For ` ≥ 2, `-identifying codes are called
(1, ≤ `)-identifying codes.
The first coordinate indicates the size of the balls that
surround each vertex. I.e., second neighborhood, third
neighborhood, etc.
Vertex identifying codes and the random graph – p. 22/2
Absurd generalization
In the literature, the notation is a bit different.
• For ` ≥ 2, `-identifying codes are called
(1, ≤ `)-identifying codes.
The first coordinate indicates the size of the balls that
surround each vertex. I.e., second neighborhood, third
neighborhood, etc.
Let Ni (v) denote the ith neighborhood of v.
Vertex identifying codes and the random graph – p. 22/2
Absurd generalization
In the literature, the notation is a bit different.
The first coordinate indicates the size of the balls that
surround each vertex. I.e., second neighborhood, third
neighborhood, etc.
Let Ni (v) denote the ith neighborhood of v.
Vertex identifying codes and the random graph – p. 22/2
Absurd generalization
In the literature, the notation is a bit different.
The first coordinate indicates the size of the balls that
surround each vertex. I.e., second neighborhood, third
neighborhood, etc.
Let Ni (v) denote the ith neighborhood of v.
For S ⊆ V (G), define
Vertex identifying codes and the random graph – p. 22/2
Absurd generalization
In the literature, the notation is a bit different.
The first coordinate indicates the size of the balls that
surround each vertex. I.e., second neighborhood, third
neighborhood, etc.
Let Ni (v) denote the ith neighborhood of v.
For S ⊆ V (G), define
Bk [S] =
k
[[
Ni (v).
v∈S i=0
Vertex identifying codes and the random graph – p. 22/2
Absurd generalization
Let Ni (v) denote the ith neighborhood of v.
For S ⊆ V (G), define
Bk [S] =
k
[[
Ni (v).
v∈S i=0
Vertex identifying codes and the random graph – p. 22/2
Absurd generalization
Let Ni (v) denote the ith neighborhood of v.
For S ⊆ V (G), define
Bk [S] =
k
[[
Ni (v).
v∈S i=0
For positive integers k and `, C ⊆ V (G) is a
(≤ k, ≤ `)-identifying code if
Vertex identifying codes and the random graph – p. 22/2
Absurd generalization
Let Ni (v) denote the ith neighborhood of v.
For S ⊆ V (G), define
Bk [S] =
k
[[
Ni (v).
v∈S i=0
For positive integers k and `, C ⊆ V (G) is a
(≤ k, ≤ `)-identifying code if
Bk0 [S] ∩ C
Vertex identifying codes and the random graph – p. 22/2
Absurd generalization
Let Ni (v) denote the ith neighborhood of v.
For S ⊆ V (G), define
Bk [S] =
k
[[
Ni (v).
v∈S i=0
For positive integers k and `, C ⊆ V (G) is a
(≤ k, ≤ `)-identifying code if
Bk0 [S] ∩ C
is unique and nonempty for all pairs (k 0 , S).
Vertex identifying codes and the random graph – p. 22/2
Absurd generalization
Let Ni (v) denote the ith neighborhood of v.
For S ⊆ V (G), define
Bk [S] =
k
[[
Ni (v).
v∈S i=0
For positive integers k and `, C ⊆ V (G) is a
(≤ k, ≤ `)-identifying code if
Bk0 [S] ∩ C
is unique and nonempty for all pairs (k 0 , S), where
1 ≤ k 0 ≤ k.
Vertex identifying codes and the random graph – p. 22/2
Absurd generalization
Let Ni (v) denote the ith neighborhood of v.
For S ⊆ V (G), define
Bk [S] =
k
[[
Ni (v).
v∈S i=0
For positive integers k and `, C ⊆ V (G) is a
(≤ k, ≤ `)-identifying code if
Bk0 [S] ∩ C
is unique and nonempty for all pairs (k 0 , S), where
1 ≤ k 0 ≤ k; and all S.
Vertex identifying codes and the random graph – p. 22/2
Absurd generalization
Let Ni (v) denote the ith neighborhood of v.
For S ⊆ V (G), define
Bk [S] =
k
[[
Ni (v).
v∈S i=0
For positive integers k and `, C ⊆ V (G) is a
(≤ k, ≤ `)-identifying code if
Bk0 [S] ∩ C
is unique and nonempty for all pairs (k 0 , S), where
1 ≤ k 0 ≤ k; and all S, ∅ 6= S ⊆ V (G).
Vertex identifying codes and the random graph – p. 22/2
Absurd generalization
Let Ni (v) denote the ith neighborhood of v.
For S ⊆ V (G), define
Bk [S] =
k
[[
Ni (v).
v∈S i=0
For positive integers k and `, C ⊆ V (G) is a
(≤ k, ≤ `)-identifying code if
Bk0 [S] ∩ C
is unique and nonempty for all pairs (k 0 , S), where
1 ≤ k 0 ≤ k; and all S, ∅ 6= S ⊆ V (G), |S| ≤ `.
Vertex identifying codes and the random graph – p. 22/2
Grids
For infinite graphs, we cannot
talk about the size of a code.
Vertex identifying codes and the random graph – p. 23/2
Grids
For infinite graphs, we cannot
talk about the size of a code.
If the graph is locally finite, then we can
talk about the density.
Vertex identifying codes and the random graph – p. 23/2
Grids
For infinite graphs, we cannot
talk about the size of a code.
If the graph is locally finite, then we can
talk about the density.
Let us focus on the basic definition of codes.
Vertex identifying codes and the random graph – p. 23/2
Triangular grid
Vertex identifying codes and the random graph – p. 24/2
Triangular grid
Let G be a grid and D(G) denote the infimum of the
density of a code in G.
Vertex identifying codes and the random graph – p. 24/2
Triangular grid
Let G be a grid and D(G) denote the infimum of the
density of a code in G.
D(T) =
1
4
[KCL]
Vertex identifying codes and the random graph – p. 24/2
Triangular grid
Let G be a grid and D(G) denote the infimum of the
density of a code in G.
D(T) =
1
4
[KCL]
• The lower bound comes from the fact that d-regular
graphs on N vertices have, for every code, C,
Vertex identifying codes and the random graph – p. 24/2
Triangular grid
D(T) =
1
4
[KCL]
• The lower bound comes from the fact that d-regular
graphs on N vertices have, for every code, C,
Vertex identifying codes and the random graph – p. 24/2
Triangular grid
D(T) =
1
4
[KCL]
• The lower bound comes from the fact that d-regular
graphs on N vertices have, for every code, C,
2N
.
|C| ≥
d+2
Vertex identifying codes and the random graph – p. 24/2
Triangular grid
D(T) =
[KCL]
1
4
• The lower bound comes from the fact that d-regular
graphs on N vertices have, for every code, C,
2
D≥
.
d+2
Take the limit.
Vertex identifying codes and the random graph – p. 24/2
Triangular grid
D(T) =
[KCL]
1
4
• The lower bound comes from the fact that d-regular
graphs on N vertices have, for every code, C,
2
D≥
.
6+2
Take the limit.
Vertex identifying codes and the random graph – p. 24/2
Triangular grid
D(T) =
1
4
[KCL]
• The upper bound comes from the following
construction.
Vertex identifying codes and the random graph – p. 24/2
Triangular grid
D(T) =
1
4
[KCL]
• The upper bound comes from the following
construction.
Vertex identifying codes and the random graph – p. 24/2
Square grid
Vertex identifying codes and the random graph – p. 25/2
Square grid
1
3
≤ D(Z2 ) ≤
3
8
[KCL]
• The lower bound comes from
2
D≥
.
d+2
Vertex identifying codes and the random graph – p. 25/2
Square grid
1
3
≤ D(Z2 ) ≤
3
8
[KCL]
• The lower bound comes from
2
D≥
.
4+2
Vertex identifying codes and the random graph – p. 25/2
Square grid
1
3
≤ D(Z2 ) ≤
3
8
[KCL]
• The upper bound comes from the following
construction.
Vertex identifying codes and the random graph – p. 25/2
Square grid
23
66
≤ D(Z2 ) ≤
5
14
[CHLZ1]
• The lower bound comes from a complex argument.
Vertex identifying codes and the random graph – p. 25/2
Square grid
23
66
≤ D(Z2 ) ≤
5
14
[CHLZ1]
• The lower bound comes from a complex argument.
• The upper bound comes from the following
construction.
Vertex identifying codes and the random graph – p. 25/2
Square grid
23
66
≤ D(Z2 ) ≤
5
14
[CHLZ1]
• The lower bound comes from a complex argument.
• The upper bound comes from the following
construction.
Vertex identifying codes and the random graph – p. 25/2
Square grid
23
66
≤ D(Z2 ) ≤
5
14
[CHLZ1]
Vertex identifying codes and the random graph – p. 25/2
Square grid
23
66
≤ D(Z2 ) ≤
5
14
[CHLZ1]
Vertex identifying codes and the random graph – p. 25/2
Square grid
23
66
≤ D(Z2 ) ≤
7
20
[CHLZ2]
Vertex identifying codes and the random graph – p. 25/2
Square grid
15
43
≤ D(Z2 ) ≤
7
20
[CHLZ2,CHLZ3]
Vertex identifying codes and the random graph – p. 25/2
Square grid
15
43
≤ D(Z2 ) ≤
7
20
[CHLZ2,CHLZ3]
• The lower bound comes from yet another complex
argument.
Vertex identifying codes and the random graph – p. 25/2
Square grid
15
43
≤ D(Z2 ) ≤
7
20
[CHLZ2,CHLZ3]
• The lower bound comes from yet another complex
argument.
• The upper bound comes from the following
construction.
Vertex identifying codes and the random graph – p. 25/2
Square grid
15
43
≤ D(Z2 ) ≤
7
20
[CHLZ2,CHLZ3]
• The upper bound comes from the following
construction.
Vertex identifying codes and the random graph – p. 25/2
Square grid
15
43
≤ D(Z2 ) ≤
7
20
[CHLZ2,CHLZ3]
• The upper bound comes from the following
constructions.
Vertex identifying codes and the random graph – p. 25/2
Hexagonal grids
Vertex identifying codes and the random graph – p. 26/2
Hexagonal grids
2
5
≤ D(H) ≤
1
2
[KCL]
Vertex identifying codes and the random graph – p. 26/2
Hexagonal grids
2
5
≤ D(H) ≤
1
2
[KCL]
• The lower bound comes from the fact that d-regular
graphs on N vertices have, for every code, C,
Vertex identifying codes and the random graph – p. 26/2
Hexagonal grids
2
5
≤ D(H) ≤
1
2
[KCL]
• The lower bound comes from the fact that d-regular
graphs on N vertices have, for every code, C,
2
D≥
.
3+2
Vertex identifying codes and the random graph – p. 26/2
Hexagonal grids
2
5
≤ D(H) ≤
1
2
[KCL]
• The upper bound comes from the following
construction.
Vertex identifying codes and the random graph – p. 26/2
Hexagonal grids
2
5
≤ D(H) ≤
1
2
[KCL]
• The upper bound comes from the following
construction.
Vertex identifying codes and the random graph – p. 26/2
Hexagonal grids
16
39
≤ D(H) ≤
3
7
[CHLZ4]
Vertex identifying codes and the random graph – p. 26/2
Hexagonal grids
16
39
≤ D(H) ≤
3
7
[CHLZ4]
• The lower bound comes from a complex argument.
Vertex identifying codes and the random graph – p. 26/2
Hexagonal grids
16
39
≤ D(H) ≤
3
7
[CHLZ4]
• The lower bound comes from a complex argument.
• The upper bound comes from a construction.
Vertex identifying codes and the random graph – p. 26/2
Hexagonal grids
≤ D(H) ≤ 37
[CHLZ4]
• The upper bound comes from a construction.
16
39
Vertex identifying codes and the random graph – p. 26/2
Hexagonal grids
≤ D(H) ≤ 37
[CHLZ4]
• The upper bound comes from constructions.
16
39
Vertex identifying codes and the random graph – p. 26/2
Open grid questions
• The size of the square grid code
is still open:
7
15
2
≤ D(Z ) ≤
43
20
Vertex identifying codes and the random graph – p. 27/2
Open grid questions
• The size of the square grid code
is still open:
0.3488 ≤ D(Z2 ) ≤ 0.3500
Vertex identifying codes and the random graph – p. 27/2
Open grid questions
• (To my knowledge) the size of the square grid code
is still open:
0.3488 ≤ D(Z2 ) ≤ 0.3500
Vertex identifying codes and the random graph – p. 27/2
Open grid questions
• (To my knowledge) the size of the square grid code
is still open:
0.3488 ≤ D(Z2 ) ≤ 0.3500
• The size of the hexagonal grid code
is still open:
3
16
≤ D(H) ≤
39
7
Vertex identifying codes and the random graph – p. 27/2
Open grid questions
• (To my knowledge) the size of the square grid code
is still open:
0.3488 ≤ D(Z2 ) ≤ 0.3500
• The size of the hexagonal grid code
is still open:
0.4103 ≤ D(H) ≤ 0.4286
Vertex identifying codes and the random graph – p. 27/2
Open grid questions
• (To my knowledge) the size of the square grid code
is still open:
0.3488 ≤ D(Z2 ) ≤ 0.3500
• The size of the hexagonal grid code
is (almost surely!) still open:
0.4103 ≤ D(H) ≤ 0.4286
Vertex identifying codes and the random graph – p. 27/2
Open problems
• One question to resolve is the value of this m` (n),
the size of the smallest `-identifying code in an
n-vertex graph.
Vertex identifying codes and the random graph – p. 28/2
Open problems
• One question to resolve is the value of this m` (n),
the size of the smallest `-identifying code in an
n-vertex graph.
m1 (n) = dlog2 (n + 1)e
Vertex identifying codes and the random graph – p. 28/2
Open problems
• One question to resolve is the value of this m` (n),
the size of the smallest `-identifying code in an
n-vertex graph.
m1 (n) = dlog2 (n + 1)e
`2
c1
log n ≤ m` (n) ≤ c2 `2 log n.
log `
Vertex identifying codes and the random graph – p. 28/2
Open problems
• What is the size of the largest `-identifying code in
an n-vertex graph, if one exists?
Vertex identifying codes and the random graph – p. 28/2
Open problems
• What is the size of the largest `-identifying code in
an n-vertex graph, if one exists?
If n is even, there is a graph whose smallest code is of
size n − 1.
Vertex identifying codes and the random graph – p. 28/2
Open problems
• What is the size of the largest `-identifying code in
an n-vertex graph, if one exists?
If n is even, there is a graph whose smallest code is of
size n − 1. (Go ahead, ask me!)
Vertex identifying codes and the random graph – p. 28/2
Open problems
• What is the size of the largest `-identifying code in
an n-vertex graph, if one exists?
If n is even, there is a graph whose smallest code is of
size n − 1. (Go ahead, ask me!)
Can it be n, if G is not empty?
Vertex identifying codes and the random graph – p. 28/2
Open problems
• What is the size of the largest `-identifying code in
an n-vertex graph, if one exists?
If n is even, there is a graph whose smallest code is of
size n − 1. (Go ahead, ask me!)
Can it be n, if G is not empty?
• Another is to find the distribution of the size of the
smallest `-identifying code in the random graph.
`2
2(` + )
log n ≤ c` (Gn,p ) ≤
log n
c1
log `
log(1/q` )
Vertex identifying codes and the random graph – p. 28/2
Open problems
• Another is to find the distribution of the size of the
smallest `-identifying code in the random graph.
2(` + )
`2
log n ≤ c` Gn, 12 ≤
log n
c1
−`
log `
log(1/ (1 − 2 ))
Vertex identifying codes and the random graph – p. 28/2
Open problems
• Another is to find the distribution of the size of the
smallest `-identifying code in the random graph.
2(` + )
`2
log n ≤ c` Gn, 12 ≤
log n
c1
−`
log `
log(1/ (1 − 2 ))
≤ (` + )2`+1 ln n
Vertex identifying codes and the random graph – p. 28/2
Open problems
• Another is to find the distribution of the size of the
smallest `-identifying code in the random graph.
2(` + ) log n
`2
log n ≤ c` Gn, 12 ≤
c1
log `
log(1/ (1 − 2−` ))
≤ (` + )2`+1 ln n
• For what values of p does an `-identifying code
exist with high probability in Gn,p ?
Vertex identifying codes and the random graph – p. 28/2
Thanks
Thank you for letting me talk today.
Vertex identifying codes and the random graph – p. 29/2
Thanks
Thank you for letting me talk today.
No, really, I mean it.
Vertex identifying codes and the random graph – p. 29/2
Thanks
Thank you for letting me talk today.
No, really, I mean it.
The file for this talk is available online at my website:
http://orion.math.iastate.edu/rymartin
These slides were created by the Prosper document preparation system.
Vertex identifying codes and the random graph – p. 29/2