Roughdraft 3

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 16

Graphical Designs of Path Graphs

Hamza Golubovic, Nuria Alina Chandra

Introduction

Graphs are defined by a set of vertices and a set of edges connecting them, and are used
to model all types of data, including social networks, protein folding, maps, and categori-
cal assignments. There are many algorithms designed to derive interesting information from
graphs, such as algorithms that find the shortest path, connected components, and minimum
spanning trees. However, running such algorithms on graphs with large amounts of data is
very computationally intensive. Even polynomial-time graph algorithms become infeasibly
slow with very large graphs. We need mechanisms to find smaller graphs that can approxi-
mate the behavior of larger graphs. We need more methods for finding such smaller graphs
from an original graph. Graphical designs are a method of selecting a subset of vertices on
a graph to make a smaller graph that retains some of the characteristics of the original.

We formally define a graph G = ([n], E, w), where [n] is the set of n vertices in the
graph, E is the set of edges with positive edge weights w. Graphical designs give rise to
approximating certain functions on the domain of vertices by sampling the function values
on a subset of the vertices S ⊂ [n] [BS22 p1]. This is has a similar function to a quadrature
rule from numerical analysis. Our exploration will focus on averaging the class of functions
arising from the eigenvectors obtained from the Laplacian matrix representation of G. The
Laplacian matrix of G is found by subtracting the degree matrix of G from the adjacency
matrix of G ( LG = DG − AG ).

In order to define a k-graphical design, the notion of averaging eigenspaces is introduced.


The following definitions and theorems are essential to the purpose of this paper.

Definition 1) [BS22 p4] A subset S ⊂ [n] averages the eigenspace Λ of G if there are
vertex weights (as ̸= 0 : s ∈ S) such that for every eigenvector ϕ in a basis of Λ,
X 1 X
as ϕ(s) = ϕ(v)
s∈S
n
v∈[n]

Definition 2) Suppose G has m distinct eigenspaces. We order the eigenspaces based on


increasing magnitude of the corresponding eigenvalue |λ0 | ≤ |λ1 | ≤ · · · ≤ |λn−1 |. We then
permute the elements 1, . . . , n − 1. π ∈ Sn−1 is an arbitrary permutation. We consider the a

1
fixed ordering Λ0 , Λπ1 , . . . , Λπm . A weighted k-graphical design of G is a subset S ⊂ [n] and
real weights (as ̸= 0 : s ∈ S) such that S averages the eigenspaces Λπ1 , . . . Λπk−1

Definition 2.1) A design is extremal if it averages all but the last eigenspace in a given
eigenspace ordering Λ0 , Λπ1 , . . . , Λπm .

Theorem of extremal designs on path graphs: In this paper we will show that there
are always two extremal graphical designs for path graphs.

1.1) For odd length paths the two extremal graphical designs are the subset of all vertices
except 1) the middle vertex and 2) the two vertices directly adjacent to the middle.
1.2) For even length paths, there are two middle vertices. The two extremal designs of even
length paths are the subsets of vertices except one of the middle vertices.

Path Graphs

In this exploration we focus on the graphical design of paths. A path is a type of graph
where each vertex follows another in a line. Formally, a path with n vertices is defined as
Pn = (V, E) such that V = 1, 2, ...n and E = {(a, a + 1)∀a : 1 ≤ a ≤ n − 1}. We only
consider graphs with n > 2, as graphs of length two are trivial. When n is odd, then there
will be a vertex in the middle of the path which we denote m. We also define the vertex to
the left of the middle, l, where l = m − 1, and the vertex to the right of the middle r, where
r = m + 1. When n is even, there are two middle vertices: the left one, which we denote l
and the right one r.

Eigenspectrum of a Path

The eigenvalues of Pn are λk = 2(1 − cos( πkn


)) for 0 ≤ k < n [Spi22 p77].
πk
2(1 − cos( n )) is non-negative and increasing from k = 0, . . . , n − 1. Hence, we see that there
will never be a repeated eigenvalue, meaning each eigenvalue will have a multiplicity of one,
and there will be n unique eigenvalues. Thus, there will also be n eigenspaces of dimension
one. Each eigenspace will can be described by a single eigenvector.

