Graphical structure in polynomial systems: Chordal networks
-
Upload
khangminh22 -
Category
Documents
-
view
2 -
download
0
Transcript of Graphical structure in polynomial systems: Chordal networks
Graphical structure in polynomial systems:Chordal networks
Diego Cifuentes
Department of MathematicsMassachusetts Institute of Technology
Joint work with Pablo A. Parrilo (MIT)arXiv:1411.1745, 1507.03046, 1604.02618
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 1 / 17
Polynomial systems: Applications
robotics
chemical reactions
power networks
Also cryptography, statistics, computer vision, graph theory, etc.Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 2 / 17
Polynomial systems
Given polynomial equations F = {f1, . . . , fm}, let
V(F ) := {x ∈ Cn : f1(x) = · · · = fm(x) = 0}
denote the associated variety.
Depending on the application we might be interested in:Feasibility Is there any solution, i.e., V(F ) 6= ∅?Counting How many solutions?
Dimension What is the dimension of V(F )?Components Decompose V(F ) into irreducible components.
These problems are hard!!!
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 3 / 17
Polynomial systems
Given polynomial equations F = {f1, . . . , fm}, let
V(F ) := {x ∈ Cn : f1(x) = · · · = fm(x) = 0}
denote the associated variety.
Depending on the application we might be interested in:Feasibility Is there any solution, i.e., V(F ) 6= ∅?Counting How many solutions?
Dimension What is the dimension of V(F )?Components Decompose V(F ) into irreducible components.
These problems are hard!!!
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 3 / 17
Polynomial systems and graphs
Systems coming from applications often have simple sparsity structure.We can represent this structure using graphs.
Given m equations in n variables, construct a graph as:Nodes are the variables {x0, . . . , xn−1}.For each equation, add a clique connecting the variables appearing inthat equation.
Example:
F = {x20 x1x2 + 2x1 − 1, x2
1 + x2, x1 + x2, x2x3}
QuestionCan the graph structure help solve polynomial systems?
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 4 / 17
Polynomial systems and graphs
Systems coming from applications often have simple sparsity structure.We can represent this structure using graphs.
Given m equations in n variables, construct a graph as:Nodes are the variables {x0, . . . , xn−1}.For each equation, add a clique connecting the variables appearing inthat equation.
Example:
F = {x20 x1x2 + 2x1 − 1, x2
1 + x2, x1 + x2, x2x3}
QuestionCan the graph structure help solve polynomial systems?
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 4 / 17
Polynomial systems and graphs
Systems coming from applications often have simple sparsity structure.We can represent this structure using graphs.
Given m equations in n variables, construct a graph as:Nodes are the variables {x0, . . . , xn−1}.For each equation, add a clique connecting the variables appearing inthat equation.
Example:
F = {x20 x1x2 + 2x1 − 1, x2
1 + x2, x1 + x2, x2x3}
QuestionCan the graph structure help solve polynomial systems?
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 4 / 17
Polynomial systems and graphs
sparsepolynomial
systemgraph chordal
graphchordalnetwork
Chordalnetwork
query
cardinality
dimension
sampling
components
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 5 / 17
Polynomial systems and graphs
sparsepolynomial
systemgraph chordal
graphchordalnetwork
Chordalnetwork
query
cardinality
dimension
sampling
components
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 5 / 17
Graphical modelling
Pervasive idea in many areas, in particular: numerical linear algebra,graphical models, constraint satisfaction, database theory, . . .
Key notions: chordality and treewidth.
Many names: Arnborg, Beeri/Fagin/Maier/Yannakakis, Blair/Peyton,Bodlaender, Courcelle, Dechter, Lauritzen/Spiegelhalter, Pearl,Robertson/Seymour, . . .
Previous work mostly focuses on discrete domains (e.g., 0/1 optimization).What happens in the continous side?(e.g., Waki et al., Lasserre, Bienstock, Vandenberghe, Lavaei, etc)
No previous work in polynomial systems.
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 6 / 17
Graphical modelling
Pervasive idea in many areas, in particular: numerical linear algebra,graphical models, constraint satisfaction, database theory, . . .
Key notions: chordality and treewidth.
Many names: Arnborg, Beeri/Fagin/Maier/Yannakakis, Blair/Peyton,Bodlaender, Courcelle, Dechter, Lauritzen/Spiegelhalter, Pearl,Robertson/Seymour, . . .
Previous work mostly focuses on discrete domains (e.g., 0/1 optimization).What happens in the continous side?(e.g., Waki et al., Lasserre, Bienstock, Vandenberghe, Lavaei, etc)
No previous work in polynomial systems.
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 6 / 17
Graphical modelling
Pervasive idea in many areas, in particular: numerical linear algebra,graphical models, constraint satisfaction, database theory, . . .
Key notions: chordality and treewidth.
Many names: Arnborg, Beeri/Fagin/Maier/Yannakakis, Blair/Peyton,Bodlaender, Courcelle, Dechter, Lauritzen/Spiegelhalter, Pearl,Robertson/Seymour, . . .
Previous work mostly focuses on discrete domains (e.g., 0/1 optimization).What happens in the continous side?(e.g., Waki et al., Lasserre, Bienstock, Vandenberghe, Lavaei, etc)
No previous work in polynomial systems.
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 6 / 17
Example 1: Coloring a cycleLet Cn = (V , E ) be the cycle graph and considerthe system of equations
x3i − 1 = 0, i ∈ V
x2i + xixj + x2
j = 0, ij ∈ EThese equations encode the proper 3-colorings of the graph. Note thatcoloring the cycle graph is very easy!
However, a Grobner basis is not so simple: one of its 13 elements isx0x2x4x6 + x0x2x4x7 + x0x2x4x8 + x0x2x5x6 + x0x2x5x7 + x0x2x5x8 + x0x2x6x8 + x0x2x7x8 + x0x2x2
8 + x0x3x4x6 + x0x3x4x7
+x0x3x4x8 + x0x3x5x6 + x0x3x5x7 + x0x3x5x8 + x0x3x6x8 + x0x3x7x8 + x0x3x28 + x0x4x6x8 + x0x4x7x8 + x0x4x2
8 + x0x5x6x8
+x0x5x7x8 + x0x5x28 + x0x6x2
8 + x0x7x28 + x0 + x1x2x4x6 + x1x2x4x7 + x1x2x4x8 + x1x2x5x6 + x1x2x5x7 + x1x2x5x8
+x1x2x6x8 + x1x2x7x8 + x1x2x28 + x1x3x4x6 + x1x3x4x7 + x1x3x4x8 + x1x3x5x6 + x1x3x5x7 + x1x3x5x8 + x1x3x6x8 + x1x3x7x8
+x1x3x28 + x1x4x6x8 + x1x4x7x8 + x1x4x2
8 + x1x5x6x8 + x1x5x7x8 + x1x5x28 + x1x6x2
8 + x1x7x28 + x1 + x2x4x6x8 + x2x4x7x8
+x2x4x28 + x2x5x6x8 + x2x5x7x8 + x2x5x2
8 + x2x6x28 + x2x7x2
8 + x2 + x3x4x6x8 + x3x4x7x8 + x3x4x28 + x3x5x6x8 + x3x5x7x8
+x3x5x28 + x3x6x2
8 + x3x7x28 + x3 + x4x6x2
8 + x4x7x28 + x4 + x5x6x2
8 + x5x7x28 + x5 + x6 + x7 + x8
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 7 / 17
Example 1: Coloring a cycleLet Cn = (V , E ) be the cycle graph and considerthe system of equations
x3i − 1 = 0, i ∈ V
x2i + xixj + x2
j = 0, ij ∈ EThese equations encode the proper 3-colorings of the graph. Note thatcoloring the cycle graph is very easy!However, a Grobner basis is not so simple: one of its 13 elements is
x0x2x4x6 + x0x2x4x7 + x0x2x4x8 + x0x2x5x6 + x0x2x5x7 + x0x2x5x8 + x0x2x6x8 + x0x2x7x8 + x0x2x28 + x0x3x4x6 + x0x3x4x7
+x0x3x4x8 + x0x3x5x6 + x0x3x5x7 + x0x3x5x8 + x0x3x6x8 + x0x3x7x8 + x0x3x28 + x0x4x6x8 + x0x4x7x8 + x0x4x2
8 + x0x5x6x8
+x0x5x7x8 + x0x5x28 + x0x6x2
8 + x0x7x28 + x0 + x1x2x4x6 + x1x2x4x7 + x1x2x4x8 + x1x2x5x6 + x1x2x5x7 + x1x2x5x8
+x1x2x6x8 + x1x2x7x8 + x1x2x28 + x1x3x4x6 + x1x3x4x7 + x1x3x4x8 + x1x3x5x6 + x1x3x5x7 + x1x3x5x8 + x1x3x6x8 + x1x3x7x8
+x1x3x28 + x1x4x6x8 + x1x4x7x8 + x1x4x2
8 + x1x5x6x8 + x1x5x7x8 + x1x5x28 + x1x6x2
8 + x1x7x28 + x1 + x2x4x6x8 + x2x4x7x8
+x2x4x28 + x2x5x6x8 + x2x5x7x8 + x2x5x2
8 + x2x6x28 + x2x7x2
8 + x2 + x3x4x6x8 + x3x4x7x8 + x3x4x28 + x3x5x6x8 + x3x5x7x8
+x3x5x28 + x3x6x2
8 + x3x7x28 + x3 + x4x6x2
8 + x4x7x28 + x4 + x5x6x2
8 + x5x7x28 + x5 + x6 + x7 + x8
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 7 / 17
Example 1: Coloring a cycle
There is an alternative representa-tion of the system, that respects itsgraphical structure.
The chordal network is describingthe full solution set of the system.The solutions are given by the chains(maximal paths) of the diagram.
There are exponentially many solu-tions, but they can be representedcompactly.
x20 + x0x8 + x2
8 x0 + x1 + x8
x1 − x8 x21 + x1x8 + x2
8x1 + x2 + x8
x22 + x2x8 + x2
8 x2 + x3 + x8 x2 − x8
x3 − x8 x23 + x3x8 + x2
8x3 + x4 + x8
x24 + x4x8 + x2
8 x4 + x5 + x8 x4 − x8
x5 − x8 x25 + x5x8 + x2
8x5 + x6 + x8
x6 + x7 + x8 x6 − x8
x27 + x7x8 + x2
8
x38 − 1
0
1
2
3
4
5
6
7
8
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 8 / 17
Example 2: Ideal of adjacent minors
I = {x2ix2i+3 − x2i+1x2i+2 : 0 ≤ i < n}
This is the ideal of adjacent minors of thematrix(
x0 x2 x4 · · · x2n−2x1 x3 x5 · · · x2n−1
)
The total number of irreducible compo-nents is the n-th Fibonacci number.
x0x3 − x1x20
x2x5 − x3x4 0x2, x3
x4x7 − x5x60 x4, x5
x6x9 − x7x8 0x6, x7
x8x11 − x9x100 x8, x9
x10x13 − x11x12 0x10, x11
x12x15 − x13x14 x12, x13
01
23
45
67
89
10,11
12,13
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 9 / 17
Chordal graphs
A graph is chordal if it has no induced cy-cle of lenght ≥ 4. A chordal completion issupergraph that is chordal.
A chordal graph has an associated span-ning tree known as the elimination tree
Note: The graph vertices must follow a perfect elimination ordering.
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 10 / 17
Chordal graphs
A graph is chordal if it has no induced cy-cle of lenght ≥ 4. A chordal completion issupergraph that is chordal.
A chordal graph has an associated span-ning tree known as the elimination tree
Note: The graph vertices must follow a perfect elimination ordering.
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 10 / 17
Chordal networksA G-chordal network is a directed graph, whose nodes are polynomials, such that
structure follows the elimination tree of G .polynomials involve a small number of variables (a clique of G).
g(a, b, c) := a2 + b2 + c2 + ab + bc + ca
x30 + x2
0 x7 + x0x27 + x3
7 g(x0, x6, x7)x3
1 + x21 x9 + x1x2
9 + x39 g(x1, x4, x9)
x32 + x2
2 x5 + x2x25 + x3
5 g(x2, x3, x5)
x3 − x5 g(x3, x7, x8)x3 + x5 + x7 + x8x4 − x9 g(x4, x8, x9)x4 + x5 + x8 + x9
g(x5, x8, x9) x5 + x7 + x8 + x9 x5 − x9x5 − x7 x5 − x9x6 − x7 g(x6, x8, x9) x6 + x7 + x8 + x9
x7 − x9 g(x7, x8, x9)
x38 + x2
8 x9 + x8x29 + x3
9
x49 − 1
01
2
34
56
7
8
9
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 11 / 17
Our results
An algorithm to compute chordal networkrepresentations.
sparsepolynomial
systemgraph chordal
graphchordalnetwork
Chordalnetwork
query
cardinality
dimension
sampling
components
Chordal networks can be efficiently used toderive many properties of the variety (rely ondynamic programming & triangular sets).
Several families of polynomial systems ad-mit a chordal network representation ofsize O(n), even though the number ofcomponents is exponentially large.
x0x3 − x1x20
x2x5 − x3x4 0x2, x3
x4x7 − x5x60 x4, x5
x6x9 − x7x8 0x6, x7
x8x11 − x9x100 x8, x9
x10x13 − x11x12 0x10, x11
x12x15 − x13x14 x12, x13
01
23
45
67
89
10,11
12,13
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 12 / 17
Our results
An algorithm to compute chordal networkrepresentations.
sparsepolynomial
systemgraph chordal
graphchordalnetwork
Chordalnetwork
query
cardinality
dimension
sampling
components
Chordal networks can be efficiently used toderive many properties of the variety (rely ondynamic programming & triangular sets).
Several families of polynomial systems ad-mit a chordal network representation ofsize O(n), even though the number ofcomponents is exponentially large.
x0x3 − x1x20
x2x5 − x3x4 0x2, x3
x4x7 − x5x60 x4, x5
x6x9 − x7x8 0x6, x7
x8x11 − x9x100 x8, x9
x10x13 − x11x12 0x10, x11
x12x15 − x13x14 x12, x13
01
23
45
67
89
10,11
12,13
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 12 / 17
Our results
An algorithm to compute chordal networkrepresentations.
sparsepolynomial
systemgraph chordal
graphchordalnetwork
Chordalnetwork
query
cardinality
dimension
sampling
components
Chordal networks can be efficiently used toderive many properties of the variety (rely ondynamic programming & triangular sets).
Several families of polynomial systems ad-mit a chordal network representation ofsize O(n), even though the number ofcomponents is exponentially large.
x0x3 − x1x20
x2x5 − x3x4 0x2, x3
x4x7 − x5x60 x4, x5
x6x9 − x7x8 0x6, x7
x8x11 − x9x100 x8, x9
x10x13 − x11x12 0x10, x11
x12x15 − x13x14 x12, x13
01
23
45
67
89
10,11
12,13
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 12 / 17
Computing chordal networksConsider the polynomial system
F = {x30 − x0, x0x2 − x2, x1 − x2, x2
2 − x2, x2 − x3}
The associated graph is0 1
2
3which is chordal.
Let us construct a chordal network representation.
First group the polynomials according to the cliques of the graph.
0
1
2
3
x30 − x0, x0x2 − x2, x2
2 − x2
x1 − x2, x22 − x2
x22 − x2, x2x2
3 − x3
0
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 13 / 17
Computing chordal networksConsider the polynomial system
F = {x30 − x0, x0x2 − x2, x1 − x2, x2
2 − x2, x2 − x3}
The associated graph is0 1
2
3which is chordal.
Let us construct a chordal network representation.First group the polynomials according to the cliques of the graph.
0
1
2
3
x30 − x0, x0x2 − x2, x2
2 − x2
x1 − x2, x22 − x2
x22 − x2, x2x2
3 − x3
0
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 13 / 17
Computing chordal networksConsider the polynomial system
F = {x30 − x0, x0x2 − x2, x1 − x2, x2
2 − x2, x2 − x3}
The associated graph is0 1
2
3which is chordal.
Let us construct a chordal network representation.First group the polynomials according to the cliques of the graph.
0
1
2
3
x30 − x0, x0x2 − x2, x2
2 − x2
x1 − x2, x22 − x2
x22 − x2, x2x2
3 − x3
0
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 13 / 17
Computing chordal networksx3
0 − x0, x0x2 − x2, x22 − x2
x1 − x2, x22 − x2
x22 − x2, x2x2
3 − x3
0
tria−−→ x30 − x0, x2 x0 − 1, x2 − 1
x1 − x2, x22 − x2
x22 − x2, x2x2
3 − x3
0
elim−−→ x30 − x0 x0 − 1
x1 − x2, x22 − x2
x22 − x2, x2x2
3 − x3, x2 x22 − x2, x2x2
3 − x3, x2 − 1
0
elim−−→
x30 − x0 x0 − 1
x1 − x2
x22 − x2, x2x2
3 − x3, x2 x22 − x2, x2x2
3 − x3, x2 − 1
0
tria−−→
x30 − x0 x0 − 1
x1 − x2
x2, x3 x2 − 1, x3 x2 − 1, x3 − 1
0
elim−−→
x30 − x0 x0 − 1
x1 − x2
x2 x2 − 1 x2 − 1
x3 x3 x3 − 1
merge−−−→
x30 − x0 x0 − 1
x1 − x2
x2 x2 − 1
x3 x3 − 1
0
1
2
3
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 14 / 17
Computing chordal networksx3
0 − x0, x0x2 − x2, x22 − x2
x1 − x2, x22 − x2
x22 − x2, x2x2
3 − x3
0
tria−−→ x30 − x0, x2 x0 − 1, x2 − 1
x1 − x2, x22 − x2
x22 − x2, x2x2
3 − x3
0
elim−−→ x30 − x0 x0 − 1
x1 − x2, x22 − x2
x22 − x2, x2x2
3 − x3, x2 x22 − x2, x2x2
3 − x3, x2 − 1
0
elim−−→
x30 − x0 x0 − 1
x1 − x2
x22 − x2, x2x2
3 − x3, x2 x22 − x2, x2x2
3 − x3, x2 − 1
0
tria−−→
x30 − x0 x0 − 1
x1 − x2
x2, x3 x2 − 1, x3 x2 − 1, x3 − 1
0
elim−−→
x30 − x0 x0 − 1
x1 − x2
x2 x2 − 1 x2 − 1
x3 x3 x3 − 1
merge−−−→
x30 − x0 x0 − 1
x1 − x2
x2 x2 − 1
x3 x3 − 1
0
1
2
3
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 14 / 17
Computing chordal networksx3
0 − x0, x0x2 − x2, x22 − x2
x1 − x2, x22 − x2
x22 − x2, x2x2
3 − x3
0
tria−−→ x30 − x0, x2 x0 − 1, x2 − 1
x1 − x2, x22 − x2
x22 − x2, x2x2
3 − x3
0
elim−−→ x30 − x0 x0 − 1
x1 − x2, x22 − x2
x22 − x2, x2x2
3 − x3, x2 x22 − x2, x2x2
3 − x3, x2 − 1
0
elim−−→
x30 − x0 x0 − 1
x1 − x2
x22 − x2, x2x2
3 − x3, x2 x22 − x2, x2x2
3 − x3, x2 − 1
0
tria−−→
x30 − x0 x0 − 1
x1 − x2
x2, x3 x2 − 1, x3 x2 − 1, x3 − 1
0
elim−−→
x30 − x0 x0 − 1
x1 − x2
x2 x2 − 1 x2 − 1
x3 x3 x3 − 1
merge−−−→
x30 − x0 x0 − 1
x1 − x2
x2 x2 − 1
x3 x3 − 1
0
1
2
3
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 14 / 17
Computing chordal networksx3
0 − x0, x0x2 − x2, x22 − x2
x1 − x2, x22 − x2
x22 − x2, x2x2
3 − x3
0
tria−−→ x30 − x0, x2 x0 − 1, x2 − 1
x1 − x2, x22 − x2
x22 − x2, x2x2
3 − x3
0
elim−−→ x30 − x0 x0 − 1
x1 − x2, x22 − x2
x22 − x2, x2x2
3 − x3, x2 x22 − x2, x2x2
3 − x3, x2 − 1
0
elim−−→
x30 − x0 x0 − 1
x1 − x2
x22 − x2, x2x2
3 − x3, x2 x22 − x2, x2x2
3 − x3, x2 − 1
0
tria−−→
x30 − x0 x0 − 1
x1 − x2
x2, x3 x2 − 1, x3 x2 − 1, x3 − 1
0
elim−−→
x30 − x0 x0 − 1
x1 − x2
x2 x2 − 1 x2 − 1
x3 x3 x3 − 1
merge−−−→
x30 − x0 x0 − 1
x1 − x2
x2 x2 − 1
x3 x3 − 1
0
1
2
3
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 14 / 17
Computing chordal networksx3
0 − x0, x0x2 − x2, x22 − x2
x1 − x2, x22 − x2
x22 − x2, x2x2
3 − x3
0
tria−−→ x30 − x0, x2 x0 − 1, x2 − 1
x1 − x2, x22 − x2
x22 − x2, x2x2
3 − x3
0
elim−−→ x30 − x0 x0 − 1
x1 − x2, x22 − x2
x22 − x2, x2x2
3 − x3, x2 x22 − x2, x2x2
3 − x3, x2 − 1
0
elim−−→
x30 − x0 x0 − 1
x1 − x2
x22 − x2, x2x2
3 − x3, x2 x22 − x2, x2x2
3 − x3, x2 − 1
0
tria−−→
x30 − x0 x0 − 1
x1 − x2
x2, x3 x2 − 1, x3 x2 − 1, x3 − 1
0
elim−−→
x30 − x0 x0 − 1
x1 − x2
x2 x2 − 1 x2 − 1
x3 x3 x3 − 1
merge−−−→
x30 − x0 x0 − 1
x1 − x2
x2 x2 − 1
x3 x3 − 1
0
1
2
3
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 14 / 17
Computing chordal networksx3
0 − x0, x0x2 − x2, x22 − x2
x1 − x2, x22 − x2
x22 − x2, x2x2
3 − x3
0
tria−−→ x30 − x0, x2 x0 − 1, x2 − 1
x1 − x2, x22 − x2
x22 − x2, x2x2
3 − x3
0
elim−−→ x30 − x0 x0 − 1
x1 − x2, x22 − x2
x22 − x2, x2x2
3 − x3, x2 x22 − x2, x2x2
3 − x3, x2 − 1
0
elim−−→
x30 − x0 x0 − 1
x1 − x2
x22 − x2, x2x2
3 − x3, x2 x22 − x2, x2x2
3 − x3, x2 − 1
0
tria−−→
x30 − x0 x0 − 1
x1 − x2
x2, x3 x2 − 1, x3 x2 − 1, x3 − 1
0
elim−−→
x30 − x0 x0 − 1
x1 − x2
x2 x2 − 1 x2 − 1
x3 x3 x3 − 1
merge−−−→
x30 − x0 x0 − 1
x1 − x2
x2 x2 − 1
x3 x3 − 1
0
1
2
3
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 14 / 17
Computing chordal networksx3
0 − x0, x0x2 − x2, x22 − x2
x1 − x2, x22 − x2
x22 − x2, x2x2
3 − x3
0
tria−−→ x30 − x0, x2 x0 − 1, x2 − 1
x1 − x2, x22 − x2
x22 − x2, x2x2
3 − x3
0
elim−−→ x30 − x0 x0 − 1
x1 − x2, x22 − x2
x22 − x2, x2x2
3 − x3, x2 x22 − x2, x2x2
3 − x3, x2 − 1
0
elim−−→
x30 − x0 x0 − 1
x1 − x2
x22 − x2, x2x2
3 − x3, x2 x22 − x2, x2x2
3 − x3, x2 − 1
0
tria−−→
x30 − x0 x0 − 1
x1 − x2
x2, x3 x2 − 1, x3 x2 − 1, x3 − 1
0
elim−−→
x30 − x0 x0 − 1
x1 − x2
x2 x2 − 1 x2 − 1
x3 x3 x3 − 1
merge−−−→
x30 − x0 x0 − 1
x1 − x2
x2 x2 − 1
x3 x3 − 1
0
1
2
3
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 14 / 17
Implementation and examples
Our methods are implemented in the Macaulay2 package “Chordal”.
We applied chordal networks in different areas:
Graph colorings (counting q-colorings)Cryptography (“baby” AES, Cid et al.)Sensor Network localizationDiscretization of differential equationsAlgebraic statisticsReachability in vector addition systems
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 15 / 17
Application: Vector addition systems
ProblemGiven vectors B ⊂ Zn, construct a graphwith vertex set Nn in which u, v ∈ Nn areadjacent if u − v ∈ ±B. The reachabilityproblem is to describe the connectedcomponents of the graph.
This problem can be written in terms of polynomial equations. For instances withsimple graphical structure, chordal networks outperform existing techniques byorders of magnitude.
n 5 10 15 20 25 30 35 40 45 50 55
Singular (GB) 0.0 0.0 0.2 17.9 1036.2 - - - - - -Epsilon (TS) 0.1 0.2 0.4 2.0 54.4 160.1 5141.9 17510.1 - - -ChordalNet 0.7 3.0 8.5 14.3 21.8 29.8 37.7 48.2 62.3 70.6 84.8
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 16 / 17
Application: Vector addition systems
ProblemGiven vectors B ⊂ Zn, construct a graphwith vertex set Nn in which u, v ∈ Nn areadjacent if u − v ∈ ±B. The reachabilityproblem is to describe the connectedcomponents of the graph.
This problem can be written in terms of polynomial equations. For instances withsimple graphical structure, chordal networks outperform existing techniques byorders of magnitude.
n 5 10 15 20 25 30 35 40 45 50 55
Singular (GB) 0.0 0.0 0.2 17.9 1036.2 - - - - - -Epsilon (TS) 0.1 0.2 0.4 2.0 54.4 160.1 5141.9 17510.1 - - -ChordalNet 0.7 3.0 8.5 14.3 21.8 29.8 37.7 48.2 62.3 70.6 84.8
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 16 / 17
Summary
Chordal structure can notably help in computational algebraicgeometry.Under assumptions (chordality + algebraic structure), tractable!Try our Macaulay2 package “Chordal”!
If you want to know more:Cifuentes, Parrilo (2016), Exploiting chordal structure in polynomial ideals: a Grobnerbasis approach. SIAM J. Discrete Math., 30(3):1534-1570.Cifuentes, Parrilo (2016), An efficient tree decomposition method for permanents andmixed discriminants. Linear Alg. Appl., 493:45-81.Cifuentes, Parrilo (2017), Chordal networks of polynomial ideals. SIAM J. Appl. AlgebraGeometry, 1(1):73-170.
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 17 / 17
Summary
Chordal structure can notably help in computational algebraicgeometry.Under assumptions (chordality + algebraic structure), tractable!Try our Macaulay2 package “Chordal”!
If you want to know more:Cifuentes, Parrilo (2016), Exploiting chordal structure in polynomial ideals: a Grobnerbasis approach. SIAM J. Discrete Math., 30(3):1534-1570.Cifuentes, Parrilo (2016), An efficient tree decomposition method for permanents andmixed discriminants. Linear Alg. Appl., 493:45-81.Cifuentes, Parrilo (2017), Chordal networks of polynomial ideals. SIAM J. Appl. AlgebraGeometry, 1(1):73-170.
Cifuentes (MIT) Chordal networks 68NQRT INRIA’ 20 17 / 17