You are on page 1of 53

Where our story takes place? The main objective.

The algorithm

Some algorithmic aspects of


arithmetical structures.

Carlos E. Valencia O.
Departamento de Matemáticas, Cinvestav-IPN and
Instituto de Matemáticas, UNAM.
Montreal, July 28, 2017.
Joint work with R. Villagrán. This is a work in progress.
Where our story takes place? The main objective. The algorithm

Outline

1 Where our story takes place?


The main character of our history.
Diophantine equations and arithmetical structures.
An example: complete graph and Egyptian fractions.

2 The main objective.


Almost non-singular M-matrices.

3 The algorithm
Some computational results.
A last conjecture.
Where our story takes place? The main objective. The algorithm

Where our story takes place?

Arithmetical structures of a graph were introduced by Lorenzini


in 1989 in his paper “Arithmetical Graphs”.
Where our story takes place? The main objective. The algorithm

Where our story takes place?

Arithmetical structures of a graph were introduced by Lorenzini


in 1989 in his paper “Arithmetical Graphs”.

In 2015 in a CMO-Birs workshop on Sandpile groups, a group


of people were interested in the arithmetical structures.
Where our story takes place? The main objective. The algorithm

Where our story takes place?

Arithmetical structures of a graph were introduced by Lorenzini


in 1989 in his paper “Arithmetical Graphs”.

In 2015 in a CMO-Birs workshop on Sandpile groups, a group


of people were interested in the arithmetical structures.

As part of our research we compute, using Sage, the


arithmetical structures of some simple graphs like paths,
cycles, etc.
Where our story takes place? The main objective. The algorithm

Where our story takes place?

Arithmetical structures of a graph were introduced by Lorenzini


in 1989 in his paper “Arithmetical Graphs”.

In 2015 in a CMO-Birs workshop on Sandpile groups, a group


of people were interested in the arithmetical structures.

As part of our research we compute, using Sage, the


arithmetical structures of some simple graphs like paths,
cycles, etc.

But our first algorithms were brute force.


Where our story takes place? The main objective. The algorithm

Arithmetical structures of a graph.

Definition
Given a connected graph G = (V , E), an arithmetical structure
of G is a pair (d, r) ∈ NV+ × NV+ such that gcd(rv | v ∈ V ) = 1 and

L(G, d)rt = 0t ,

where L(G, d) = diag(d) − A(G) is called a pseudo-Laplacian


matrix.
Where our story takes place? The main objective. The algorithm

The main character of our history.

Consider the negative of the adjacency matrix of a graph G


v1
 
0 −1 0 0 −1
v2 v5  −1 0 −1 0 −1 
G
 
−A(G) = 
 0 −1 0 −1 0 

 0 0 −1 0 −1 
v3 v4 −1 −1 0 −1 0
Where our story takes place? The main objective. The algorithm

The main character of our history.

Consider the negative of the adjacency matrix of a graph G


v1
 
0 −1 0 0 −1
v2 v5  −1 0 −1 0 −1 
G
 
−A(G) = 
 0 −1 0 −1 0 

 0 0 −1 0 −1 
v3 v4 −1 −1 0 −1 0

Is an integer matrix, with its diagonal entries equal to zero and


non-positive entries out of its diagonal.

Which is an special case of a Z -matrix.


Where our story takes place? The main objective. The algorithm

The adjacency matrix.

If we put the degree of each vertex in its corresponding


diagonal entry we get the Laplacian Matrix of G.
v1
 
2 −1 0 0 −1
v2 v5  −1 3 −1 0 −1 
G
 
L(G) = 
 0 −1 2 −1 0 

 0 0 −1 2 −1 
v3 v4 −1 −1 0 −1 3
Where our story takes place? The main objective. The algorithm

The adjacency matrix.

If we put the degree of each vertex in its corresponding


diagonal entry we get the Laplacian Matrix of G.
v1
 
2 −1 0 0 −1
v2 v5  −1 3 −1 0 −1 
G
 
L(G) = 
 0 −1 2 −1 0 

 0 0 −1 2 −1 
v3 v4 −1 −1 0 −1 3

Arithmetical structures of a graph generalizes the Laplacian


matrix of a graph.
Where our story takes place? The main objective. The algorithm

A non-canonical example.

Consider G with d = (4, 2, 5, 1, 3) and r = (1, 2, 1, 3, 2).


Example

v1
 
 
4 −1 0 0 −1 1
v2 v5  −1 2 −1 0 −1 
 2 
G
 
 
L(G, d)r =
 0 −1 5 −1 0 


 1 = 0.

 0 0 −1 1 −1 
 3 
v3 v4 −1 −1 0 −1 3 2
Where our story takes place? The main objective. The algorithm

The generalized Laplacian matrix.