We denote the eigenvector/eigenspace corresponding to λk as Λk . The function that


describes each element of Λk is:
πka πk
Λk (a) = cos( − ) for 1 ≤ a ≤ n [Spi22 77]
n 2n

The function Λk (a) is a cosine function, and thus it has a period. When k = n − 1, we
2n
refer to this period as p, where p = period(Λn−1 (v)) = n−1 .

Eigenpolytopes of a Path

We define an indexing vector λ = {λπ1 , . . . , λπk−1 } and λ̄ = {λ0 , λπk , . . . , λπb−1 }, where
b is the number of eigenspaces. For such a collection of eigenvalues λ, let Uλ represent the
matrix with rows corresponding to the eigenspaces indexed by λ:

2
   
Λ1 Λπ1 (1) Λπ1 (2) ... Λπ1 (n)
 Λ2
  Λπ2 (1) Λπ2 (2) ... Λπ2 (n) 
Uλ =  =  ∈ R(k−1)×n
   
.. .. .. ... ..
 .
  . . . 
Λk−1 Λπk−1 (1) Λπk−1 (2) . . . Λπk−1 (n)

We denote a column of Uλ as ui , for i = 1, 2, . . . , n

Uλ = [u1 u2 . . . un ]

Let Uλ be the vector configuration given by the columns of Uλ :

Uλ = {u1 , u2 , . . . , un } ⊂ Rn

In this paper, we will mainly focus on extremal designs. For this task we analyze Uλ̄ for
a k = πn−1 graphical design of path graphs. We will denote the collection of eigenvalues
for these designs as k and k̄. As mentioned, a path graph with n vertices has n distinct
eigenvalues, meaning m = n in this case. Therefore, for n − 1 designs of path graphs,
k = {λπ1 , . . . , λπn−2 } and k̄ = {λ0 , λπn−1 }, meaning

 
Λ0
Uk̄ = = [u1 u2 ] ∈ R2×n
Λπn−1
Uk̄ = {u1 , u2 , . . . un } ⊂ R2

We define the eigenpolytope Pk̄ as the convex hull of Uk̄ : Pk̄ = conv(Uk̄ ). Pk̄ is a line
segment. The first row of Uk̄ ∈ R2×n will be all ones (Λ0 ) and the second row’s entries
correspond to the eigenvector Λn−1 . All ui ∈ Uk̄ are of the form ui = (1, Λn−1 (i)). The first
element is the same across all vectors u. Thus, these vectors will all lay along a line in the
2D plane. Therefore, the eigenpolytope Pk̄ will always be a line segment.

Lemma 1.1) There are only two facets of the eigenpolytope Pk̄ : the vertices cor-
responding to the end points of polytope argmaxv∈[n] (Λπn−1 ) and argminv∈[n] (Λπn−1 ).

The faces of the polytope Pk̄ are the intersections of the polytope with a supporting
hyperplane. Thus there are three faces: a face along the length of line segment, the vertex at
the top of the the line segment, and the vertex at the bottom of the segment. The definition
of a polytope facet is that dimension(facet) = dimension(polytope) - 1, thus the facets of
Pk̄ are faces with dimension = 0. Therefore the end points of the line segment, are the
only facets in the eigenpolytope. It follows that the facets of Pk̄ will be the max and min
elements of the last-ordered eigenvector: argmaxv∈[n] (Λπn−1 ) and argminv∈[n] (Λπn−1 )

3
Babecki 2022 showed that graphical designs are related to eigenpolytopes. We will first
further characterize the eigenpolytopes of path graphs by describing a closed form for the
facets of Pk̄ . We break up paths into two categories: even paths (Pn such that n is even),
and odd paths (Pn such that n is odd). We characterize the eigenpolytopes for both. We will
then use this characterization to prove a closed for for the extremal designs of path graphs.

4
Odd Case

