From the Ising and Potts models to the general graph homomorphism polynomial
1 Introduction
A graph homomorphism from a graph to a graph is a mapping such that if . Graph homomorphisms are well studied objects and, for suitable choices of either or , many classical graph properties can be formulated in terms of homomorphisms. For example the question of wether there exists a homomorphism from to is the same as asking wether is colourable or not. A number of classical models in statistical physics, such as the Ising model, Potts model and lattice gas, can be formulated in terms of the generating function for weighted versions of homomorphisms from to some graph . We refer the reader to [HN04] for a comprehensive survey of the algebraic aspects of graph homomorphisms.
Our aim here is to discuss the generating polynomial for homomorphisms from a graph to the most general weighted graph on vertices. For a fixed this is an object of polynomial size which contains a wealth of informations about the graph , but as we will later show it is not a complete graph invariant. We will first defined this generating function as a polynomial, then recall the definitions of a number of well known graph polynomials, and partition functions from physics, and then proceed to study the properties and relationships of these polynomials.
Let us give the formal definitions of our objects of study.
Definition 1.1.
Given a weighted graph with a weight function which assigns a weight to each edge and vertex of and a homomorphism from a graph to we define the weight of to be
We let denote the set of all homomorphisms from to .
Definition 1.2.
Let be a weighted complete graph on vertices where vertex has weight and an edge gets weight , where each weight is a formal variable. Note the and may be equal.
Let
We call the homomorphism polynomial of order of , or simply the homomorphism polynomial of when the order is clear from the context.
Lemma 1.3.
If has vertices and edges then is a polynomial in variables and each monomial of the polynomial has total degree at most in the ’s and at most in the ’s.
is a symmetric polynomial in the variables .
Example 1.4.
The homomorphism polynomial of order for the three vertex path is
(1) 
Lemma 1.5.
The homomorphism polynomial of order for the complete graph on vertices can be computed in time and is given by
Here is the set of ordered partitions into nonnegative integers of .
2 Graph polynomials and partition functions
In this section we will recall the definitions for several graph polynomials and the partition functions for different models in statistical physics which in different ways relate to the graph homomorphism polynomial.
The first of these is the chromatic polynomial of a graph, first introduced by Whitney [Whi32] as part of his work on the fourcolour conjecture.
Definition 2.1.
q.
It is no immediate that this at all a polynomial, but as shown by Whitney for a graph with vertices this is in fact a monic polynomial of degree .
The chromatic polynomial is a specialization of the well kown Tuttepolynomial, first introduced by Tutte in [Tut47] as the most general graph polynomial satisfying certain relations when edges are contracted or deleted. This polynomial has been studied in many different parametrisations, related by variable substitutions, and the one which we will state is the one connected to the randomcluster model.
Definition 2.2.
Given a graph with vertices and edges:
where denotes the number of connected components in the subgraph induced by vertices in and the edges in
By setting to a fixed integer in we obtain the state Potts partition function , which is the partition function for the Potts model, one of the most studied models in statistical physics. In the special case where this also called the Ising polynomial, and is the partition function for the Ising model. We refer the reader to [Gri06] for a book length treatment of the probabilistic aspects of these models, and to [Sok05] for the more combinatorial aspects.
There is also a twovariable polynomial connected to the ising polynomial. We will here follow the treatment in [AM09].
A state on is a function , the value of at a vertex is called the magnetisation of .
Definition 2.3.
Given a state the energy of an edge in is , and the energy of the state is the sum of the energies of the edges, that is
Definition 2.4.
The magnetisation of a state is the sum of the magnetisations of all the vertices in , that is,
Let denote the set of all states on .
We can now define the Bivariate Ising polynomial:
Definition 2.5.
The Bivariate Ising polynomial is
The Ising polynomial mentioned earlier can be obtained by setting in the bivariate Ising polynomial, substituting for a rational function in and expanding. We refer to [AM09] for full discussion of this.
The bivariate Ising polynomial is also closely connected to the van der Waerdenpolynomial, a polynomial studied van der Waerden in [vdW41].
Definition 2.6 (van der Waerden Polynomial).
where is the number of subgraphs of with edges and vertices of odd degree.
As shown in [AM09] the bivariate Ising polynomial and the van der Waerdenpolynomial are equivalent and are related to each other by a change of variables.
A specialisation of the van der Waerdenpolynomial is the matching polynomial.
Definition 2.7.
The matching polynomial of a graph is
where is the number of matching with edges in .
This polynomial corresponds to the part of the van der Waerdenpolynomial which counts subgraphs with edges and vertices of odd degree.
We finally have two more polynomials which are partition functions for related models from statistical physics. First we have the Independence polynomial:
Definition 2.8.
The independence polynomial of a graph is
where is the number of independent sets with vertices in .
If we take the independence polynomial of the line graph of we obtain the matchingpolynomial of , i.e. .
The independence polynomial is a specialisation of the partition function for the hardcore lattice gas.
Definition 2.9.
where denotes the number of edges in the subgraph of induced by the vertex set .
The independence polynomial corresponds to the part of this partition function where the exponent of is 0, or likewise . In [Bax89] the reader can find a treatment of the analytical and statistical physics side of the lattice gas model for different graphs.
3 Basic properties of the homomorphism polynomial
The homomorphism polynomial satisfies a number of relationships similar to those which hold for other classical graph polynomials.
Theorem 3.1.
If has components and then .
Proof.
Immediate by Definition 1.2 since any homomorphism from to consists of two independent homomorphisms, , , and . ∎
The Tuttepolynomial can be factored in the same way for disconnected graphs, and it is also possible to factor the Tuttepolynomial as if and is a single vertex. As a consequence it follows that all trees on vertices have the same Tuttepolynomial. However, as we will later see, there are trees with the same number of vertices but distinct homomorphism polynomials an hence no similar vertex cut expression exists for .
Theorem 3.2.
The homomorphism polynomial of determines the homomorphism polynomial of the complement .
Proof.
Assume that has vertices. Given the exponents of the variables in a monomial of we can compute what the exponents of the variables would be in the complete graph on vertices, and the sum of the exponents of in and is equal to the exponent in . ∎
The Tuttepolynomial does not have this property, as can be seen by considering trees and their complements, but e.g the matching polynomial does [God81].
The join of two graphs and is the graph obtained by taking the disjoint union of the two graphs and adding an edge from every vertex in to every vertex in .
Corollary 3.3.
If is the join of two graphs and , then can be constructed in polynomial time from and .
As an application of the previous corollary we can extend Lemma 1.5 to compete multipartite graph as well.
Corollary 3.4.
The homomorphism polynomial of the complete multipartite graph can be constructed in polynomial time.
Proof.
Finally we note that if we increase the value of all information from lower values remain.
Lemma 3.5.
determines for all .
Proof.
is the polynomial given by those monomials in with 0 for , and the result follows inductively for smaller . ∎
4 Graph properties, counting problems, and other graph polynomials
Many of the graph polynomials already studied in both mathematics and physics are special cases of the homomorphism polynomial, for specific values of and the weightvariables.
Theorem 4.1.
The following polynomials are determined by for all .

