Abstract. Complexity theory is built fundamentally on the notion of efficient reduction among computational problems. Classical reductions involve gadgets that map solution fragments of one problem to solution fragments of another in one-to-one, or possibly one-to-many, fashion. In this paper we propose a new kind of reduction that allows for gadgets with many-to-many correspondences, in which the individual correspondences among the solution fragments can no longer be identified. Their objective may be viewed as that of generating interference patterns among these solution fragments so as to conserve their sum. We show that such holographic reductions provide a method of translating a combinatorial problem to finite systems of polynomial equations with integer coefficients such that the number of solutions of the combinatorial problem can be counted in polynomial time if one of the systems has a solution over the complex numbers. We derive polynomial time algorithms in this way for a number of problems for which only exponential time algorithms were known before. General questions about complexity classes can also be formulated. If the method is applied to a #P-complete problem, then polynomial systems can be obtained, the solvability of which would imply P #P = NC2.Key words. computational complexity, enumeration AMS subject classifications. 05A15, 68Q10, 68Q15, 68Q17, 68R10, 68W01DOI. 10.1137/0706825751. Introduction. Efficient reduction is perhaps the most fundamental notion on which the theory of computational complexity is built. The purpose of this paper is to introduce a new notion of efficient reduction, called a holographic reduction. In a classical reduction an instance of one problem is mapped to an instance of another by replacing its parts by certain gadgets. Solution fragments of the first problem will correspond in the gadgets to solution fragments of the second problem. For example, when mapping a Boolean satisfiability problem to a graph theory problem, each way of satisfying a part of the formula will correspond to a way of realizing a solution to the graph theory problem in the gadget. In classical reductions the correspondence between the solution fragments of the two problems is essentially oneto-one, or possibly many-to-one or one-to-many. In a holographic reduction the sum of the solution fragments of one problem maps to the sum of the solution fragments of the other problem for any one gadget and does so in such a way that the sum of all the overall solutions of the one will map to the sum of all the overall solutions of the other. The gadgets therefore map solution fragments many-to-many. The main innovation this allows is that it permits reductions in which correspondences between the solution fragments of the two problems need no longer be identifiable at all. Their effect can be viewed as that of producing interference patterns among the solution fragments, and they are called holographic gadgets for that reason.