In this section we will show that the two facets of the Pk̄ polytope for an odd length path
correspond to the middle vertex of the path and the vertices adjacent to the middle vertex.

Figure 1) |Λn−1 (a)| for a path of length 9, P9

Lemma 2.1) For the vertex m at the middle of an odd path, |Λn−1 (m)| = 1.
n 1 n+1
Proof. For odd n, m refers to the middle vertex, i.e. m = + = . Now,
2 2 2
π
Λn−1 (m) = cos( (n − 1))
2
π
= cos( 2β) , where β ∈ N since n − 1 is even
2
= cos(πβ)

We see that Λn−1 (m) = cos(πβ) takes the value of −1 when β is odd or 1 when β is even.
Since the function Λn−1 (a) has a maximum and minimum value of 1 and −1, we have shown
that the middle vertex m is always going to be one of the maxima or minima (depending on
β).

Lemma 2.2) In an odd length path, |Λn−1 (v)| < 1 ∀v ̸= m. In other words, |Λn−1 (m)|
attains the maximum value for all v ∈ V .

Proof. For this proof, we only consider n ≥ 3, since it is the odd case and n = 1 is trivial, as
m is the only vertex. The period of Λk (a) = cos( πka
n
− πk
2n
2n
) is p = n−1 . This means that each
2n n
peak (maximum) is n−1 apart, meaning peaks and troughs are n−1 apart. Since we know
that Λn−1 (m) is a maximum or minimum, then each other global extrema can be located at:

n
extrema location = m + · s , s ∈ Z \ {0}
n−1

5
n
Now we ask, is there a vertex that is at the location m + n−1 · s, where s ∈ Z and
n n
1 ≤ |s| ≤ ⌊ 2 ⌋. s is restricted to this interval, since n − m = ⌊ 2 ⌋. Now let vs represent the
vertex that is s vertices away from m. Suppose for the sake of contradiction that there is a
vs such that |Λn−1 (vs )| ≥ 1. The extrema of the Λn−1 (a) function are 1 and -1. This means
that Λn−1 (vs ) is an extrema. Hence, we can write vs in terms of m:
n
vs = m + ·s
n−1

All vertices have integer numberings, meaning vx must be an integer. We know that m is
n n
an integer, so n−1 · s must also be an integer. There are two ways for n−1 · s to be an integer:

n
1. n−1
is an integer. This is not possible, unless n=2 (in which case path is not odd).

2. s is a multiple of n − 1. However, we defined s as being 1 ≤ s ≤ ⌊ n2 ⌋, and n ≥ 3.


Therefore, s can never be a multiple of n − 1.

In both these cases we come to a contradiction. Therefore there are no other vertices
with greater Λn−1 magnitude than the middle vertex.

Lemma 2.3) The facets of the eigenpolytope for an odd-length path are {m} and
{l, r}.

Proof that {m} is always a facet.

Using Lemma 2.1 and Lemma 2.2, we deduce that m is the only vertex which attains a
global maximum or minimum value in the function Λn−1 (a), where a ∈ [n]. Hence if it is a
maximum, it is the only maximum vertex extreme in the eigenpolytope. Likewise, if it is a
minimum, it is the only minimum vertex extreme in the eigenpoltyope. Thus, {m} is always
a facet of the eigenpolytope, by Lemma 1.1.

Proof that {l, r} is always a facet.

We will show that when Λn−1 (m) is a maximum, then Λn−1 (l) = Λn−1 (r) are minimum
values among Λn−1 (a), where a ∈ [n]. Additionally, when Λn−1 (m) is a minimum, then
Λn−1 (l) = Λn−1 (r) are maximum values among Λn−1 (a). Regardless, {l, r} will be a facet for
odd-length paths.

We have shown that Λn−1 (m) must either attain the maximum or minimum value of the
entire function (1 or −1), where m = n+1 2
. It is observed that since m is a global extreme,
the function Λn−1 (x) will behave symmetrically about m (i.e. Λn−1 (m + δ) = Λn−1 (m − δ)
for δ ∈ R). For this reason, we will focus our attention on the interval x ∈ [m, n], since
analyzing the interval x ∈ [1, m] will follow.