The Ising polynomial (The partition function for the Ising model without external field).

The Bivariate Ising polynomial (The partition function for the Ising model with external field).

The Matching polynomial (The partition function for dimer coverings).

The van der Waerden polynomial.

The Independence polynomial.

The hardcore lattice gas partition function.
Proof.
From Lemma 3.5 we know that we can determine from and directly gives us the bivariate Ising polynomial . In [AM09] it was proven that also determines 1,3 and 4.
The independent set polynomial is determined by the hardcore partition function and it is in turn obtained from by setting . ∎
Here we can mention a problem for further investigation. In [AM09] it is proven that the bivariate Ising polynomial and the van der Waerden polynomials are equivalent, via a pair of variable substitutions.
Problem 4.2.
Develop an analogue of the variable substitutions for the bivariate Ising and van der Waerdens polynomials for for general .
From the fact that determines the bivariate Ising polynomial it follows that many of the basic properties of a graph are determined by . In [AM09] it was shown that the bivariate Ising polynomial, and hence , determines the following properties of a graph.
Theorem 4.3 ([Am09]).
Z(G,x,y) determines the following properties of a graph .

The order , size , and the degreesequence of .

The number of components of and their size.

The smallest edgeconnectivity of the components of .

The size of a maximal edgecut in , i.e. the largest value of .