Definition
The generalized Laplacian matrix of G is given by
(
xu if u = v ,
L(G, X )u,v =
−muv otherwise,
Where our story takes place? The main objective. The algorithm

The generalized Laplacian matrix.

Definition
The generalized Laplacian matrix of G is given by
(
xu if u = v ,
L(G, X )u,v =
−muv otherwise,

where muv is the number of edges between u and v ,


Where our story takes place? The main objective. The algorithm

The generalized Laplacian matrix.

Definition
The generalized Laplacian matrix of G is given by
(
xu if u = v ,
L(G, X )u,v =
−muv otherwise,

where muv is the number of edges between u and v , and

XG = {xu | u ∈ V (G)}

the set of variables indexed by the vertices of G.


Where our story takes place? The main objective. The algorithm

The generalized Laplacian matrix.


Consider the path with five vertices. Then
 
x1 −1 0 0 0

 −1 x2 −1 0 0 

L(G, X ) = 
 0 −1 x3 −1 0 

 0 0 −1 x4 −1 
0 0 0 −1 x5

and
Where our story takes place? The main objective. The algorithm

The generalized Laplacian matrix.


Consider the path with five vertices. Then
 
x1 −1 0 0 0

 −1 x2 −1 0 0 

L(G, X ) = 
 0 −1 x3 −1 0 

 0 0 −1 x4 −1 
0 0 0 −1 x5

and

det(L(G, X )) = x1 x2 x3 x4 x5 −x3 x4 x5 −x1 x4 x5 −x1 x2 x5 −x1 x2 x3 +x1 +x3 +x5 .


Where our story takes place? The main objective. The algorithm

Diophantine equations and arithmetical structures.

Every d is a solution of the Diophantine equation det(L(G, X )).


However, the converse is not true.
Where our story takes place? The main objective. The algorithm

Diophantine equations and arithmetical structures.

Every d is a solution of the Diophantine equation det(L(G, X )).


However, the converse is not true. Consider P5 , d = (1, 1, ∗, 1, 1)
and r = (1, 1, 0, −1, −1).
  
1 −1 0 0 0 1
 −1 1 −1 0 0 
 1 
 

L(G, d)r =  0 −1 ∗ −1 0   0 
  
 = 0.
 0 0 −1 1 −1   −1 
0 0 0 −1 1 −1

The pair (d, r) does not give an arithmetical structure.


Where our story takes place? The main objective. The algorithm

Diophantine equations and arithmetical structures.

Every d is a solution of the Diophantine equation det(L(G, X )).


However, the converse is not true. Consider P5 , d = (1, 1, ∗, 1, 1)
and r = (1, 1, 0, −1, −1).
  
1 −1 0 0 0 1
 −1 1 −1 0 0 
 1 
 

L(G, d)r =  0 −1 ∗ −1 0   0 
  
 = 0.
 0 0 −1 1 −1   −1 
0 0 0 −1 1 −1

The pair (d, r) does not give an arithmetical structure. However


d is a solution of the Diophantine equation associated to G.
Where our story takes place? The main objective. The algorithm

Arithmetical structures of the complete graph.


It is not difficult to check that

n
Y n Y
X
det(L(Kn , X )) = (xj + 1) − (xj + 1).
j=1 i=1 j6=i

Qn
Thus dividing by j=1 (xj + 1) 6= 0 we get that

n
X 1
det(L(Kn , X )) = 0 if and only if = 1.
(xj + 1)
i=1
Where our story takes place? The main objective. The algorithm

Arithmetical structures of the complete graph.

In the case of the complete graph (one of the most simple


graphs). If c = lcm(d1 + 1, . . . , dn + 1), then (Egyptian fractions)

n
X 1 c
A(Kn ) = {(d, r) ∈ (Nn+ )2 | = 1 and ri = for all i}.
di + 1 di + 1
i=1

Another examples: stars, trees, graphs with twins.


Where our story takes place? The main objective. The algorithm

The main objective

Give an algorithm that computes the arithmetical structures.


Where our story takes place? The main objective. The algorithm

The main objective

Give an algorithm that computes the arithmetical structures.

Give an algorithm that computes the positive solutions.


Where our story takes place? The main objective. The algorithm

The main objective

Give an algorithm that computes the arithmetical structures.

Give an algorithm that computes the positive solutions.

Give an algorithm that computes all the solutions.


Where our story takes place? The main objective. The algorithm

The main objective

Give an algorithm that computes the arithmetical structures.

Give an algorithm that computes the positive solutions.

Give an algorithm that computes all the solutions.

Generate a database with the arithmetical structures of all the


graphs with less or equal to eight vertices.
Where our story takes place? The main objective. The algorithm

Almost non-singular M-matrices.

The concept of arithmetical structure can be generalized to


the setting of M-matrices.
Where our story takes place? The main objective. The algorithm

Almost non-singular M-matrices.

The concept of arithmetical structure can be generalized to


the setting of M-matrices.

We introduce the new concept of almost non-singular M-matrices.

Definition
A real matrix A = (ai,j ) is called an almost non-singular
M-matrix if A is a Z -matrix and all the proper principal minors
are positive and its determinant is non-negative.
Where our story takes place? The main objective. The algorithm

Arithmetical structures of matrices.


Theorem
If M is a non-negative matrix, then M is almost non-singular
M-matrix with det(M) = 0 if and only if M is an irreducible and
there exists r > 0 such that Mrt = 0t .

Moral: The concept of integer almost


non-singular M-matrix is equivalent to
arithmetical structure concept.

Definition
A real matrix A is said to be a M-matrix if A = αI − M, for some
Where our story takes place? The main objective. The algorithm

Finiteness

Theorem
If M is a non-negative matrix with all the diagonal entries equal
to zero, then the set of arithmetical structures A(M) of M is
finite if and only if M is irreducible.
Where our story takes place? The main objective. The algorithm

Finiteness

Theorem
If M is a non-negative matrix with all the diagonal entries equal
to zero, then the set of arithmetical structures A(M) of M is
finite if and only if M is irreducible.

Theorem
If M = (mij ) ∈ Mn×n is a real Z -matrix, then the following
conditions are equivalent:
(1) M is an almost non-singular M-matrix.
(2) M + D is a non-singular M-matrix for diag. matrix D 0.

Essentiality Dickson’s Lemma.


Where our story takes place? The main objective. The algorithm

How to check when a Z -matrix is an M-matrix.

Let M be a real Z -matrix and


fM (x) = det(M + diag(x1 , . . . , xn )) ∈ R[x1 , . . . , xn ].
Then M is a M-matrix (non-singular M- matrix) if and only if the
coefficients of the polynomial fM are non-negative (positive).
Where our story takes place? The main objective. The algorithm

How to check when a Z -matrix is an M-matrix.

Let M be a real Z -matrix and


fM (x) = det(M + diag(x1 , . . . , xn )) ∈ R[x1 , . . . , xn ].
Then M is a M-matrix (non-singular M- matrix) if and only if the
coefficients of the polynomial fM are non-negative (positive).

Also, M is an almost non-singular M-matrix if and only if all the


coefficients, except maybe the constant term of the polynomial
fM , are positive.
Where our story takes place? The main objective. The algorithm

How to check when a Z -matrix is an M-matrix.

For instance, if
 
1 −1 0
M= 0 1 −1  ,
−1 −1 2
then fM (x) = x1 x2 x3 + 2x1 x2 + x1 x3 + x2 x3 + x1 + 2x2 + x3 . Thus,
M is an almost non-singular M-matrix, but not a non-singular.
Where our story takes place? The main objective. The algorithm

The algorithm.
Where our story takes place? The main objective. The algorithm

The algorithm
Consider the following arithmetical structure

4  
x1 + 4 −1 0 0 −1
2 3  −1 x2 + 2 −1 0 −1 
 
L =
 0 −1 x3 + 5 −1 0 

5 1  0 0 −1 x4 + 1 −1 
−1 −1 0 −1 x5 + 3

Then

det(L) = 6x1+24x2+6x3+54x4+7x1 x2+3x1 x3+ · · · +x1 x2 x3 x4 x5 .


Where our story takes place? The main objective. The algorithm

Consider the restriction d0 = (2, 5, 1, 3)

 
x2 + 2 −1 0 −1
2 3  −1 x3 + 5 −1 0 
L = 
 0 −1 x4 + 1 −1 
5 1 −1 0 −1 x5 + 3

Then

det(L) = 6 + 7x2 + 3x3 + 22x4 + 7x5 + · · · + x2 x3 x4 x5 .


Where our story takes place? The main objective. The algorithm

An arithmetical structure of G \ v1 such that (2, 3, 1, 3) ≤ (2, 5, 1, 3).

 
x2 + 2 −1 0 −1
2 3  −1 x3 + 3 −1 0 
L = 
 0 −1 x4 + 1 −1 
3 1 −1 0 −1 x5 + 3

Then

det(L) = 3x2 + 3x3 + 12x4 + 3x5 + · · · + x2 x3 x4 x5 .


Where our story takes place? The main objective. The algorithm

An arithmetical structure of G \ v1 such that (2, 3, 1, 3) ≤ (2, 5, 1, 3).

0  
x1 −1 0 0 −1
2 3  −1 x2 + 2 −1 0 −1 
 
L =
 0 −1 x3 + 3 −1 0 

3 1  0 0 −1 x4 + 1 −1 
−1 −1 0 −1 x5 + 3

Then

det(L) = −12 − 2x2 + 3x1 x2 − 6x3 + 3x1 x3 − x2 x3 + · · · + x2 x3 x4 x5 .


Where our story takes place? The main objective. The algorithm

The algorithm
Do this for every vertex and we get

3  
x1 + 3 −1 0 0 −1
2 3  −1 x2 + 2 −1 0 −1 
 
L =
 0 −1 x3 + 3 −1 0 

3 1  0 0 −1 x4 + 1 −1 
−1 −1 0 −1 x5 + 3

Then

det(L) = −12 + 7x2 + 3x3 + 16x4 + 7x5 + · · · + x1 x2 x3 x4 x5 .


Where our story takes place? The main objective. The algorithm

The algorithm

Input: Z -matrix M of size n.


Where our story takes place? The main objective. The algorithm

The algorithm

Input: Z -matrix M of size n.

1) Let Ms = M(c, c) for all s ∈ [n].


Where our story takes place? The main objective. The algorithm

The algorithm

Input: Z -matrix M of size n.

1) Let Ms = M(c, c) for all s ∈ [n].


2) Compute A(Ms ) for all s ∈ [n].
Where our story takes place? The main objective. The algorithm