6
In the first case, assume that Λn−1 (m) attains a maximum. Instead of directly dealing
with Λn−1 (x), we will look at |Λn−1 (x)|. Since the function is symmetrical about m, the
vertex that attains a minimum value of Λ in [m, n] will correspond to a vertex that attains
the same minimum in x ∈ [1, m]. Hence, there will be two vertices attaining this minimum
value. We know that the integers are increments of 1, and the peak (maxima) increment in
n 2n
|Λn−1 (x)| is n−1 (this is derived by the fact that the period of Λn−1 (x) is p = n−1 ). Let s
be the number of steps in the positive direction from the middle vertex (e.g. if n = 11 and
m = 6, then s = 2 would put us at vertex 8). We start by making the following observations:

a) The number of steps needed to reach the upper bound of the interval is s = ⌊n/2⌋ =
(n − 1)/2.

b) The distance between an integer a after s steps (representing the vertices) and the
n 1
domain value corresponding to the peaks is d = ( n−1 · s + m) − (1 · s + m) = s( n−1 ).
This relationship is derived by subtracting the integer s steps away from the middle
vertex m from the peak that is s half periods away from the middle vertex m.

Our next step is to show that |Λn−1 (a)|, m < a ≤ n, will always be on an increasing
segment of the function (where a represents the vertex integer labels in this interval). Note:
the increasing segment we refer to is in the interval [peak − n/2(n − 1), peak]. To prove this
1
statement, consider observations 1 and 2. We see that d(s) = s( n−1 ) is an increasing function
as s increases. We also know that the number of steps allowed until the upper bound n is
s = ⌊n/2⌋ = n−1 2
. Hence, n−11
≤ d ≤ n−12
1
· n−1 = 12 < 2(n−1)
n n
for all n. 2(n−1) is the length of
the increasing segment in our cosine function |Λn−1 | (derived by observing that a period in
Λn−1 (x) is 2n/(n − 1), so distance between peaks in |Λn−1 (x)| is n/(n − 1), meaning length
of increasing segment is half this distance n/2(n − 1)). We have therefore shown that d is
always positive and smaller than the length of the increasing segment, which implies that
the vertices a ∈ (m, n] are always on the increasing segment. d increases with each step
s, hence the value of |Λn−1 (a)| becomes smaller as the integer values in (m, n] increase to
n. Because Λn−1 (r) has a negative value, whose magnitude we have just shown to be the
greatest out of the vertices in (m, n], r therefore attains the minimum value of the vertices in
the path. Since the function is symmetrical about m, l also attains the same minimum value
of Λn−1 (a) for vertices a ∈ [1, m). This means that {l, r} is the second facet, by Lemma 1.1,
when m corresponds to the maximum.

The analogue follows for the case when m attains a minimum in the function Λn−1 (a).
In this case, l and r both attain the maximum value among all vertices a ∈ [n]. Hence, {l, r}
will still be the second facet, by Lemma 1.1.

7
Even Case

In this section we show that the two facets of the Pk̄ polytope for an even length path
correspond to the two middle vertices in the path.

Figure 2) |Λn−1 | for a path of length 10, P10

We make the following observations about the function |Λn−1 (a)| for any even n:

Observation 1) |Λn−1 (a)| = | cos( π(n−1)a


n
− π(n−1)
2n
)|. This function is symmetric about x-
intercepts and extrema.

Observation 2) The middle of the |Λn−1 (a)| function on Pn is zero. In other words,
|Λn−1( n+1
2
)| = 0. This is because:

π(n−1) n+1 π(n−1)
| cos n
( 2 ) − 2n
| = | cos( πn
2
) cos( π2 ) + sin( πn
2
)sin( π2 )| = 0 (when n is even)

Observation 3) We can describe extrema in relation to when |Λn−1 (a)| = 0. All extrema of
Λn−1 (a) are p/4 away from and x-intercept on both the left and right side.