Whether is bipartite or not.

The girth of .

For an regular graph , the number of cliques and the number of independent sets of size .

Whether is a tree or not, and if is a tree its diameter and its characteristic polynomial.
The restriction to regular graphs in 7 is not necessary for
Theorem 4.4.
determines the number of cliques and the number of independent sets of size in .
Proof.
In a series of papers [SS03, SS06b, SS06a, SS07, SS09] Scott and Sorkin studied a very general class of constraint satisfaction problems, CSPs, for graphs. The focus of those papers is algorithmic, and primarily on binary CSPs, finding fast algorithms for various versions of the CSPs on both sparse random graphs and graphs of bounded treewidth. In the series, they introduced a polynomial version of the CSPs where formal variables were assigned as weights to the edges and vertices of the graph and to the constraints as well. While their emphasis was on situations with general weights on the graph and not on the constraint we note that the homomorphism polynomial can be obtained as a special case of their polynomially weighted CSP by having weight 1 on all edges of the graph and general weights on the constraints. For a more detailed description see [SS09].
5 Nonisomorphic graphs with the same homomorphism polynomial
One question which has been studied in connection with several of the graph polynomials already mentioned is whether nonisomorphic graphs can have the same polynomial, so far the answer has been yes for all polynomials studied, and how finely the given polynomial partitions the set of all graphs into equivalence classes. For the bivariate Ising polynomial this was done in [AM09], where arbitrarily large sets of nonisomorphic graphs with the same bivariate Ising polynomial were constructed, and in [GGN11] this was done for the Potts model partition function. This is a well studied question for the chromatic polynomial, see e.g. [Tut98].
For we have carried out a complete classification of the graphs on vertices according to their , by a direct computer search. We give more details about the computer search in Appendix Appendix: The computer search and present the results here. The smallest nonisomorphic graphs with the same have 8 vertices, see Figure 1 for an example. In Table 1 we show the number of nontrivial equivalence classes for each .
17  0  0  0 

8  29  0  0 
9  2200  0  0 
10  29270  2  0 