The algorithm

Input: Z -matrix M of size n.

1) Let Ms = M(c, c) for all s ∈ [n].


2) Compute A(Ms ) for all s ∈ [n].
3) Let d = maxs∈[n] ds where ds ∈ A(Ms ).
Where our story takes place? The main objective. The algorithm

The algorithm

Input: Z -matrix M of size n.

1) Let Ms = M(c, c) for all s ∈ [n].


2) Compute A(Ms ) for all s ∈ [n].
3) Let d = maxs∈[n] ds where ds ∈ A(Ms ).
4) Compute the AS d0 on M such that d ≤ d0 .
Where our story takes place? The main objective. The algorithm

The algorithm

Input: Z -matrix M of size n.

1) Let Ms = M(c, c) for all s ∈ [n].


2) Compute A(Ms ) for all s ∈ [n].
3) Let d = maxs∈[n] ds where ds ∈ A(Ms ).
4) Compute the AS d0 on M such that d ≤ d0 .

Output: Arithmetical d-structures of M.


Where our story takes place? The main objective. The algorithm

Some computational results.

n=3 Number of AS’s n=3 Number of AS’s

v3 v3

v1 v2 2 v1 v2 10
Where our story takes place? The main objective. The algorithm

n=4 #AS’s n=4 #AS’s


