What is an Answer

In many branches of pure mathematics it can be surprisingly hard to recognize when a question has, in fact, been answered. A clearcut proof of a theorem or the discovery of a counterexample leaves no doubt in the reader's mind that a solution has been found. But when an "explicit solution" to a problem is given, it may happen that more work is needed to evaluate that " solution," in a particular case, than exhaustively to examine all of the possibilities directly from the original formulation of the problem. In such a situation, other things being equal, we may justifiably question whether the problem has in fact been solved. Examples of this sort can turn up anywhere, but here we will concentrate on problems in combinatorial mathematics, specifically those of the type "how manyare there?" Such enumeration problems lie at the heart of the subject, and it is important to be able to recognize solutions when they appear. The point, of course, is that sometimes the "answer" is presented as a formula that is so messy and long, and so full of factorials and sign alternations and whatnot, that we may feel that the disease was preferable to the cure. An answer to such an enumeration question may be given by means of a generating function, a recurrence relation, or by an explicit formula. Each of these is, in essence, just an algorithm for the computation of the counting sequence that is to be determined. How do we judge the usefulness of such answers? Obviously we might be able to do many things with the answer, such as to make asymptotic estimates, to discover congruence relations, to delight in its elegance, and so forth. We're going to restrict attention here to the appraisal of solutions from the point of view of how easily they allow us to calculate the number of objects in the set that is being studied. The quality of such -formulas should therefore be judged by the usual combination of esthetic and quantitative benchmarks that are used on algorithms. In particular, the quantitative criterion is the computational complexity: the amount of work required to get an answer. We suggest here that the same criterion should be applied to enumeration formulas. We will see that a corollary of this attitude is that our decision as to what constitutes an answer may be time-dependent: as faster algorithms for listing the objects become available, a proposed formula for counting the objects will have to be comparably faster to evaluate. For concreteness, suppose that for each integer n > 0 there is a set Sn that we want to count. Let f(n) = I Sn I (the cardinality of Sn), for each n. Suppose further that a certain formula has been found, say