The smallest graphs with the same have 10 vertices, and the nontrivial equivalence classes are two pairs of graphs, one of which is displayed in Figure 2 and the other is the complements of the graphs in the displayed pair.
As Lemma 3.5 shows the property of having distinct from all other graphs is monotone in , i.e., if then the homomorphism polynomial for lower values of will also be equal. If some of the variables in are given either numerical values or given equal weights this type of monotonicity is not necessarily preserved. In [GGN11] the authors asked for examples of graphs with the same state Potts model partition function for but different ones for . We used the same computer programs as for our earlier classification to look for such examples as well. This can be done easily since the Potts model partition function is a specialization of . The smallest examples of this type have 8 vertices. In Figure 3 we display two 8vertex graphs with the same state Potts model partition function and distinct state Potts model partition functions.
5.1 Families of graphs with the same homomorphism polynomial
Given the relatively large number of small graphs with the same homomorphism polynomial for and small such number for it is natural to ask if there is some which does determine all graphs and otherwise if the size of the smallest examples are strictly increasing in .
Lemma 5.1.
If and are graphs on vertices and then and are isomorphic.
Proof.
If then there exists a monomial which corresponds to an isomorphism from to a labelled copy of in the weight graph . From the identity it follows that there also exists a homomorphism from to the same labelled copy of , and since it is a surjection of the vertices it is an isomorphism. ∎
From this it follows that the rotortype construction used in [Tut98] for the Tuttepolynomial and in [AM09] for the bivariate Ising polynomial cannot be used in order to show that for every there are graphs with the same homomorphism polynomial. However we strongly believe that this is the case.
Conjecture 5.2.
For any fixed there exist nonisomorphic graphs and such that .
Problem 5.3.
Let be the smallest integer such that there exist nonisomorphic graphs and on vertices such that . Determine the rate of growth of .
The preceding lemma demonstrates that and our earlier examples show that , , and . It follows from Lemma 3.5 that is monotone but we do not know if it is strictly monotone.
Conjecture 5.4.
.
6 Colourings, the Tuttepolynomial and its generalizations.
For we can determine the number of proper vertex colourings of from , and we can count the number of proper colourings with colour classes of given sizes as well. However, if then does not always determine the chromatic polynomial of , and hence not the Tuttepolynomial either. In Figure 4 we display two graphs with the same homomorphism polynomial for but distinct chromatic polynomials. For the state Potts partitions function this can be strengthened even further, in Figure 5 we display two graphs with the same state Potts partitions function for but with distinct chromatic polynomials. If then the chromatic polynomial is determined by , since it determines the number of colourings of for , and the chromatic polynomial is a monic polynomial of degree .
Another polynomial which is contained in the Tuttepolynomial is the partition function of the state Potts model, here denoted by . This polynomial is obtained from by setting for all , when and .
Lemma 6.1.
The state Potts partition function is determined by .
In [GGN11] this polynomial was studied in detail and a number of graph families which can be determined from their Potts partition function for different values of were found. We refer to [GGN11] for more details.
In [NW99] Noble and Welsh defined the polynomial of a graph. This polynomial is a significant generalization of the Tuttepolynomial. We will state one of the equivalent definitions given in [NW99]. First, given a set edges from a graph , we let denote the subgraph obtained by deleting all edges not in from , and we let denote the set of connected components of the graph .
Definition 6.2.
where , and denotes the number of connected components in .
We note that if has vertices then is a polynomial in variables, and each monomial has total degree in the ’s. In [NW99] it was also proven that the polynomial is equivalent to the Tutte symmetric function introduced by Stanley in [Sta98]. Tightly following this Sarmiento [Sar00] proved that the polynomial, and hence the Tutte symmetric function as well, is equivalent to the so called polychromate, introduced by Brylawski [Bry81] in 1981. Brylawski also proved that the polychromate of determines the polychromate of , and hence the same is true for the polynomial and the Tutte symmetric function.
One obvious difference between these three polynomials and the ones we have discussed earlier is that the number of variables is a function of the size of the graph. Hence, for a fixed , they are typically much larger objects than . Since the chromatic polynomial is a specialization of the polynomial and does not determine the chromatic polynomial we know that cannot determine . The reverse question is far from obvious, however it turns out that for large enough the two polynomials are not equvialent
Observation 6.3.
The two graphs in Figure 6 have the same polynomial but distinct homomorphism polynomials for .
By computing the polynomial for all graphs on vertices we found that the smallest graphs with the same polynomial have 8 vertices. There are 8 nontrivial equivalence classes, all of which are pairs. The graphs in each pair also have the same homomorphism polynomial for .
Based on the last observation it is natural to ask the following question
Problem 6.4.
Does the polynomial determine ?
In [MN09] the authors introduced what they called strong versions of both the polynomial and the Tutte symmetric function and proved that both of these polynomials are equivalent to the strong polychromate, introduced by Bollobás and Riordan in [BR00]. They also showed that these polynomials determine Tutte’s universal function [Tut47], a very general polynomial with the property that if has several components then the function is the product of the functions of the components. If we let denote the strong polynomial of then, as defined in [MN09],
Definition 6.5.
An open problem from [MN09] is to find two graphs with the same polynomials but distinct strong polynomials. By extending our computation to the polynomial we found the following.
Observation 6.6.
All pairs of graphs on vertices which have the same polynomial also have the same strong polynomial.
7 Computational complexity and highlow symmetries for random graphs and treewidth
It is well known that several of the polynomials from Theorem 4.1 are hard to compute and hence the homomorphism polynomial must be at least as hard to compute. The definition of provides a straight forward algorithm for computing this polynomial in time for an vertex graph . However, as for many other computational problems, there are efficient algorithms when the input is restricted to graphs with bounded tree width.
Using the general dynamic programming methods described in [Ree03] or [SS09] it is straightforward to prove the following theorem for graphs of bounded tree width
Theorem 7.1.
For every fixed and there is an algorithm with a running time which is polynomial in for computing for vertex graphs with tree width at most .
The multiplicative constant in the runtime bound is of the form . Here theorem 3.2 has an interesting consequence.
Corollary 7.2.
If has tree width then can be computed in polynomial time.
We also note that the transfer matrix methods from [LM08] can be used to compute efficiently for so called polygraphs, and also make it possible to use the automorphism group of to speed up the computation.
The behaviour of algorithms for computing NPhard, and some polynomial, graphs properties on random graphs has been an active area of research in the last decade, with the main emphasis on the SAT problem. In the series of papers by Scott and Sorkin mentioned earlier it was shown that for random graphs from the model there is a threshold at , such that for smaller there are algorithms with polynomial expected running time for several 2CSP which in general are NPhard, and for larger the same algorithms have an exponential expected running time.
In [LLO12] it was proven that the treewidth of a random graph has a threshold
Theorem 7.3.
Let be a graph from .