v4
v4 v3

v1 v2 v2 v1 v3
5 14
v3

v4 v4 v3

v1 v2 26 v1 v2 35
v4 v3 v4 v3

v1 v2 63 v1 v2 215
Where our story takes place? The main objective. The algorithm

n=5 #AS’s n=5 #AS’s n=5 #AS’s


v5 v5
v5 v4
v1 v4 v4

v2 v3 v2 v1 v3 v2 v1 v3
14 46 102
v5 v5
v5
v1 v4 v1 v4 v1 v4
v2 v3 120 v2 v3 126 v2 v3 134
v5 v2 v4 v5
v1
v1 v4 v1 v4
v2 v3 257 v3 v5 263 v2 v3 290
Where our story takes place? The main objective. The algorithm

n=5 #AS’s n=5 #AS’s n=5 #AS’s


v5 v5 v5
v1 v4 v1 v4 v1 v4
v2 v3 388 v2 v3 448 v2 v3 480
v5 v2 v4 v5
v1
v1 v4 v1 v4

v2 v3 571 v3 v5 835 v2 v3 987


v5 v5 v5
v1 v4 v1 v4 v1 v4
v2 v3 1069 v2 v3 1319 v2 v3 1395
Where our story takes place? The main objective. The algorithm

n=5 #AS’s n=5 #AS’s n=5 #AS’s


v5 v5 v5
v1 v4 v1 v4 v1 v4
v2 v3 2165 v2 v3 2849 v2 v3 12231
Where our story takes place? The main objective. The algorithm

A last conjecture.

We pose a conjecture about the number of the arithmetical


structures of a graph.
Conjecture
If G is a simple connected graph with n vertices, then

|A(Pn )| ≤ |A(G)| ≤ |A(Kn )|.


Where our story takes place? The main objective. The algorithm

Bibliography

D. J. Lorenzini, Arithmetical graphs, Math. Ann. 285


(1989), no. 3, 481-501.
H. Corrales and C. E. Valencia, Arithmetical structures of
graphs, arXiv:1604.02502.
C. E. Valencia and R. Villagrán, Algorithmic aspects of
arithmetical structures, in progress.

Gracias for listening!!!

http://www.math.cinvestav.mx/cvalencia

You might also like