The Tutte polynomial, also called the dichromate or the Tutte–Whitney polynomial, is a
graph polynomial. It is a
polynomial
In mathematics, a polynomial is a Expression (mathematics), mathematical expression consisting of indeterminate (variable), indeterminates (also called variable (mathematics), variables) and coefficients, that involves only the operations of addit ...
in two variables which plays an important role in
graph theory
In mathematics and computer science, graph theory is the study of ''graph (discrete mathematics), graphs'', which are mathematical structures used to model pairwise relations between objects. A graph in this context is made up of ''Vertex (graph ...
. It is defined for every
undirected graph
In discrete mathematics, particularly in graph theory, a graph is a structure consisting of a set of objects where some pairs of the objects are in some sense "related". The objects are represented by abstractions called '' vertices'' (also call ...
and contains information about how the graph is connected. It is denoted by
.
The importance of this polynomial stems from the information it contains about
. Though originally studied in
algebraic graph theory as a generalization of counting problems related to
graph coloring
In graph theory, graph coloring is a methodic assignment of labels traditionally called "colors" to elements of a Graph (discrete mathematics), graph. The assignment is subject to certain constraints, such as that no two adjacent elements have th ...
and
nowhere-zero flow, it contains several famous other specializations from other sciences such as the
Jones polynomial
In the mathematical field of knot theory, the Jones polynomial is a knot polynomial discovered by Vaughan Jones in 1984. Specifically, it is an invariant of an oriented knot or link which assigns to each oriented knot or link a Laurent polyno ...
from
knot theory
In topology, knot theory is the study of knot (mathematics), mathematical knots. While inspired by knots which appear in daily life, such as those in shoelaces and rope, a mathematical knot differs in that the ends are joined so it cannot be und ...
and the
partition functions
Partition may refer to:
Arts and entertainment Film and television
* Partition (1987 film), ''Partition'' (1987 film), directed by Ken McMullen
* Partition (2007 film), ''Partition'' (2007 film), directed by Vic Sarin
* ''Partition: 1947'', or '' ...
of the
Potts model
In statistical mechanics, the Potts model, a generalization of the Ising model, is a model of interacting spins on a crystalline lattice. By studying the Potts model, one may gain insight into the behaviour of ferromagnets and certain other phenom ...
from
statistical physics
In physics, statistical mechanics is a mathematical framework that applies statistical methods and probability theory to large assemblies of microscopic entities. Sometimes called statistical physics or statistical thermodynamics, its applicati ...
. It is also the source of several central
computational problem
In theoretical computer science, a computational problem is one that asks for a solution in terms of an algorithm. For example, the problem of factoring
:"Given a positive integer ''n'', find a nontrivial prime factor of ''n''."
is a computati ...
s in
theoretical computer science
Theoretical computer science is a subfield of computer science and mathematics that focuses on the Abstraction, abstract and mathematical foundations of computation.
It is difficult to circumscribe the theoretical areas precisely. The Associati ...
.
The Tutte polynomial has several equivalent definitions. It is essentially equivalent to Whitney’s rank polynomial, Tutte’s own dichromatic polynomial and Fortuin–Kasteleyn’s
random cluster model under simple transformations. It is essentially a
generating function
In mathematics, a generating function is a representation of an infinite sequence of numbers as the coefficients of a formal power series. Generating functions are often expressed in closed form (rather than as a series), by some expression invo ...
for the number of edge sets of a given size and connected components, with immediate generalizations to
matroid
In combinatorics, a matroid is a structure that abstracts and generalizes the notion of linear independence in vector spaces. There are many equivalent ways to define a matroid Axiomatic system, axiomatically, the most significant being in terms ...
s. It is also the most general
graph invariant
Graph may refer to:
Mathematics
*Graph (discrete mathematics), a structure made of vertices and edges
**Graph theory, the study of such graphs and their properties
* Graph (topology), a topological space resembling a graph in the sense of discre ...
that can be defined by a
deletion–contraction recurrence. Several textbooks about graph theory and matroid theory devote entire chapters to it.
Definitions
Definition. For an undirected graph one may define the Tutte polynomial as
:
where denotes the number of connected components of the graph .
In this definition it is clear that
is well-defined and a polynomial in
and
.
The same definition can be given using slightly different notation by letting
denote the
rank
A rank is a position in a hierarchy. It can be formally recognized—for example, cardinal, chief executive officer, general, professor—or unofficial.
People Formal ranks
* Academic rank
* Corporate title
* Diplomatic rank
* Hierarchy ...
of the graph
. Then the Whitney rank generating function is defined as
:
The two functions are equivalent under a simple change of variables:
:
Tutte’s dichromatic polynomial
is the result of another simple transformation:
:
Tutte’s original definition of
is equivalent but less easily stated. For connected
we set
:
where
denotes the number of
spanning tree
In the mathematical field of graph theory, a spanning tree ''T'' of an undirected graph ''G'' is a subgraph that is a tree which includes all of the vertices of ''G''. In general, a graph may have several spanning trees, but a graph that is no ...
s of ''internal activity''
and ''external activity''
.
A third definition uses a
deletion–contraction recurrence. The
edge contraction
In graph theory, an edge contraction is an operation that removes an edge from a graph while simultaneously merging the two vertices that it previously joined. Edge contraction is a fundamental operation in the theory of graph minors. Vertex id ...
of graph
is the graph obtained by merging the vertices
and
and removing the edge
. We write
for the graph where the edge
is merely removed. Then the Tutte polynomial is defined by the recurrence relation
:
if
is neither a
loop nor a
bridge
A bridge is a structure built to Span (engineering), span a physical obstacle (such as a body of water, valley, road, or railway) without blocking the path underneath. It is constructed for the purpose of providing passage over the obstacle, whi ...
, with base case
:
if
contains
bridges and
loops and no other edges. Especially,
if
contains no edges.
The
random cluster model from statistical mechanics due to provides yet another equivalent definition. The partition sum
:
is equivalent to
under the transformation
:
Properties
The Tutte polynomial factors into connected components. If
is the union of disjoint graphs
and
then
:
If
is planar and
denotes its
dual graph
In the mathematics, mathematical discipline of graph theory, the dual graph of a planar graph is a graph that has a vertex (graph theory), vertex for each face (graph theory), face of . The dual graph has an edge (graph theory), edge for each p ...
then
:
Especially, the chromatic polynomial of a planar graph is the flow polynomial of its dual. Tutte refers to such functions as V-functions.
Examples
Isomorphic graphs have the same Tutte polynomial, but the converse is not true. For example, the Tutte polynomial of every tree on
edges is
.
Tutte polynomials are often given in tabular form by listing the coefficients
of
in row
and column
. For example, the Tutte polynomial of the
Petersen graph
In the mathematical field of graph theory, the Petersen graph is an undirected graph with 10 vertices and 15 edges. It is a small graph that serves as a useful example and counterexample for many problems in graph theory. The Petersen graph i ...
,
:
is given by the following table.
Other example, the Tutte polynomial of the octahedron graph is given by
:
History
W. T. Tutte’s interest in the
deletion–contraction formula started in his undergraduate days at
Trinity College, Cambridge
Trinity College is a Colleges of the University of Cambridge, constituent college of the University of Cambridge. Founded in 1546 by King Henry VIII, Trinity is one of the largest Cambridge colleges, with the largest financial endowment of any ...
, originally motivated by
perfect rectangles and
spanning tree
In the mathematical field of graph theory, a spanning tree ''T'' of an undirected graph ''G'' is a subgraph that is a tree which includes all of the vertices of ''G''. In general, a graph may have several spanning trees, but a graph that is no ...
s. He often applied the formula in his research and “wondered if there were other interesting
functions of graphs, invariant under isomorphism, with similar recursion formulae.”
[.] R. M. Foster had already observed that the
chromatic polynomial is one such function, and Tutte began to discover more. His original terminology for graph invariants that satisfy the deletion–contraction recursion was ''W-function'', and ''V-function'' if multiplicative over components. Tutte writes, “Playing with my ''W-functions'' I obtained a two-variable polynomial from which either the chromatic polynomial or the flow-polynomial could be obtained by setting one of the variables equal to zero, and adjusting signs.”
Tutte called this function the ''dichromate'', as he saw it as a generalization of the chromatic polynomial to two variables, but it is usually referred to as the Tutte polynomial. In Tutte’s words, “This may be unfair to
Hassler Whitney
Hassler Whitney (March 23, 1907 – May 10, 1989) was an American mathematician. He was one of the founders of singularity theory, and did foundational work in manifolds, embeddings, immersion (mathematics), immersions, characteristic classes and, ...
who knew and used analogous coefficients without bothering to affix them to two variables.” (There is “notable confusion” about the terms ''dichromate'' and ''dichromatic polynomial'', introduced by Tutte in different paper, and which differ only slightly.) The generalisation of the Tutte polynomial to matroids was first published by
Crapo, though it appears already in Tutte’s thesis.
[.]
Independently of the work in
algebraic graph theory, Potts began studying the
partition function of certain models in
statistical mechanics
In physics, statistical mechanics is a mathematical framework that applies statistical methods and probability theory to large assemblies of microscopic entities. Sometimes called statistical physics or statistical thermodynamics, its applicati ...
in 1952. The work by Fortuin and Kasteleyn on the
random cluster model, a generalisation of the
Potts model
In statistical mechanics, the Potts model, a generalization of the Ising model, is a model of interacting spins on a crystalline lattice. By studying the Potts model, one may gain insight into the behaviour of ferromagnets and certain other phenom ...
, provided a unifying expression that showed the relation to the Tutte polynomial.
Specialisations
At various points and lines of the
-plane, the Tutte polynomial evaluates to quantities that have been studied in their own right in diverse fields of mathematics and physics. Part of the appeal of the Tutte polynomial comes from the unifying framework it provides for analysing these quantities.
Chromatic polynomial
At
, the Tutte polynomial specialises to the chromatic polynomial,
:
where
denotes the number of connected components of ''G''.
For integer λ the value of chromatic polynomial
equals the number of
vertex colourings of ''G'' using a set of λ colours. It is clear that
does not depend on the set of colours. What is less clear is that it is the evaluation at λ of a polynomial with integer coefficients. To see this, we observe:
# If ''G'' has ''n'' vertices and no edges, then
.
# If ''G'' contains a loop (a single edge connecting a vertex to itself), then
.
# If ''e'' is an edge which is not a loop, then
::
The three conditions above enable us to calculate
, by applying a sequence of edge deletions and contractions; but they give no guarantee that a different sequence of deletions and contractions will lead to the same value. The guarantee comes from the fact that
counts something, independently of the recurrence. In particular,
:
gives the number of acyclic orientations.
Jones polynomial
Along the hyperbola
, the Tutte polynomial of a planar graph specialises to the
Jones polynomial
In the mathematical field of knot theory, the Jones polynomial is a knot polynomial discovered by Vaughan Jones in 1984. Specifically, it is an invariant of an oriented knot or link which assigns to each oriented knot or link a Laurent polyno ...
of an associated
alternating knot.
Individual points
(2, 1)
counts the number of
forest
A forest is an ecosystem characterized by a dense ecological community, community of trees. Hundreds of definitions of forest are used throughout the world, incorporating factors such as tree density, tree height, land use, legal standing, ...
s, i.e., the number of acyclic edge subsets.
(1, 1)
counts the number of spanning forests (edge subsets without cycles and the same number of connected components as ''G''). If the graph is connected,
counts the number of spanning trees.
(1, 2)
counts the number of spanning subgraphs (edge subsets with the same number of connected components as ''G'').
(2, 0)
counts the number of
acyclic orientations of ''G''.
[.]
(0, 2)
counts the number of
strongly connected orientations of ''G''.
(2, 2)
is the number
where
is the number of edges of graph ''G''.
(0, −2)
If ''G'' is a 4-regular graph, then
:
counts the number of
Eulerian orientations of ''G''. Here
is the number of connected components of ''G''.
(3, 3)
If ''G'' is the ''m'' × ''n''
grid graph
In graph theory, a lattice graph, mesh graph, or grid graph is a Graph (discrete mathematics), graph whose graph drawing, drawing, Embedding, embedded in some Euclidean space , forms a regular tiling. This implies that the group (mathematics), g ...
, then
counts the number of ways to tile a rectangle of width 4''m'' and height 4''n'' with
T-tetrominoes.
If ''G'' is a
planar graph
In graph theory, a planar graph is a graph (discrete mathematics), graph that can be graph embedding, embedded in the plane (geometry), plane, i.e., it can be drawn on the plane in such a way that its edges intersect only at their endpoints. ...
, then
equals the sum over weighted Eulerian orientations in a
medial graph of ''G'', where the weight of an orientation is 2 to the number of saddle vertices of the orientation (that is, the number of vertices with incident edges cyclicly ordered "in, out, in out").
Potts and Ising models
Define the hyperbola in the ''xy''−plane:
:
the Tutte polynomial specialises to the partition function,
of the
Ising model
The Ising model (or Lenz–Ising model), named after the physicists Ernst Ising and Wilhelm Lenz, is a mathematical models in physics, mathematical model of ferromagnetism in statistical mechanics. The model consists of discrete variables that r ...
studied in
statistical physics
In physics, statistical mechanics is a mathematical framework that applies statistical methods and probability theory to large assemblies of microscopic entities. Sometimes called statistical physics or statistical thermodynamics, its applicati ...
. Specifically, along the hyperbola
the two are related by the equation:
:
In particular,
:
for all complex α.
More generally, if for any positive integer ''q'', we define the hyperbola:
:
then the Tutte polynomial specialises to the partition function of the ''q''-state
Potts model
In statistical mechanics, the Potts model, a generalization of the Ising model, is a model of interacting spins on a crystalline lattice. By studying the Potts model, one may gain insight into the behaviour of ferromagnets and certain other phenom ...
. Various physical quantities analysed in the framework of the Potts model translate to specific parts of the
.
Flow polynomial
At
, the Tutte polynomial specialises to the flow polynomial studied in combinatorics. For a connected and undirected graph ''G'' and integer ''k'', a nowhere-zero ''k''-flow is an assignment of “flow” values
to the edges of an arbitrary orientation of ''G'' such that the total flow entering and leaving each vertex is congruent modulo ''k''. The flow polynomial
denotes the number of nowhere-zero ''k''-flows. This value is intimately connected with the chromatic polynomial, in fact, if ''G'' is a
planar graph
In graph theory, a planar graph is a graph (discrete mathematics), graph that can be graph embedding, embedded in the plane (geometry), plane, i.e., it can be drawn on the plane in such a way that its edges intersect only at their endpoints. ...
, the chromatic polynomial of ''G'' is equivalent to the flow polynomial of its
dual graph
In the mathematics, mathematical discipline of graph theory, the dual graph of a planar graph is a graph that has a vertex (graph theory), vertex for each face (graph theory), face of . The dual graph has an edge (graph theory), edge for each p ...
in the sense that
Theorem (Tutte).
:
The connection to the Tutte polynomial is given by:
:
Reliability polynomial
At
, the Tutte polynomial specialises to the all-terminal reliability polynomial studied in network theory. For a connected graph ''G'' remove every edge with probability ''p''; this models a network subject to random edge failures. Then the reliability polynomial is a function
, a polynomial in ''p'', that gives the probability that every pair of vertices in ''G'' remains connected after the edges fail. The connection to the Tutte polynomial is given by
:
Dichromatic polynomial
Tutte also defined a closer 2-variable generalization of the chromatic polynomial, the dichromatic polynomial of a graph. This is
:
where
is the number of
connected components of the spanning subgraph (''V'',''A''). This is related to the corank-nullity polynomial by
:
The dichromatic polynomial does not generalize to matroids because ''k''(''A'') is not a matroid property: different graphs with the same matroid can have different numbers of connected components.
Related polynomials
Martin polynomial
The Martin polynomial
of an oriented 4-regular graph
was defined by Pierre Martin in 1977. He showed that if ''G'' is a plane graph and
is its
directed medial graph, then
:
Algorithms
Deletion–contraction
The deletion–contraction recurrence for the Tutte polynomial,
:
immediately yields a recursive algorithm for computing it for a given graph: as long as you can find an edge ''e'' that is not a
loop or
bridge
A bridge is a structure built to Span (engineering), span a physical obstacle (such as a body of water, valley, road, or railway) without blocking the path underneath. It is constructed for the purpose of providing passage over the obstacle, whi ...
, recursively compute the Tutte polynomial for when that edge is deleted, and when that edge is
contracted. Then add the two sub-results together to get the overall Tutte polynomial for the graph.
The base case is a monomial
where ''m'' is the number of bridges, and ''n'' is the number of loops.
Within a polynomial factor, the running time ''t'' of this algorithm can be expressed in terms of the number of vertices ''n'' and the number of edges ''m'' of the graph,
:
a recurrence relation that scales as the
Fibonacci numbers
In mathematics, the Fibonacci sequence is a sequence in which each element is the sum of the two elements that precede it. Numbers that are part of the Fibonacci sequence are known as Fibonacci numbers, commonly denoted . Many writers begin the s ...
with solution
:
The analysis can be improved to within a polynomial factor of the number
of
spanning trees of the input graph.
[.] For
sparse graphs with
this running time is
. For
regular graphs of degree ''k'', the number of spanning trees can be bounded by
:
where
:
so the deletion–contraction algorithm runs within a polynomial factor of this bound. For example:
:
In practice,
graph isomorphism
In graph theory, an isomorphism of graphs ''G'' and ''H'' is a bijection between the vertex sets of ''G'' and ''H''
: f \colon V(G) \to V(H)
such that any two vertices ''u'' and ''v'' of ''G'' are adjacent in ''G'' if and only if f(u) and f(v) a ...
testing is used to avoid some recursive calls. This approach works well for graphs that are quite sparse and exhibit many symmetries; the performance of the algorithm depends on the heuristic used to pick the edge ''e''.
Gaussian elimination
In some restricted instances, the Tutte polynomial can be computed in polynomial time, ultimately because
Gaussian elimination
In mathematics, Gaussian elimination, also known as row reduction, is an algorithm for solving systems of linear equations. It consists of a sequence of row-wise operations performed on the corresponding matrix of coefficients. This method can a ...
efficiently computes the matrix operations
determinant
In mathematics, the determinant is a Scalar (mathematics), scalar-valued function (mathematics), function of the entries of a square matrix. The determinant of a matrix is commonly denoted , , or . Its value characterizes some properties of the ...
and
Pfaffian. These algorithms are themselves important results from
algebraic graph theory and
statistical mechanics
In physics, statistical mechanics is a mathematical framework that applies statistical methods and probability theory to large assemblies of microscopic entities. Sometimes called statistical physics or statistical thermodynamics, its applicati ...
.
equals the number
of
spanning tree
In the mathematical field of graph theory, a spanning tree ''T'' of an undirected graph ''G'' is a subgraph that is a tree which includes all of the vertices of ''G''. In general, a graph may have several spanning trees, but a graph that is no ...
s of a connected graph. This is
computable in polynomial time as the
determinant
In mathematics, the determinant is a Scalar (mathematics), scalar-valued function (mathematics), function of the entries of a square matrix. The determinant of a matrix is commonly denoted , , or . Its value characterizes some properties of the ...
of a maximal principal submatrix of the
Laplacian matrix
In the mathematical field of graph theory, the Laplacian matrix, also called the graph Laplacian, admittance matrix, Kirchhoff matrix, or discrete Laplacian, is a matrix representation of a graph. Named after Pierre-Simon Laplace, the graph Lap ...
of ''G'', an early result in algebraic graph theory known as
Kirchhoff’s Matrix–Tree theorem. Likewise, the dimension of the bicycle space at
can be computed in polynomial time by Gaussian elimination.
For planar graphs, the partition function of the Ising model, i.e., the Tutte polynomial at the hyperbola
, can be expressed as a Pfaffian and computed efficiently via the
FKT algorithm. This idea was developed by
Fisher,
Kasteleyn, and
Temperley Temperley may refer to:
* Temperley, Argentina, a city in the province of Buenos Aires, Argentina, that forms part of the Greater Buenos Aires metro area.
* Temperley (surname)
* Club Atlético Temperley, Temperley, Buenos Aires, Argentina; a sport ...
to compute the number of
dimer covers of a planar
lattice model.
Markov chain Monte Carlo
Using a
Markov chain Monte Carlo
In statistics, Markov chain Monte Carlo (MCMC) is a class of algorithms used to draw samples from a probability distribution. Given a probability distribution, one can construct a Markov chain whose elements' distribution approximates it – that ...
method, the Tutte polynomial can be arbitrarily well approximated along the positive branch of
, equivalently, the partition function of the ferromagnetic Ising model. This exploits the close connection between the Ising model and the problem of counting
matchings in a graph. The idea behind this celebrated result of Jerrum and Sinclair is to set up a
Markov chain
In probability theory and statistics, a Markov chain or Markov process is a stochastic process describing a sequence of possible events in which the probability of each event depends only on the state attained in the previous event. Informally ...
whose states are the matchings of the input graph. The transitions are defined by choosing edges at random and modifying the matching accordingly. The resulting Markov chain is rapidly mixing and leads to “sufficiently random” matchings, which can be used to recover the partition function using random sampling. The resulting algorithm is a
fully polynomial-time randomized approximation scheme (fpras).
Computational complexity
Several computational problems are associated with the Tutte polynomial. The most straightforward one is
;Input: A graph
;Output: The coefficients of
In particular, the output allows evaluating
which is equivalent to counting the number of 3-colourings of ''G''. This latter question is
#P-complete, even when restricted to the family of
planar graph
In graph theory, a planar graph is a graph (discrete mathematics), graph that can be graph embedding, embedded in the plane (geometry), plane, i.e., it can be drawn on the plane in such a way that its edges intersect only at their endpoints. ...
s, so the problem of computing the coefficients of the Tutte polynomial for a given graph is
#P-hard even for planar graphs.
Much more attention has been given to the family of problems called Tutte
defined for every complex pair
:
;
Input: A graph
;
Output: The value of
The hardness of these problems varies with the coordinates
.
Exact computation
If both ''x'' and ''y'' are non-negative integers, the problem
belongs to
#P. For general integer pairs, the Tutte polynomial contains negative terms, which places the problem in the complexity class
GapP, the closure of
#P under subtraction. To accommodate rational coordinates
, one can define a rational analogue of
#P.
[.]
The computational complexity of exactly computing
falls into one of two classes for any
. The problem is #P-hard unless
lies on the hyperbola
or is one of the points
:
in which cases it is computable in polynomial time. If the problem is restricted to the class of planar graphs, the points on the hyperbola
become polynomial-time computable as well. All other points remain #P-hard, even for bipartite planar graphs. In his paper on the dichotomy for planar graphs, Vertigan claims (in his conclusion) that the same result holds when further restricted to graphs with vertex degree at most three, save for the point
, which counts nowhere-zero Z
3-flows and is computable in polynomial time.
These results contain several notable special cases. For example, the problem of computing the partition function of the Ising model is #P-hard in general, even though celebrated algorithms of Onsager and Fisher solve it for planar lattices. Also, the Jones polynomial is #P-hard to compute. Finally, computing the number of four-colorings of a planar graph is #P-complete, even though the decision problem is trivial by the
four color theorem
In mathematics, the four color theorem, or the four color map theorem, states that no more than four colors are required to color the regions of any map so that no two adjacent regions have the same color. ''Adjacent'' means that two regions shar ...
. In contrast, it is easy to see that counting the number of three-colorings for planar graphs is #P-complete because the decision problem is known to be NP-complete via a
parsimonious reduction.
Approximation
The question which points admit a good approximation algorithm has been very well studied. Apart from the points that can be computed exactly in polynomial time, the only approximation algorithm known for
is Jerrum and Sinclair’s FPRAS, which works for points on the “Ising” hyperbola
for ''y'' > 0. If the input graphs are restricted to dense instances, with degree
, there is an FPRAS if ''x'' ≥ 1, ''y'' ≥ 1.
[For the case ''x'' ≥ 1 and ''y'' = 1, see . For the case ''x'' ≥ 1 and ''y'' > 1, see .]
Even though the situation is not as well understood as for exact computation, large areas of the plane are known to be hard to approximate.
See also
*
Bollobás–Riordan polynomial
* A
Tutte–Grothendieck invariant is any evaluation of the Tutte polynomial
Notes
References
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
*.
External links
*
* {{MathWorld , urlname=TuttePolynomial, title=Tutte polynomial
*
PlanetMath
PlanetMath is a free content, free, collaborative, mathematics online encyclopedia. Intended to be comprehensive, the project is currently hosted by the University of Waterloo. The site is owned by a US-based nonprofit corporation, "PlanetMath.org ...
br>
Chromatic polynomial* Steven R. Pagano
* Sandra Kingan
Matroid theory Many links.
* Code for computing Tutte, Chromatic and Flow Polynomials by Gary Haggard, David J. Pearce and Gordon Royle
Computational problems
Duality theories
Matroid theory
Polynomials
Graph invariants