If , with then with probability .

If , with then there exist a function such that with probability .
Hence the treewidth based algorithm for computing has a polynomial median running time for . In order to prove that the expected running time is polynomial as well, a concentration result for the treewidth of random graph ( which is stronger than what a simple application of e.g. Azuma’s inequality gives) is needed. In particular the following problem becomes interesting:
Problem 7.4.
Let for some and be a graph from . For which is .?
8 Further directions: directed graphs and quantum models
There is a natural generalisation of for directed multigraphs , defined by replacing the weighted graph in the definition of by a complete directed graph on vertices, with both an edge from to and one from to for each and , where the weight is now distinct from .
Our discussion of has been based on the natural connection between graph homomorphisms and graph properties related to various form of partitions of the vertex set of a graph. However, it is well known, see [HN04] for an indepth discussion, that the theory of homomorphisms of directed graphs is in many ways better behaved than that for ordinary graphs, and hence would seem to be an natural object to study.
There has been several approaches to defining an analogue of the Tutte polynomial for directed graphs as well. In [CG95] one such generalisation was given in the form of the cover polynomial of a digraph, a polynomial which has also inspired work on colouring of ordinary graphs [Ste01]. As we have already done for the Tutte polynomial and the homomorphism polynomial it would be interesting to investigate which information the cover polynomial and the directed homomorphism polynomial share.
As we have already mentioned contains the partition function of the Ising model, with an external field, as studied in [AM09]. In physics there is also a quantum version of the Ising model where there is also a so called transversal field involved, and this model has a partition function in three variables, two of which are the ones in the bivariate Ising polynomial and one which is associated with the transversal field. However for this model the partition function is not a polynomial. Nonetheless it still forms an invariant for graphs and has been studied in connection with adiabatic quantum algorithms in [VMB14]. There it was found that as an isomorphism invariant the quantum partition function is very strong, and in fact no example of two nonisomorphic graphs with the same partition function is known. Finding such a pair would of course be interesting, and it would also be interesting to consider a quantum version of as well. We refer the reader to [VMB14] for further discussion of quantum models.
References
 [AM09] Daniel Andrén and Klas Markström, The bivariate Ising polynomial of a graph, Discrete Appl. Math. 157 (2009), no. 11, 2515–2524. MR 2522961 (2011a:05094)
 [Bax89] Rodney J. Baxter, Exactly solved models in statistical mechanics, Academic Press, Inc. [Harcourt Brace Jovanovich, Publishers], London, 1989, Reprint of the 1982 original. MR 998375 (90b:82001)
 [BR00] Béla Bollobás and Oliver Riordan, Polychromatic polynomials, Discrete Math. 219 (2000), no. 13, 1–7. MR 1761705 (2001d:05054)
 [Bry81] Tom Brylawski, Intersection theory for graphs, J. Combin. Theory Ser. B 30 (1981), no. 2, 233–246. MR 615318 (82g:05036)
 [CG95] F. R. K. Chung and R. L. Graham, On the cover polynomial of a digraph, J. Combin. Theory Ser. B 65 (1995), no. 2, 273–290. MR 1358990 (96j:05050)
 [GGN11] Delia Garijo, Andrew Goodall, and Jaroslav Nešetřil, Distinguishing graphs by their left and right homomorphism profiles, European J. Combin. 32 (2011), no. 7, 1025–1053. MR 2825534 (2012h:05215)
 [God81] C. D. Godsil, Hermite polynomials and a duality relation for matching polynomials, Combinatorica 1 (1981), no. 3, 257–262. MR 637830 (83e:05015)
 [Gri06] Geoffrey Grimmett, The randomcluster model, Grundlehren der Mathematischen Wissenschaften [Fundamental Principles of Mathematical Sciences], vol. 333, SpringerVerlag, Berlin, 2006. MR 2243761 (2007m:60295)
 [HN04] Pavol Hell and Jaroslav Nešetřil, Graphs and homomorphisms, Oxford Lecture Series in Mathematics and its Applications, vol. 28, Oxford University Press, Oxford, 2004. MR 2089014 (2005k:05002)
 [LLO12] Choongbum Lee, Joonkyung Lee, and Sangil Oum, Rankwidth of random graphs, J. Graph Theory 70 (2012), no. 3, 339–347. MR 2946080
 [LM08] Per Hkan Lundow and Klas Markstrm, Exact and approximate compression of transfer matrices for graph homomorphisms, LMS Journal of Computation and Mathematics 11 (2008), 1–14.
 [MN09] Criel Merino and Steven D. Noble, The equivalence of two graph polynomials and a symmetric function, Combin. Probab. Comput. 18 (2009), no. 4, 601–615. MR 2507739 (2010g:05174)
 [NW99] S. D. Noble and D. J. A. Welsh, A weighted graph polynomial from chromatic invariants of knots, Ann. Inst. Fourier (Grenoble) 49 (1999), no. 3, 1057–1087, Symposium à la Mémoire de François Jaeger (Grenoble, 1998). MR 1703438 (2000h:05066)
 [Ree03] B. A. Reed, Algorithmic aspects of tree width, Recent advances in algorithms and combinatorics, CMS Books Math./Ouvrages Math. SMC, vol. 11, Springer, New York, 2003, pp. 85–107.
 [Sar00] Irasema Sarmiento, The polychromate and a chord diagram polynomial, Ann. Comb. 4 (2000), no. 2, 227–236. MR 1770691 (2001h:05040)
 [Sok05] Alan D. Sokal, The multivariate Tutte polynomial (alias Potts model) for graphs and matroids, Surveys in combinatorics 2005, London Math. Soc. Lecture Note Ser., vol. 327, Cambridge Univ. Press, Cambridge, 2005, pp. 173–226. MR 2187739 (2006k:05052)
 [SS03] Alexander D. Scott and Gregory B. Sorkin, Faster algorithms for MAX CUT and MAX CSP, with polynomial expected time for sparse instances, Approximation, randomization, and combinatorial optimization, Lecture Notes in Comput. Sci., vol. 2764, Springer, Berlin, 2003, pp. 382–395. MR 2080807 (2005c:68109)
 [SS06a] , An LPdesigned algorithm for constraint satisfaction, Algorithms—ESA 2006, Lecture Notes in Comput. Sci., vol. 4168, Springer, Berlin, 2006, pp. 588–599. MR 2347176 (2008f:90056)
 [SS06b] , Solving sparse random instances of Max Cut and Max 2CSP in linear expected time, Combin. Probab. Comput. 15 (2006), no. 12, 281–315. MR 2195586 (2006m:05228)
 [SS07] , Linearprogramming design and analysis of fast algorithms for Max 2CSP, Discrete Optim. 4 (2007), no. 34, 260–287. MR 2374035 (2009b:68196)
 [SS09] , Polynomial constraint satisfaction problems, graph bisection, and the Ising partition function, ACM Trans. Algorithms 5 (2009), no. 4, Art. 45, 27. MR 2571908 (2011c:68177)
 [Sta98] Richard P. Stanley, Graph colorings and related symmetric functions: ideas and applications: a description of results, interesting applications, & notable open problems, Discrete Math. 193 (1998), no. 13, 267–286, Selected papers in honor of Adriano Garsia (Taormina, 1994). MR 1661374 (2000c:05152)
 [Ste01] Einar Steingrímsson, The coloring ideal and coloring complex of a graph, J. Algebraic Combin. 14 (2001), no. 1, 73–84. MR 1856230 (2002h:13032)
 [Tut47] W. T. Tutte, A ring in graph theory, Proc. Cambridge Philos. Soc. 43 (1947), 26–40. MR 0018406 (8,284k)
 [Tut98] , Graph theory as I have known it, The Clarendon Press Oxford University Press, New York, 1998, With a foreword by U. S. R. Murty.
 [vdW41] B.L. van der Waerden, Die lange reichweite der regelmassigen atomanordnung in mischkristallen, Zeitschrift fur Physik 118 (1941), 473–.
 [VMB14] Walter Vinci, Klas Markström, Sergio Boixo, Aidan Roy, Federico M Spedalieri, Paul A Warburton, and Simone Severini, Hearing the shape of the ising model with a programmable superconductingflux annealer, Scientific reports 4 (2014).
 [Whi32] Hassler Whitney, A logical expansion in mathematics, Bull. Amer. Math. Soc. 38 (1932), 572–579.