Observation 4) In | cos(z)|, the value of the function at point z = q is a function of the


distance of q from the closest extremum on the graph cos(z). Points closer to the closest
extremum have a larger magnitude. This is visible in Figure 1.

Observation 5) if the x-axis distance between a point p and an extrema at point e is less
than p4 , then Λn−1 (e) is the closest extremum to p.

Notation: Recall that r is the right middle vertex in an even length path and l is the left
middle vertex in an even length path. We can describe this numerically as r = n+12
+ 12 and
n+1 1
l = 2 − 2.

8
Lemma 3.1) In an even length path of length n, the middle elements of |Λn−1
have the greatest magnitude. |Λn−1 (r)| > |Λn−1 (v)| and |Λn−1 (l)| > |Λn−1 (v)| for all
v ∈ {l, r}c .

Proof. First I show that |Λn−1 (r)| > |Λn−1 (v + )| for all v + ∈ (r, n]. By observation 1, we
know that if this is true, then we will have also proved that |Λn−1 (l)| > |Λn−1 (v − )| for all
v − ∈ [1, l).

We find the distance between r and its closest extremum. First we find the distance from
the left closest extremum to r. From observation 3 we know that since n+1
2
is an x-intercept,
n+1 p
there is a extremum at 2 − 4 .
n + 1 1 n + 1 n  n2 − n
r - left extremum = + − − =
2 2 2 2(n − 1) 2(n − 1)

From Observation 3, we also know that the right closest extremum is at n+1 2
+ p4 . Using
2n
the fact that the period p = period(Λn−1 (x)) = n−1 , we find that the distance between the
 
right closest extremum and r is: n+1
2
+ n
2(n−1)
− n+1
2
+ 1
2
1
= 2(n−1)

When n ≥ 2, n2 − n > 1, so, distance to right closest extremum is closer than distance
to the left closest extremum. The closest extremum to r is the extremum on the right:
1
er − r = 2(n−1) .

Now we show that for all vertices to the right of r the distance from x to the closest
extremum is larger than er − r.
n−2
Let vx be a vertex that is x vertices to the right of r (x : 0 < x ≤ 2
) and x ∈ Z. Where
n ≥ 4 and n % 2 = 0
n+1 1
vx = r + x = + +x
2 2
.

Let ex be the extrema that is x peaks to the right of er .


n+1 1 n
ex = er + p/2 · x = + + ·x
2 2 n−1

I will show that 0 < ex − vx < p/4.


n+1 n n n + 1 1 
ex − vx = + + x− + +x
2 2(n − 1) n − 1 2 2
1+2·x
=
2(n − 1)

9
We compare ex − vx to p4 = 2(n−1)
n
: We find the maximum value of ex − vx for a specific n:
1+2·x
ex − vx = 2(n−1) is increasing with respect to x.

1 + 2 · max(x)
max(ex − vx ) =
2(n − 1)
n−2
because x + r ≤ n, max(x) = 2

1 + 2 · (n−2)
2 n−1
max(ex − vx ) = =
2(n − 1) 2(n − 1)

We find that max(ex − vx ) < p4 :

n−1 n p
max(ex − vx ) = < =
2(n − 1) 2(n − 1) 4

Now I show that ex − vx > 0. To do this, we examine the minimum of ex − vx .


1 + 2 · min(x)
min(ex − vx ) =
2(n − 1)

min(x) = 1.
1+2 3
min(ex − vx ) = =
2(n − 1) 2(n − 1)
Compare this to 0:
3
(ex − vx ) = >0
2(n − 1)

Therefore, 0 < ex − vx < p/4. By observation 5, this means that ex is the closest
extremum to vx . This means that the distance between ex and vx describes the magnitude
of Λn−1 (vx )

Now I will prove that |Λn−1 (r)| > |Λn−1 (vx )| for all vertices x to the right of r by showing
that there does not exist a vx that is closer to its closest extrema than r is. In other words,
I will show that ex − vx > er − r for all vx vertices to the right of r.

