## Mid-Term Report Summary - MCC (Mapping the Complexity of Counting)

Advances in algorithms and programming rely on a deep knowledge of the intrinsic nature of computation, and in particular on an understanding of which computational problems are feasible and which are inherently infeasible and what features of these problems cause infeasibility. The MCC project is in the process of contributing this knowledge in the context of counting problems which arise in practical applications from fields such as statistics, statistical physics, information theory, coding, and machine learning. In such a problem, a numerical quantity (a weighted sum) is computed, either exactly or approximately. Examples include computing (or estimating) an integral, a probability, or the expectation of a random variable. The technological achievements of the project are best appreciated in the context of the objectives, which are: (1) To map out the landscape of computational counting problems (exact and approximate), determining which problems are tractable, and which are intractable (quantifying the extent of tractability), and (2) To develop complexity characterisations elucidating the features that make counting problems tractable or intractable (so the goal is not only to discover which problems are tractable, but also to discover a characterisation which tells us why). Substantial progress has been made during the first half of the project. Our results so far have been published in 19 papers in competitive refereed journals and 13 papers in competitive peer-reviewed conferences. The papers (including manuscripts) are available at the project website http://www.cs.ox.ac.uk/people/leslieann.goldberg/mcc.html. The results of the project can be viewed from various perspectives.

• We have studied counting problems from a wide spectrum of application domains, including graph homomorphism counting problems, constraint satisfaction counting problems (#CSPs), matrix partition counting problems, and partition-function computations, which arise in statistical physics—partition functions give quantitative information about the interaction of local spins at vertices of graphs. In all of these domains, we have obtained classifications quantifying the boundary between feasible and infeasible. These classifications are important because so many counting problems can be modelled using these formalisms.

• Counting problems arise in various forms. Different aspects include exact counting, approximate counting, and counting modulo some prime number. The project has achieved results about the complexity of all of these.

• In the study of approximate counting, one of the most important problems is #BIS, the problem of counting independent sets in bipartite graphs. This problem is equivalent to a whole host of counting problems and is believed to have intermediate approximation complexity. Mainly of our results include connections to this important problem. For example, we have shown that *every* non-trivial graph homomorphism counting problem is #BIS-hard. This is an important achievement because many counting problems can be cast as homomorphism problems, so this shows that none of these can be easier than #BIS. The problem has been open for over a decade.

• Many common computational counting problems involve the computation of probabilities. A recent important example is the approximation of the fixation probability which is the probability of infection in a biologically-motivated process known as the Moran Process. The project has achieved important new results concerning approximation of fixation probabilities, and showing for the first time that there are infinite families of graphs on which the process is strongly amplifying in the sense that the fixation probability tends to 1.

• In partition-function problems, an important aspect is the connection between a phase transition in the complexity of approximation and the uniqueness/non-uniqueness phase transition from statistical physics. The project has furthered our understanding of this connection (and where it fails), particularly in settings with multi-body interactions and/or multiple spins. We have also quantified the connection between the uniqueness phase transition and #BIS-hardness for bipartite partition-function problems.

• A natural extension to the partition-function computation problem is to consider the problem in the presence of external fields. This models the situation where, in addition to having spins interacting locally, there are external forces favouring particular spins at particular vertices. We have achieved a complete characterisation of the complexity of approximating partition functions of q-state spin systems with external fields, enabling easy determination of whether particular spin systems are amenable for approximation. We also have classification results where similar extensions are applied to graph homomorphism counting problems and #CSPs.

• We have studied counting problems from a wide spectrum of application domains, including graph homomorphism counting problems, constraint satisfaction counting problems (#CSPs), matrix partition counting problems, and partition-function computations, which arise in statistical physics—partition functions give quantitative information about the interaction of local spins at vertices of graphs. In all of these domains, we have obtained classifications quantifying the boundary between feasible and infeasible. These classifications are important because so many counting problems can be modelled using these formalisms.

• Counting problems arise in various forms. Different aspects include exact counting, approximate counting, and counting modulo some prime number. The project has achieved results about the complexity of all of these.

• In the study of approximate counting, one of the most important problems is #BIS, the problem of counting independent sets in bipartite graphs. This problem is equivalent to a whole host of counting problems and is believed to have intermediate approximation complexity. Mainly of our results include connections to this important problem. For example, we have shown that *every* non-trivial graph homomorphism counting problem is #BIS-hard. This is an important achievement because many counting problems can be cast as homomorphism problems, so this shows that none of these can be easier than #BIS. The problem has been open for over a decade.

• Many common computational counting problems involve the computation of probabilities. A recent important example is the approximation of the fixation probability which is the probability of infection in a biologically-motivated process known as the Moran Process. The project has achieved important new results concerning approximation of fixation probabilities, and showing for the first time that there are infinite families of graphs on which the process is strongly amplifying in the sense that the fixation probability tends to 1.

• In partition-function problems, an important aspect is the connection between a phase transition in the complexity of approximation and the uniqueness/non-uniqueness phase transition from statistical physics. The project has furthered our understanding of this connection (and where it fails), particularly in settings with multi-body interactions and/or multiple spins. We have also quantified the connection between the uniqueness phase transition and #BIS-hardness for bipartite partition-function problems.

• A natural extension to the partition-function computation problem is to consider the problem in the presence of external fields. This models the situation where, in addition to having spins interacting locally, there are external forces favouring particular spins at particular vertices. We have achieved a complete characterisation of the complexity of approximating partition functions of q-state spin systems with external fields, enabling easy determination of whether particular spin systems are amenable for approximation. We also have classification results where similar extensions are applied to graph homomorphism counting problems and #CSPs.