Appendix: The computer search
Computing the homomorphism polynomial for a general graph is hard, and in practice we have no efficient general algorithm for this problem, even for small fixed . So, in order to reduce the computational burden we have performed our search in steps.
Let us assume that we have some graph invariant and we wish to find all nontrivial equivalence classes of vertex graphs for . Let us also assume that we have some sequence of easier to compute graph invariants , all of which have that property that if then . We now proceed as follows:

Set and let our collection of equivalence classes consist of a single equivalence class consisting of all graphs on vertices.

Partition each equivalence class in into equivalence classes for and let be the list of all such classes.

Delete all singleton classes from , increase by 1 and repeat from step 2 unless

Compute for all remaining graphs and partition the remaining classes in into equivalence classes for
In order to make this procedure as fast as possible we want to choose a list of graph invariant such that this with low index are very fast to compute, since they will be computed fore the largest number of graphs, and hard to compute invariants will only be included for high indices if they have a significant ability to break the remaining equivalence classes into smaller ones. Ideally we want to find achieve singleton classes as early as possible.
In our search for graphs with equal homomorphism polynomials we first used the following invariants, in this order:

The number of edges.

The degree sequence.

The pair: the number of triangles and the edgeconnectivity of .

The matching polynomial.

The pair: the independence polynomial of and the independence polynomial of the complement of .

The bivariate Ising polynomial.

The homomorphism polynomial for .
Before going on to the case for we also partitioned the equivalence classes using the number of proper 3colourings as an invariant, and before proceeding to we did the same for the equivalence classes using the number of proper 4colourings.