1+2·x 1
ex − vx = > = er − r
2(n − 1) 2(n − 1)

Therefore, |Λn−1 (r)| > |Λn−1 (vx )| for all vertices vx to the right of r. By the symmetry
from Observation 1, this means that |Λn−1 (l)| > |Λn−1 (vx− )| for all vertices vx− to the left
of l. Also by Observation 1, we know that |Λn−1 (r)| = |Λn−1 (l)|. Therefore, r and l are the
vertices with the largest magnitude in Λn−1 .

10
Lemma 3.2) In an even-length path, the two facets of the eigenpolytope Pk̄ are
{l} and {r}

Observation 6) Λn−1 (r) and Λn−1 (l) always have opposite signs. By Observation 2, Λn−1 ( n+1
2
)=
0. r and l are on opposite sides of n+12
, but less than p/2 apart. Which means that they
must have opposite signs (i.e. if Λn−1 (r) > 0 then Λn−1 (l) < 0, or if Λn−1 (l) > 0 then
Λn−1 (r) < 0).

Combining Lemma 3.1 and Observation 6, we find that {l, r} always contains the mini-
mum and maximum vertices of Λn−1 . This means that the two endpoints of the eigenpolytope
are r and l, meaning the two facets are {l} and {r}, by Lemma 1.1.

11
Extremal Designs of Path Graphs

Babecki-Shiroma Theorem) Let G = ([n], E, w) be a connected weighted graph with b


eigenspaces ordered |Λ0 | < · · · < |Λb−1 |. A set S ⊂ [n] is a (minimal) positively weighted
k-graphical design of G if and only if [n] \ S indexes the elements of Uk̄ which lie on a face
(facet) of the polytope Pk̄ [BS22 p6].

Lemma 4.1) Pn will always have two extremal minimal graphical designs. These
designs will be i) the complement of the vertex corresponding to the maximum
Λn−1 (a) attained among all vertices a ∈ [n]. And ii), the complement of the vertex
corresponding to the minimum Λn−1 (a) attained among all vertices a ∈ [n].

Proof. We defined the eigenpolytope Pk̄ to correspond to the path graph Pn . In Lemma 1.1,
we showed that the only two facets of this eigenpolytope are the vertices argmaxv ∈ [n](Λn−1 )
and argminv∈[n] (Λn−1 ). By the Babecki-Shiroma Theorem, the two extremal minimal designs
will therefore be {argmaxv∈[n] (Λn−1 )}c and {argminv∈[n] (Λn−1 )}c .

Theorem of extremal designs on path graphs:

1.1) For odd length paths the two extremal graphical designs are the subset of all vertices
except 1) the middle vertex and 2) the two vertices directly adjacent to the middle.

Proof. Lemma 2.2 and 2.3 tell us that the facets of the eigenpolytope Pk̄ for an odd-
length path graph are 1) the middle vertex of the path and 2) the vertices adjacent
to the middle. By the Babecki-Shiroma Theorem, this means that the the extremal
graphical designs of an odd-length path will be 1) the complement of the middle vertex,
and 2) the complement of the vertices adjacent to the middle.

1.2) For even length paths, there are two middle vertices. The two extremal designs of even
length paths are the subsets of vertices except one of the middle vertices.

Proof. By Lemma 3.2, we know that the facets of the eigenpolytope Pk̄ for an even-
length path graph are 1) one of the middle vertices, and 2) the other middle vertex.
Applying the Babecki-Shiroma Theorem leads to the conclusion that the two extremal
graphical designs of an even-length path are the complement of each of the middle
vertices.

12
Examples

Example 1. P7

P7 :

1 2 3 4 5 6 7

By Theorem 3, the minimal designs are {4}c or {3, 5}c :

1 2 3 4 5 6 7

1 2 3 4 5 6 7

First we show that the above minimal designs are actually graphical designs. To do this,
we must show that they average eigenspaces Λ0 , ..., Λn−1 .

 
1 −1 0 0 0 0 0
−1 2 −1 0 0 0 0
 
 0 −1 2 −1 0 0 0
 
L P7 =
 0 0 −1 2 −1 0 0 

0
 0 0 −1 2 −1 0 
0 0 0 0 −1 2 −1
0 0 0 0 0 −1 1

The eigenvalues of the Laplacian of P7 in the table below.

λ0 1 1 1 1 1 1 1
λ1 0.975 0.782 0.434 0 -0.434 -0.781 -0.975
λ2 0.901 0.223 -0.623 -1 -0.623 0.223 0.901
λ3 0.782 -0.434 -0.975 0 0.975 0.434 -0.782
λ4 0.623 -0.901 -0.223 1 -0.223 -0.901 0.623
λ5 0.434 -0.975 0.782 0 -0.782 0.975 -0.434
λ6 0.223 -0.623 0.901 -1 0.901 -0.623 0.223

13
Next we demonstrate that the same minimal designs would be found using the method
described in [BS22].

By Theorem 3.4 in [BS22], a set S ⊂ [n] is a minimal positively k graphical design of P7


if and only if [n] \ S indexes the elements of Uk̄ which lie on a face of the polytope Pk̄ . Here,
Uk̄ refers to the vector configuration of the n columns in Uk̄ . For an n − 1 = 6 graphical
design, k̄ = {λ6 }. Therefore,

 
1 1 1 1 1 1 1
Uk̄ =
0.223 −0.623 0.901 −1 0.901 −0.623 0.223

The eigenpolytope obtained is a line segment, with endpoints (1, −1) and (1, 0.901),
which are the only faces of this eigenpolytope. (1, −1) corresponds to vertex index 4 (the
middle vertex), meaning {4}c is one of the designs. Additionally, (1, 0.901) corresponds to
both vertices 3 and 5 (the left and right vertices), meaning {3, 5}c is the second design.
These designs agree with our results.

Example 2. P8

1 2 3 4 5 6 7 8

By Theorem 4, the minimal designs are {4}c and {5}c :

1 2 3 4 5 6 7 8

1 2 3 4 5 6 7 8

14
Works Cited

[BS22] C. Babecki and D. Shiroma. ”Structure and Complexity of Graphical Designs for
Weighted Graphs Through Eigenpolytopes”. 2022. https://arxiv.org/abs/2209.06349.

[BT22] C. Babecki and R. R. Thomas. ”Graphical Designs and Gale Duality”. In Math-
ematical Programming (2022).

[Spe22] D. A. Spielman. ”Spectral and Algebraic Graph Theory Incomplete Draft”.


Accessed 2022. http://cs-www.cs.yale.edu/homes/spielman/sagt/sagt.pdf.

15
Source code for generating eigenvectors of paths

n = 9 # update n for graph P_n


k = n-1 # bounds: 0 <= k < n
eigval_k = 2*(1 - math.cos((math.pi * k)/n))

eigvec = np.zeros(shape=n)
# calculate the eigenvector
for a in range(1, n+1):
eigvec[a-1] = math.cos(math.pi * k * a / n - math.pi * k / (2*n))

print(eigvec)
print(’sum of eigenvector = {0}’.format(np.sum(eigvec)))

eigvec = np.around(eigvec, decimals=12) # rounding to avoid floating point error

# find the vertices associated with the max and min elements of the eigenvector
# note: vertices are 1-indexed, so we add one to account for this
max_eigenvec_vertices = (np.argwhere(eigvec == np.amax(eigvec)) + 1)
min_eigenvec_vertices = (np.argwhere(eigvec == np.amin(eigvec)) + 1)

# complement of the max and complement of the min are the designs
all_vertices = set(range(1, n+1))
top_of_eigenpolytope = set(max_eigenvec_vertices.flatten())
bottom_of_eigenpolytope = set(min_eigenvec_vertices.flatten())

print(’minimal (n-1)-graphical design a): complement{0}’.format(top_of_eigenpolytope))


print(’minimal (n-1)-graphical design b): complement{0}’.format(bottom_of_eigenpolytope)

16

You might also like