Single-Step Quantum Search Using Problem Structure

Tad Hogg Xerox Palo Alto Research Center 3333 Coyote Hill Road, Palo Alto, CA 94304 hogg@parc.xerox.com

June 27, 1999

Abstract

The structure of satisfiability problems is used to improve search algorithms for quantum computers and reduce their required coherence times. The asymptotic average behavior of the these algorithms is determined exactly, and used to identify the best algorithm from among a class of methods that use only a single coherent evaluation of problem properties. The resulting algorithm improves on previous quantum algorithms for most random k-SAT problems, but remains exponential for hard problem instances. Compared to good classical methods, the algorithm performs better, on average, for weakly and highly constrained problems but worse for hard cases, indicating the need to include additional problem structure in quantum algorithms.

1 Introduction

Quantum computers [3, 4, 14, 15, 16, 17, 30, 34] offer the possibility of faster combinatorial search by operating simultaneously on all search states. For instance, quantum computers can rapidly factor integers [38], a problem thought to be intractable for classical machines. A number of algorithms have been proposed for combinatorial search problems [6, 7, 8, 9, 21, 20, 23, 40]. In particular, without making use of problem structure, quantum computers result in a square root improvment in performance. This unstructured search is the quantum equivalent of the classical generate-and-test procedure and is the best improvement possible in this case. Further improvement in performance requires using problem structure in the search, just as with classical heuristics.

A major challenge in realizing the potential of quantum computers is maintaining coherence over many computational steps [29, 41, 22, 31]. While this difficulty seems unlikely to be a fundamental limitation [5, 37, 28] and small quantum computations have been implemented [12, 11], the technical challenge of maintaining coherence can be reduced by developing quantum algorithms that minimize the required coherence time.

Thus an important open question is the extent to which problem structure can not only improve the performance of quantum search but also reduce the number of steps, and hence the required coherence time. As an extreme case, we consider the performance of single-step quantum search, i.e., algorithms that make use of only a single evaluation of structure associated with a problem. Single-step search is very effective for highly constrained problems [24], outperforming both unstructured quantum search and classical heuristics in these cases. By requiring only one step, it also needs less coherence time than the exponentially many steps required by the unstructured algorithm, and hence should be easier to implement. Can the technique used for highly constrained problems be extended to the more challenging case of hard search problems with an intermediate number of constraints [10, 25]? Conversely, to what extent does the restriction to a single step limit the extent to which the capabilities of quantum computers can be used?

Addressing these questions requires determining the asymptotic behavior of the algorithm. Algorithms that use problem structure, such as classical heuristics, are often difficult to analyze theoretically due to the complicated dependencies introduced by the characteristics of the particular problem instance. Thus one is often forced to use empirical evaluation, which is a major limitation for evaluating quantum algorithms since classical simulations of quantum algorithms have an exponential slowdown. By limiting the use of such dependencies, a single-step search algorithm can be simpler to analyze than multistep quantum searches.

This paper, demonstrates the potential of this approach for algorithms that use the number of conflicts in each search state. Furthermore, we show how to evaluate the asymptotic average scaling behavior of the algorithm directly, rather than relying on empirical evaluation. This evaluation is used to optimize the algorithm, and also demonstrates a general technique for studying the average behavior of quantum search algorithms.

In the remainder of this paper, we first summarize the satisfiability search problem and then describe a class of one-step quantum algorithms for this problem. This class includes both the previous unstructured and highly constrained methods as special cases. In §4, the average behavior of these algorithms is determined. This result is then used to identify the best performing algorithms for problems with differing degrees of constraint in the following two sections. Finally we discuss the precision requirements on the parameters used in the algorithms and some additional properties of the search behavior.

2 Satisfiability

One well-studied compbinatorial search problem [19] is satisfiability (SAT), which consists of a logical propositional formula in n variables V_{1}, …, V_{n} and the requirement to find a value (true or false) for each variable that makes the formula true. This problem has N = 2^{n} assignments. For k-SAT, the formula consists of a conjunction of clauses and each clause is a disjunction of k variables, any of which may be negated. For k ≥ 3 these problems are NP-complete. An example of such a clause for k = 3, with the third variable negated, is V_{1} OR V_{2} OR (NOT V_{3}), which is false for exactly one assignment for these variables: {V_{1} = false, V_{2} = false, V_{3} = true}. A clause with k variables is false for exactly one assignment to those variables, and true for the other 2^{k} − 1 choices. Since the formula is a conjunction of clauses, a solution must satisfy every clause. We say an assignment conflicts with a particular clause when the values the assignment gives to the variables in the clause make the clause false. For example, in a four variable problem, the assignment

{V_{1} = false, V_{2} = false, V_{3} = true, V_{4} = true}

conflicts with the k = 3 clause given above, while

{V_{1} = false, V_{2} = false, V_{3} = false, V_{4} = true}

does not. Thus each clause is a constraint that adds one conflict to all assignments that conflict with it. The number of distinct clauses m is then the number of constraints in the problem.

The assignments for SAT can also be viewed as bit-strings with the correspondence that the i^{th} bit is 0 or 1 according to whether V_{i} is assigned the value false or true, respectively. In turn, these bit-strings are the binary representation of integers, ranging from 0 to 2^{n} − 1. For definiteness, we arbitrarily order the bits so the values of V_{1} and V_{n} correspond, respectively, to the least and most significant bits of the integer. For example, the assignment

{V_{1} = false, V_{2} = false, V_{3} = true, V_{4} = false}

corresponds to the integer whose binary representation is 0100, i.e., the number 4.

For bit-strings r and s, let |s| be the number of 1-bits in s and r ∧ s the bitwise AND operation on r and s. Thus |r ∧ s| counts the number of 1-bits both assignments have in common. We also use d(r, s) as the Hamming distance between r and s, i.e., the number of positions at which they have different values. These quantities are related by

d(r, s) = |r| + |s| − 2|r ∧ s|  (1)

Let c(s) be the number of conflicts for assignment s in a given SAT problem.

An example 1-SAT problem with n = 2 is the propositional formula (NOT V_{1}) AND (NOT V_{2}). This problem has a unique solution: {V_{1} = false, V_{2} = false}, an assignment with the bit representation 00. The remaining assignments for this problem have bit representations 01, 10, and 11.

Theoretically, search algorithms are often evaluated for the worst possible case. However, in practice, search problems are often found to be considerably easier than suggested by these worst case analyses [25]. This observation leads to examining the typical behavior of search algorithms with respect to a specified ensemble of problems, i.e., a class of problems and a probability for each to occur. A commonly studied ensemble is random k-SAT, specified by the number of variables n, the size of the clauses k and the number of distinct^{1} clauses m. A problem instance is created by randomly selecting m distinct clauses from the set of all possible clauses [32]. When n is large, the typical behavior of random k-SAT is determined by μ = m/n, the ratio of clauses to variables. In particular, for each k there is a threshold value μ_{crit} on μ below which most random k-SAT problems are soluble and above which most have no solutions [13, 35]. For k = 3, this value is approximately μ_{crit} = 4.2.

The quantum searches considered here are incomplete methods, i.e., they can find a solution if one exists but can never guarantee no solution exists. For studying such algorithms, the ensembles would ideally contain only instances with a solution. For example, we could consider the ensemble of random soluble k-SAT, in which each instance with at least one solution is equally likely to appear. Unfortunately, this ensemble does not have a simple expression for the number of problems as required for the analytic performance evaluation given below. Instead, for μ < μ_{crit}, most random problems indeed have a solution so random k-SAT is useful for studying incomplete search methods for underconstrained problems.

Randomly selected overconstrained problems usually have no solutions so random SAT is not a useful ensemble when μ > μ_{crit}. An alternative with simple analytic properties is the ensemble with a prespecified solution. In this case, a particular assignment is selected to be a solution. Then the m clauses are selected from among those that do not conflict with the prespecified solution. Compared to random selection among soluble problems, using a prespecified solution is more likely to pick problems with many solutions, resulting in somewhat easier search problems, on average.

Each clause in a k-SAT formula conflicts with exactly one of the 2^{k} possible assignments for the variables that appear in the clause. Thus the average number of conflicts in an assignment is c_{avg} = m/2^{k}. While this average is the same for all SAT problems with given m and k, the variance in the number of conflicts varies from problem to problem. For the random ensemble, the average value of the variance is c_{avg}(1 − 2^{−k}). Thus when m ≫ 1, the relative deviation decreases as O(1/\sqrt{m}) and hence most assignments have a number of conflicts very close to the average.

1This ensemble differs slightly from other studies where the clauses are not required to be distinct.

3 Quantum Search Algorithms

Quantum computers use physical devices whose full quantum state can be controlled. For example [16], an atom in its ground state could represent a bit set to 0, and an excited state for 1. The atom can be switched between these states and also be placed in a uniquely quantum mechanical superposition of these values, which can be

denoted as a vector ( \begin{matrix}ψ_{0} \\ ψ_{1} \end{matrix} ), with a component (called an amplitude) for each of the

corresponding classical states for the system. These amplitudes are complex numbers.

A quantum machine with n quantum bits exists in a superposition of the 2^{n} classical states for n bits. The amplitudes have a physical interpretation: when the computer’s state is measured, the superposition randomly changes to one of the classical states with |ψ_{s}|^{2} being the probability to obtain the state s. Thus amplitudes satisfy the normalization condition ∑_{s} |ψ_{s}|^{2} = 1. This measurement operation is used to obtain definite results from a quantum computation.

Quantum algorithms use operations that rapidly manipulate the amplitudes in a superposition. Because quantum mechanics is linear and the normalization condition must always be satisfied, these operations are limited to unitary linear operators. That is, a state vector ψ can only change to a new vector ψ′ related to the original one by a unitary transformation, i.e., ψ′ = Uψ where U is a unitary matrix^{2} of dimension 2^{n} × 2^{n}. In spite of the exponential size of the matrix, in many cases the operation can be performed in a time that grows only as a polynomial in n by quantum computers [6, 27]. Importantly, the quantum computer does not explicitly form, or store, the matrix U. Rather it performs a series of elementary operations whose net effect is to produce the new state vector ψ′. The components of the new vector are not directly accessible: rather they determine the probabilities of obtaining various results when the state is measured.

Search algorithms for SAT problems can make use of readily computed properties of individual assignments, e.g., a test of whether a given assignment is a solution. With quantum computers, these properties can be evaluated simutaneously for all assignments. In this paper we focus on algorithms that make use of this simutaneous evaluation just once.

3.1 Single-Step Search

Single-step methods could be implemented in a variety of ways. One simple approach starts with an equal superposition of all the assignments, adjusts the phases based on the number of conflicts in each of the assignments, and then mixes the amplitudes from different assignments. This algorithm requires only a single testing of the assignments, corresponding to a single classical search step.

2A complex matrix U is unitary when U^{†}U = I, where U^{†} is the transpose of U with all elements changed to their complex conjugates. Examples include permutations, rotations and multiplication by phases (complex numbers whose magnitude is one).

For a k-SAT problem with n variables and m clauses, the algorithm takes the following form. The initial state has amplitude ψ_{s} = 2^{−n/2} for each of the 2^{n} assignments s, and the final state vector is ϕ = UP ψ where the matrices P and U are defined as follows. The matrix P is diagonal with P_{ss} = p_{c(s)} depending on the number of conflicts c in the assignment s, ranging from 0 to m.

The mixing matrix is defined in terms of two simpler operations: U = W T W. The Walsh transform W has entries

W_{rs} = 2^{−n/2}(−1)^{|r∧s|}  (2)

for assignments r and s and can be implemented efficiently [6, 21]. The matrix T is diagonal with elements T_{rr} = t_{|r|} depending only on the number of 1-bits in each assignment, ranging from 0 to n. These definitions for W and T lead to a mixing matrix U whose elements U_{rs} = u_{d(r,s)} depend only on the Hamming distance between the assignments r and s [24], with

u_{d} = 2^{−n} ∑_{hz}(−1)^{z}\binom{d}{z}\binom{n − d}{h − z}t_{h}  (3)

Unlike previous algorithms, where the phase choices are restricted to ±1 or powers of i, this algorithm potentially uses a different phase choice for each number of conflicts and each number of 1-bits in an assignment. Because the number of conflicts in a given assignment is efficiently computable for SAT problems, these phase choices can be efficiently implemented [26].

This procedure defines a class of algorithms. A particular choice of the phases p_{c} and t_{h} is required to complete the algorithm’s specification. For example, the choices p_{0} = 1, t_{0} = 1 and the remaining phases set to −1 gives a single step of the unstructured search algorithm [21]. Similarly, p_{c} = i^{c} and t_{h} = i^{h} gives an algorithm appropriate for maximally constrained 1-SAT problems [24].

3.2 Selecting Phase Values

To motivate the choice of phases appropriate for large k-SAT problems, note that the number of assignments with h 1-bits is \binom{n}{h}. So for large n, most states have h close to n/2. Similarly, the number of assignments at Hamming distance d from a given solution is \binom{n}{d}, which is also concentrated near d = n/2. Because the algorithm starts with an equal amplitude in all states, achieving significant amplitude in a given solution with the mixing matrix U requires significant contribution from the vast majority of states whose distance from that solution, d, is close to n/2. Thus for large n, we can expect the behavior of the algorithm to be dominated by the behavior of u_{d} near d = n/2. In turn, this leads to a focus on the behavior of the phases t_{h} for h near n/2.

Similarly, for the phases p_{c} based on the number of conflicts in the states, provided the number of clauses is large, i.e., m ≫ 1, most assignments will have nearly the average number of conflicts c_{avg} = m/2^{k}. Thus the behavior of the algorithm will be dominated by the phase choices near this average value.

Asymptotically, as n increases we can expect the behavior of the phases near the average values will be the only important choices influencing the algorithm’s behavior. A constant value for the phases just gives an overall phase factor for the resulting amplitude, which has no effect on the probability to find a solution but can be chosen to slightly simplify the analysis. Thus we are led to consider a linear variation in the phase values. In this case, the phase choices are described by two constants ρ and τ so

p_{c} = e^{iπρ(c−c_{avg})}  (4)

and

t_{h} = e^{iπτ(h−n/2)}  (5)

Because c and h are integers, it is sufficient to consider values for ρ and τ in the range −1 to 1. Furthermore, changing the sign of both ρ and τ simply changes the resulting amplitude to its complex conjugate. Thus we can further restrict consideration to τ in the range 0 to 1.

From Eq. (3), this choice for t_{h} and the binomial theorem give

u_{d} = cos^{n} (\frac{πτ}{2} ) tan^{d} (\frac{πτ}{2} ) (−i)^{d}  (6)

For example, when τ = 1/2, u_{d} = 2^{−n/2}(−i)^{d} as used for solving 1-SAT problems [24]. When 1/2 < τ < 1, the magnitude of u_{d} increases with d, leading to relatively little connection between solutions and states at distances less than n/2 from them. For k-SAT problems, states with relatively few conflicts tend to be clustered. So we can expect it will be advantageous to emphasize the mixing at distances less than n/2 by selecting τ < 1/2. As shown below, the best values for τ do indeed satisfy this criterion.

Completing the algorithm requires particular choices for ρ and τ. The asymptotic analysis given below shows how these choices can optimize the performance based on the values of k and m/n.

4 Analysis for Random k-SAT

After completing the algorithm, the amplitude in assignment r is

ϕ_{r} = ∑_{s} U_{rs}P_{s} \frac{1}{2^{n/2}} = \frac{1}{2^{n/2}} ∑_{s} u_{d(r,s)} ∑_{c} p_{c}χ(s, c)  (7)

where χ(s, c) is 1 if the assignment s has c conflicts, and otherwise χ(s, c) = 0. The probability to find a solution when this state is measured is

P_{soln} = ∑_{{r|r is a solution}} |ϕ_{r}|^{2} = ∑_{r} |ϕ_{r}|^{2}χ(r, 0)  (8)

When the phase choices are particularly simple, as with the unstructured search algorithm [21], or the problem has a simple relation between Hamming distance from a solution and number of conflicts, as in 1-SAT problems [24], this expression for P_{soln} can be evaluated to give a simple analytic result. In more general cases, the solution probability can only be evaluated with a classical simulation, limiting the study of more complex algorithms or problem structures to relatively small sizes. A third approach to evaluating P_{soln} is to average over an ensemble of problems. This approach is developed in the remainder of this section and shows how the structure of search problem ensembles can be used to analyze the asymptotic behavior of the algorithm, and hence used to select the best phase values to use.

4.1 Average Behavior

Averaging over a simple ensemble of problems reduces the evaluation of the algorithm’s behavior to that of counting the likelihood of various types of problems in the ensemble. Using Eq. (7) and (8), the average probability of finding a solution is

⟨P_{soln}⟩ = \frac{1}{2^{n}} ∑_{r} ∑_{ss′} u_{d(r,s)}u_{d(r,s′)}^{∗} ∑_{cc′} p_{c}p_{c′}^{∗} ⟨χ(s, c)χ(s′, c′)χ(r, 0)⟩  (9)

The expected value ⟨χ(s, c)χ(s′, c′)χ(r, 0)⟩ is just the fraction of problems for which r is a solution and s and s′ have, respectively, c and c′ conflicts. To evaluate this sum, let a be the number of conflicts s and s′ have in common, and let b = c − a and b′ = c′ − a be their respective numbers of distinct conflicts. With Eq. (4), the inner sum over c and c′ in Eq. (9) becomes

∑_{bb′} e^{iπρ(b−b′)} ∑_{a} ⟨χ(s, b + a)χ(s′, b′ + a)χ(r, 0)⟩  (10)

The sum over a just gives the fraction of problems N_{problems}(b, b′)/N_{problems} for which r is a solution and s and s′ have, respectively, b and b′ unique conflicts. Here N_{problems} is the number of problems in the ensemble.

This expectation value is readily determined for the ensemble of random k-SAT with m clauses which has M = \binom{n}{k}2^{k} possible clauses to select from and

N_{problems} = \binom{M}{m}  (11)

possible problems, each of which is equally likely to be selected. N_{problems}(b, b′) is the number of ways m clauses can be selected from the M available to satisfy the conditions on r, s and s′.

The possible clause selection is illustrated in Fig. 1. For given assignments r, s and s′, let N_{s} and N_{s′} be the number of clauses that conflict only with s and s′,

Figure 1: Clause selection. The figure shows how the M possible clauses are grouped. The dark gray region represents clauses that conflict with r and so cannot be selected. The white regions represent clauses that conflict only with s or s′. The selected clauses must include b and b′ conflicting only with s and s′, respectively. The remaining m−b−b′ clauses must be selected from the light gray region: conflicting with both s and s′ or with neither.

respectively, and N_{other} the number that do not conflict with r and conflict with both s and s′ or neither (the light gray region in Fig. 1). Then we have

N_{problems}(b, b′) = \binom{N_{s}}{b}\binom{N_{s′}}{b′}\binom{N_{other}}{m − b − b′}  (12)

as the number of problems for which s and s′ have, respectively, b and b′ unique conflicts, and r is a solution.

^{n} w x y  z rs s′

Figure 2: Grouping of variables based on assigned values in r, s and s′, each shown as a horizontal box schematically indicating values assigned to each of the n variables. In each assignment, the value given in r to a variable is shown as white, while black indicates the opposite value. In this diagram, variables are grouped according to the differences in values they are given in the three assignments. For instance, the first group, consisting of w variables, has those variables assigned the same value in all three assignments.

To determine values for N_{s}, N_{s′} and N_{other}, consider the n variables in four mutually exclusive groups based on the values they are assigned in r, s and s′, as illustrated in Fig. 2:

1. the w variables with the same values in all three assignments 2. the x variables with the same value in r and s, but opposite value in s′

3. the y variables with the same value in s and s′, opposite that of r

4. the z variables with the same value in r and s′, but opposite value in s

Assignment r conflicts with \binom{n}{k} clauses leaving M −\binom{n}{k} clauses available for selection. The principle of inclusion and exclusion [33] gives the number of available clauses that conflict with

• both s and s′ is the number that conflict with both s and s′ minus the number of those that also conflict with r:

N_{both} = \binom{w + y}{k} − \binom{w}{k}  (13a)

• s only is

N_{s} = \binom{n}{k} − \binom{w + x}{k} − N_{both}  (13b)

• s′ only is

N_{s′} = \binom{n}{k} − \binom{w + z}{k} − N_{both}  (13c)

• both s and s′ or with neither is

N_{other} = \binom{n}{k}(2^{k} − 1) − N_{s} − N_{s′}  (13d)

Through the expressions of Eq. (13), N_{problems}(b, b′) given in Eq. (12) depends on w, x, y and z, but otherwise is independent of the choice of assignments r, s and s′. Furthermore, n = w + x + y + z, d(r, s) = y + z and d(r, s′) = x + y. Thus, in Eq. (9) the sum over the assignments s and s′ can be rewritten as a sum over x, y and z (with w = n − x − y − z) times the number of ways to pick s and s′ with assigned values matching each other and those of r as specified by the values of w, x, y and z. This latter quantity is just the multinomial coefficient \binom{n}{w,x,y,z}. Finally, because the quantities in the sum depend on w, x, y and z but not the specific choice of the assignment r, the sum 2^{−n} ∑_{r} appearing in Eq. (9) just gives one. Thus for the ensemble of random k-SAT, Eq. (9) becomes

⟨P_{soln}⟩ = ∑_{xyz} \binom{n}{w, x, y, z}u_{y+z}u_{x+y}^{∗} ∑_{bb′} e^{iπρ(b−b′)} \frac{N_{problems}(b, b′)}{N_{problems}}  (14)

4.2 Asymptotic Behavior

For the random k-SAT ensemble, Eq. (14) gives the exact value for ⟨P_{soln}⟩. Its asymptotic behavior as the number of variables and clauses increases can be determined using Stirling’s formula for the binomial coefficients [1] and then expressing the sum as an integral that can be readily analyzed.

The discussion in §3.2 indicates the main contribution to the sums of Eq. (14) is from assignments with close to the average number of conflicts, c_{avg} = m/2^{k}. That is, terms for which b and b′ are O(m). We thus use the scaled values b̂ = b/m and b̂′ = b′/m to simplify the analysis. Similarly the main contribution in the outer sum comes from values of d(r, s) = y+z and d(r, s′) = x+y close to n/2. This suggests the scaling ŵ = w/n,...,ẑ = z/n. As we will see below, these are indeed the appropriate scaling behaviors for the dominant contributions to the sum.

4.2.1 Sum over Conflicts

With w, x, y, z scaling as O(n), the number of possible clauses M and each value in Eq. (13) scale as \binom{n}{k} = O(n^{k}). This value is much larger than the actual number of clauses m that appear in hard problems, for which m = O(n). We consider the scaling for m of 1 ≪ m ≪ n^{k}. A convenient scaling for the numbers of available clauses is N̂_{...} = N_{...}/M so that

N̂_{both} = \frac{(ŵ + ŷ)^{k} − ŵ^{k}}{2^{k}}  (15)
N̂_{s} = \frac{1 − (ŵ + x̂)^{k}}{2^{k}} − N̂_{both}
N̂_{s′} = \frac{1 − (ŵ + ẑ)^{k}}{2^{k}} − N̂_{both}
N̂_{other} = 1 − 2^{−k} − N̂_{s} − N̂_{s′}

with corrections of order 1/n.

When R = O(n^{k}) and S = O(m) ≪ \sqrt{R}, \binom{R}{S} scales as e^{S+S log(R/S)}/\sqrt{2πS}. Thus N_{problems}(b, b′)/N_{problems} scales as exp(mX)m^{−1}Y where

X = b̂ log \frac{N̂_{s}}{b̂} + b̂′ log \frac{N̂_{s′}}{b̂′} + (1 − b̂ − b̂′) log \frac{N̂_{other}}{1 − b̂ − b̂′}  (16)

and

Y = \frac{1}{2π\sqrt{b̂b̂′(1 − b̂ − b̂′)}}  (17)

For the inner sum of Eq. (14), this quantity is multiplied by exp(iπmρ(b̂−b̂′)) and summed over b and b′. When m is large, this sum can be approximated by an integral over the scaled variables b̂ and b̂′. This change to using scaled variables introduces a power of m for each variable, so the sum is asymptotic to

m ∫ db̂ db̂′ Y exp(m(X + iπρ(b̂ − b̂′)))  (18)

The asymptotic behavior of this integral as m → ∞ is readily evaluated by the method of steepest descents [2]. This involves considering complex values for the integration variables and noting that the value of the integral is dominated by its behavior around a stationary point, i.e., values for b̂ and b̂′ for which X + iπρ(b̂ − b̂′) has zero derivatives with respect to b̂ and b̂′. Specifically, the integral is asymptotic to the value of the integrand at the stationary point multiplied by 2πm^{−1}/\sqrt{− det D} where D is the matrix of 2nd derivatives of X +iπρ(b̂−b̂′) evaluated at the stationary point, and det D is its determinant. Evaluating these derivatives then shows the inner sum is asymptotic to exp(mI) with

I = log (e^{iπρ}N̂_{s} + e^{−iπρ}N̂_{s′} + N̂_{other})  (19)

which depends on ŵ, …, ẑ through Eq. (15).

As presented above, the expansion of the binomials involved in this sum required assuming m ≪ \sqrt{n^{k}}. When m is larger than this, some of the corrections to the expansion no longer go to zero as m increases. However, if ρ is small, specifically of order n/m, these additional corrections do not change the final asymptotic result. As described below, this behavior of ρ is the appropriate choice for m ≫ n so we use this result over the full set of scaling behaviors for m.

4.2.2 Sum Over Variable Groupings

For the remaining sum in Eq. (14), over x, y and z, the multinomial scales as

\binom{n}{w, x, y, z} ∼ exp(nH)n^{−3/2}\sqrt{\frac{1}{(2π)^{3}ŵx̂ŷẑ}}  (20)

with

H = −ŵ log ŵ − … − ẑlog ẑ  (21)

and ŵ = 1 − x̂ − ŷ − ẑ.

The u_{y+z}u_{x+y}^{∗} factors equal exp(nU) with

U = 2β_{C} + β(x̂ + 2ŷ + ẑ) + iπ(x̂ − ẑ)/2  (22)

where, from Eq. (6),

β_{C} = log(cos(πτ/2))  (23)
β = log(tan(πτ/2))

Combining these values with the result from the inner sum again gives a sum that can be approximated by an integral. After changing to scaled variables this becomes

⟨P_{soln}⟩ ∼ n^{3/2} ∫ dx̂ dŷdẑ\sqrt{\frac{1}{(2π)^{3}ŵx̂ŷẑ}} exp(n(H + U) + mI)  (24)

with ŵ = 1−x̂−ŷ−ẑ. The method of steepest descents applies to this integral. Thus, its asymptotic behavior is determined by the stationary point, namely the values of x̂, ŷ and ẑ for which the derivatives of n(H + U) + mI with respect to these three variables are zero. Let Δ be the corresponding 3 × 3 matrix of 2nd derivatives and A the value of −(H + U + Im/n), both evaluated at this point. The asymptotic behavior is then

⟨P_{soln}⟩ ∼ \sqrt{\frac{−1}{ŵx̂ŷẑdet Δ}} exp(−nA)  (25)

evaluated at the stationary point. These quantitites depend on the parameters k, μ = m/n, ρ and τ.

Because of the powers of k introduced with the numbers of available clauses in Eq. (15), the stationary point has no simple closed form. However, it can be readily evaluated numerically. This evaluation can be used to select values for ρ and τ to minimize the decay rate A. In this way the asymptotic analysis based on the ensemble average can be used to optimize the search algorithm. In the following sections we describe the resulting behavior of these optimal choices for problems with various scalings of the number of clauses m.

5 Solving Hard Problems

For random k-SAT, the hardest problem instances are concentrated at a threshold value of μ = m/n depending on k. For 3-SAT, this threshold is at μ = 4.2 [13]. Thus we examine the behavior of the single step algorithm when μ is constant. In this case, the minimum decay rate A is shown in Fig. 3. The corresponding best choices for ρ and τ are shown in Fig. 4. As one caveat, these values were obtained by numerical minimization of A so could be local minima. If so, other choices for ρ and τ would give even better performance than the values reported here.

For comparison, Fig. 3 also shows the scaling of random selection, ⟨S⟩ /2^{n}, where S is the number of solutions. The expected number of solutions, and its exponential scaling, is readily computed for random k-SAT [42]. The unstructured search requires multiple steps, with a cost on the order of \sqrt{S/2^{n}} for a problem with S solutions. As an approximate indication of the average cost for a problem ensemble in Fig. 3, we use \sqrt{⟨S/2^{n}⟩} instead of the exact value ⟨\sqrt{S/2^{n}}⟩ which cannot be analytically computed.

An important observation from these results is even the best use of problem structure based only on the number of conflicts cannot remove the exponential search cost

Figure 3: Smallest exponential decay rate A for ⟨P_{soln}⟩ as a function of μ = m/n for random 3-SAT. For comparison, the gray and dashed curves show the scaling for random selection and, approximately, for unstructured search.

Figure 4: Optimal choices of τ (black) and ρ (gray) as a function of μ = m/n. Solid curves are for the random 3-SAT ensemble and the dashed curves are for the ensemble with a prespecified solution.

with a single step algorithm of the type described here. Thus for problems with m = O(n), any possibility for further improvements in search performance requires more sophisticated algorithms, such as using multiple steps or incorporating additional problem structure. For example, using neighborhood information is crucial for the performance of classical heuristics. As one comparison, the cost of a classical heuristic method is empirically observed [13] to scale as 2^{n/19.5} for random 3-SAT problems near μ = 4.2, corresponding to a value of A equal to log(2)/19.5 = 0.036. This scaling is better than the single-step quantum algorithm.

Table 1: Best parameter values and scaling behavior for single-step search of 3-SAT problems for random and prespecified solution ensembles.

random  prespecified
μ τ ρ A τ ρ A
1 0.238 0.348 0.027 0.239 0.344 0.026
2 0.260 0.291 0.094 0.262 0.286 0.088
3 0.275 0.249 0.181 0.278 0.242 0.162
4 0.286 0.218 0.280 0.293 0.211 0.231
5 0.295 0.195 0.386 0.304 0.188 0.281
6 0.303 0.176 0.497 0.311 0.172 0.309

A second observation from Fig. 3 is, for μ less than about 3.5, the optimal choices of ρ and τ give exponentially better performance, on average, than the unstructured search algorithm, which also requires multiple steps. Thus this analysis demonstrates how the structure of simple search ensembles can be exploited to improve quantum search performance and simultaneously reduce the required coherence time. Moreover, by giving the actual asymptotic scaling this result is more definitive than prior empirical studies of algorithms based on classical simulations of small problems [23].

Beyond μ = 4.2, the fraction of soluble problems in the random 3-SAT ensemble, P_{soluble}, drops to zero as n increases. Since this analysis averages over all problems in the ensemble, ⟨P_{soln}⟩ ≤ P_{soluble}. The performance of this algorithm for overconstrained soluble problems is given instead by ⟨P_{soln}⟩ /P_{soluble}. Unfortunately, this ensemble does not have a simple expression for P_{soluble}, or even just its leading exponential scaling, making this evaluation difficult. Instead one could use empirical classical search to evaluate P_{soluble} and estimate its scaling behavior as a function of μ. However, this technique is increasingly difficult as μ increases due to the rapidly decreasing fraction of soluble problems in the ensemble.

An alternate approach is to examine an ensemble where all problems are soluble and that is analytically simple, e.g., the ensemble with a prespecified solution. The evaluation of ⟨P_{soln}⟩ proceeds as shown above, with the addition of needing to keep track of the distances of the sets r, s and s′ to the prespecified solution (which affects the available number of clauses that can be selected to produce the required numbers of conflicts). The resulting optimal behavior is shown in Fig. 5, with the corresponding best values for ρ and τ given in Fig. 4. The decay rate decreases as μ increases past 7, i.e., problems become easier as the number of clauses increases. Presumably a similar behavior would be seen for the soluble cases in the random ensemble as well because these two ensembles are fairly similar when μ is large. On the other hand, random selection and the unstructured algorithm do not improve as μ increases: they do not take advantage of the structure of highly constrained problems.

Figure 5: Smallest exponential decay rate A for ⟨P_{soln}⟩ as a function of μ = m/n for 3-SAT with prespecified solution. For comparison, the gray and dashed curves show the scaling for random selection and, approximately, for unstructured search.

Since classical simulations of quantum algorithms are limited to few variables, this asymptotic analysis can also indicate of the extent to which these simulations match the asymptotic behavior. An example is Fig. 6 showing that the behavior matches that from Table 1 for μ = 2 and μ = 4 even with a small number of variables.

Figure 6: Optimal asymptotic behavior of ⟨P_{soln}⟩ for 3-SAT with μ = 2 (gray) and 4 (black) on a log-scale vs. n. The points show the exact values of ⟨P_{soln}⟩.

6 Limiting Cases

The behavior of the minimum decay rate shown in Fig. 3 and 5 suggests that A decreases toward zero for small and large values of μ for soluble problems. This is confirmed in Fig. 7 which shows the behavior of both ensembles over a larger range of values.

As μ → 0, the figure shows the minimum decay rate is nearly a straight line with slope 2 on this log-log plot, indicating A = O(μ^{2}) in this limit. With this limiting behavior ⟨P_{soln}⟩ decays as exp(−An) = exp(O(m^{2}/n)). In particular, if m grows no faster than \sqrt{n}, ⟨P_{soln}⟩ will remain O(1) as n increases.

Similarly, as μ → ∞, Fig. 7 shows A decreasing in a straight line with slope −1, indicating A = O(1/μ). Correspondingly, ⟨P_{soln}⟩ then decays as exp(O(n^{2}/m)). So if m grows at least as fast as n^{2}, the probability to find a solution, on average, will remain O(1) as n increases.

Figure 7: Limiting behaviors, on a log-log plot, for exponential decay rate A. Behavior for random 3-SAT (black curve, up to μ = 6), prespecified solution 3-SAT (gray curve, for μ between 0.1 and 40) and the upper bound based on probability to find the prespecified solution (black curve, for μ ≥ 20). For comparison the dashed lines show the limiting behaviors for small and large μ, which correspond very closely to the exact values for μ < 0.3 and μ > 1000.

In the remainder of this section, we confirm these limiting observations from Fig. 7. While such weakly and highly constrained problems are fairly simple, the single-step algorithm outperforms the best classical heuristic methods for these cases, which require evaluating O(n) assignments on average.

6.1 Solving Weakly Constrained Problems

When 1 ≪ m ≪ n, the decay rate A = −(H + U + Im/n), can be treated through an expansion in the small quantity μ = m/n. Specifically, the location of the stationary point for the variables x̂, ŷ and ẑ is determined, to O(1), by setting the derivatives of H + U to zero. The contribution from the sum over conflicts, μI, only introduces corrections of O(μ).

The expression H + U evaluated at the O(1) values for the stationary point is zero, for any choice of the parameters ρ and τ. The O(μ) values and the contribution from μI then give a scaling for ⟨P_{soln}⟩ of exp(O(m)). However, for an appropriate choice of τ and ρ, the coefficient of this O(m) term can be set to zero, so that the actual scaling is dominated by the O(μ^{2}) correction, i.e., exp(O(nμ^{2})) corresponding to the behavior seen in Fig. 7.

While the final result of this analysis does not have a simple closed form for the parameter values that eliminate the O(m) decay, they are determined by trigonometric equations. These arise from setting to zero the derivatives of the O(m) contribution with respect to τ and ρ. The optimal choice for τ is determined by

2 cos^{k} (\frac{πτ}{2} ) cos (k \frac{πτ}{2} ) = 1  (26)

With this value for τ, ρ must then satisfy sin(π(ρ + kτ)) = 0. Among the many possible solutions for ρ and τ, we select the one in the range 0 to 1 for definiteness. For k = 3 these equations give τ = 0.201389 and ρ = 0.395832, which correspond to the limiting values in Fig. 4 as m/n → 0.

These values of the parameters and the corresponding stationary point in Eq. (25) give ⟨P_{soln}⟩ ∼ e^{−α_{weak}m^{2}/n}. The decay rate is thus A = α_{weak}μ^{2}. When m grows no faster than \sqrt{n}, ⟨P_{soln}⟩ = O(1). This performance is better than any classical heuristic, and also improves on the unstructured quantum search since solutions are still rare.

As an example, when k = 3, α_{weak} = 0.029405. The corresponding decay rate A is shown as the dashed line in Fig. 7 for the μ → 0 limit.

Table 2: Scaling of ⟨P_{soln}⟩ from Eq. (14) and ⟨S⟩ /2^{n} for weakly constrained random 3-SAT with m = 2\sqrt{n}.

\begin{matrix}n & m & ⟨P_{soln}⟩ & ⟨S⟩ /2^{n} \\ 4 & 4 & 0.908 & 0.569 \\ 9 & 6 & 0.897 & 0.447 \\ 16 & 8 & 0.894 & 0.343 \\ 25 & 10 & 0.893 & 0.263 \\ 36 & 12 & 0.892 & 0.201 \end{matrix}

An example of the approach to the asymptotic behavior is given in Table 2 for m = 2\sqrt{n}. In this case, the asymptotic scaling limit is exp(−4α_{weak}) = 0.889. This behavior compares with the still rapid decrease in expected fraction of solutions which scales as ⟨S⟩ /2^{n} = (1 − 2^{−k})^{m} or (7/8)^{m} for k = 3. Thus the unstructured search scaling for this case is (7/8)^{\sqrt{n}} which still decreases faster than polynomially.

6.2 Solving Highly Constrained Problems

For m ≫ n, we focus on the ensemble of problems with a prespecified solution. In fact, with this many clauses, there are relatively few solutions in addition to the prespecified one. Thus a simpler evaluation considers the probability that the quantum search finds the prespecified solution, rather than any solution. This quantity is a lower bound on ⟨P_{soln}⟩, and is a tight bound when m is large.

This lower bound is given by setting assignment r in Eq. (9) to be the prespecified solution rather than summing over all possible assignments. The derivation leading to Eq. (14) proceeds as before except for two changes. First, eliminating the sum over r gives an additional factor of 2^{−n}. Second, the number of possible problems N_{problems} replaced by

\binom{M − \binom{n}{k}}{m}  (27)

reflecting the smaller number of problems with a prespecified solution.

The asymptotic analysis gives an additional overall factor of 2^{−n}(1 − 2^{−k})^{−m}. The resulting decay rate for ⟨P_{soln}⟩ then has an upper bound given by the value of −(H + U − log 2 + (I − log(1 − 2^{−k})))m/n) evaluated at the corresponding stationary point.

For m ≫ n, we can expand the stationary point evaluation in powers of 1/μ. Following the behavior for the optimal value of ρ suggested by Fig. 4 and the values obtained in connection with Fig. 7, we take ρ to be proportional to 1/μ. The O(1) values for the stationary point in this case are simply x̂ = ŷ = ẑ = 1/4. Because ρ → 0, the leading behavior for I is just log(1−2^{−k}) so the exponential scaling of O(m) is exactly zero. The contributions to the scaling of O(n) can be made equal to zero by selecting τ = 1/2 and ρ = 2^{k−2}(2^{k} −1)/(kμ). The simple form for the O(1) stationary point values also allows evaluating the overall O(1) asymptotic behavior. Specifically, with these parameters, the scaling of the probability to find the prespecified solution is

\frac{4}{\sqrt{16 + (k − 1)^{2}π^{2}}} exp (−\frac{(2^{k} − 1)^{3}π^{2}}{16k^{2}} \frac{n^{2}}{m} )  (28)

The corresponding value for the decay rate, A = (2^{k} − 1)^{3}π^{2}/(16k^{2}μ), is shown in Fig. 7.

In particular, when m is at least O(n^{2}), we have O(1) performance, duplicating the behavior seen with highly constrained k-SAT problems [24].

7 Required Precision

We have presented the scaling behavior of ⟨P_{soln}⟩ for appropriate choices of ρ and τ. In particular, for sufficiently weakly or highly constrained problems ⟨P_{soln}⟩ is O(1), which is better performance than possible with classical methods for these easy problems.

One important question in realizing such scaling is that of the required precision in implementing the parameters. Fortunately, these requirements are not particularly strict because the parameters appear in the exponents. In particular, an error of ϵ in ρ or τ will give error O(ϵ^{2}) in the exponent. E.g., for weakly constrained case, this gives exponential decay of exp(O(ϵ^{2})m). To maintain O(1) behavior, ϵ will need to be small enough so that ϵ^{2}m = O(1), i.e., the precision requirement is ϵ = O(1/\sqrt{m}). Similarly, for m ≫ n, such parameter errors give exponential decay of exp(O(ϵ^{2})n), so the precision requirement is ϵ = O(1/\sqrt{n}).

Thus only a square root precision in the implementation of the values of ρ and τ is required. While by no means trivial, this shows the algorithm does not require exponentially precise parameter values to achieve the scaling.

The precise scaling is determined by the size of the second derivatives of the exponent around the maximum. For k = 3, a root-mean-square combined error of ϵ in ρ and τ introduces at worst a factor exp(−3.18ϵ^{2}m). This is greater than 1/2 provided ϵ < 0.46/\sqrt{m}. For example, with m = 2\sqrt{n}, this requirement is satisfied for a 10,000 variable problem provided ϵ < 0.033, which allows, roughly, a 10% error in the values.

8 Problem Search Costs

The ensemble average leading to Eq. (14) provides a direct analysis of ⟨P_{soln}⟩. This technique can also be generalized to quantities involving positive integer powers of P_{soln}, such as the variance. However, there remain a number of additional properties whose ensemble behavior cannot be expressed in simple form. One such quantity is the expected solution cost which, for any particular problem, is 1/P_{soln}. Since ensembles that include even one problem with no solutions will have ⟨1/P_{soln}⟩ = ∞, a more useful quantity is its median value or the behavior of its distribution to identify the extent to which the algorithm performs well for many or most problems. Such quantities require classical simulation to evaluate. A comparison of these quantities is given in Table 3. We see that \frac{1}{⟨P_{soln}⟩} underestimates the median search cost, but is a better estimate than ⟨1/P_{soln}⟩ even when the latter is restricted to soluble problems.

Quantum search works by using correlation between distance from solution and number of conflicts. This is very different from properties used by classical searches. An interesting question is the extent to which these properties are different, e.g., to what extent are some problems hard for quantum search but easy for classical ones and vice versa. An indication is given in Fig. 8. Specifically, the expected quantum search cost for a single instance is given by 1/P_{soln}. For a classical comparison, each problem Table 3: Comparison of search cost estimates based on 1000 soluble random 3-SAT problems.

μ = 2  μ = 4
n \frac{1}{⟨P_{soln}⟩} median (\frac{1}{P_{soln}} ) ⟨\frac{1}{P_{soln}} ⟩ \frac{1}{⟨P_{soln}⟩} median (\frac{1}{P_{soln}} ) ⟨\frac{1}{P_{soln}} ⟩
10 2.6  2.6  2.8  15  17  25
20 6.6  6.8  7.4  228  352  705

was solved repeatedly with the GSAT local search method [36]. The expected search cost was computed by the ratio of the total number of GSAT steps to the number of solutions found by these repeated searches. The figure shows a general correlation between search difficulty for the two methods, but with substantial variation.

The figure also shows the absolute number of steps required for the quantum method is considerably larger than the classical heuristic for these problems. This contrasts with sufficiently weakly or highly constrained problems where the quantum method requires O(1) steps while the classical search uses O(n). Achieving further improvement for the quantum search may require incorporating into the phase choices the neighborhood information used in the classical heuristic.

Figure 8: Comparison of quantum and classical search for random 3-SAT with n = 20 and m = 80. Each point shows the expected search cost for a single problem instance.

9 Discussion

We have shown how an analysis based on ensemble averages can be used to design quantum search algorithms. The resulting algorithm was evaluated for satisfiability problems with various numbers of constraints, including those in the hard region as well as the easier weakly and highly constrained cases. Compared to unstructured search, this gives average behavior that, in most cases, is exponentially better. Moreover, this performance is obtained with only a single evaluation of the assignment properties rather than the exponentially large number of repeated evaluations required by the unstructured method. Thus this single-step algorithm requires much less coherence time for the quantum operations.

The new quantum algorithm introduced in this paper does not achieve the performance of existing classical heuristics for hard problems, but is better for sufficiently weakly and highly constrained cases in terms of the number of search steps required. Classical and quantum search steps both require about the same number of elementary operations. However, the extent to which differences in number of search steps translate into differences in actual execution time depends on details of implementation and developments of quantum compiler technology for optimizing the choice of basic operations.

Classical heuristics use more properties of the problem than the algorithm described here. These properties include the difference between the number of conflicts in an assignment and those of its neighbors, and the conflicts associated with partial assignments. Incorporating such information in the quantum algorithm, through additional variation in the phase values, may improve quantum search.

An important advantage of basing the algorithm on ensembles is the use of average quantities of ensemble rather than requiring knowledge of the quantities for an individual search problem. This contrasts with the unstructured search method which requires knowledge of the number of solutions for a particular problem, or various values must be tried repeatedly [6]. An interesting open question is whether the algorithm, e.g., the choice of ρ and τ, could be improved by adjusting the values based on readily computed characteristics of an individual problem instance. In effect this would amount to using a more specific ensemble whose instances are more likely to be similar to the given instance than random problems. This observation raises the question of identifying a reasonable ensemble for a given problem.

The technique, introduced in this paper, of evaluating asymptotic behavior for a problem ensemble could be useful for evaluating a variety of quantum algorithms that are not easily addressed theoretically and hence would otherwise require slow classical simulation. This evaluation requires only that the properties of assignments used by the algorithm and the nature of the ensemble allow for an explicit determination of the ensemble averages, in analogy with Eq. (14). Furthermore, in many respects this analysis is simpler than that for heuristic classical methods. This is because classical searches introduce correlations in their path through a search space based on a series of heuristic choices. Accounting for the variation due to these choices is difficult to model theoretically. By contrast, the quantum search, by in effect exploring all search paths simultaneously, avoids this difficulty thereby giving relatively simple analytic expressions for the average behavior.

The power of this algorithm comes from exploiting the correlation between the number of conflicts and the distance from a solution among the large number of assignments that have close to the average number of conflicts and differ by about n/2 values from a solution. The resulting behavior of the scaling rate as a function of μ gives another perspective on the nature of the phase transition and the hard problems. That is, near the transition region, this correlation is weakest, reducing the amount of oscillatory behavior that can be removed from the sum of ⟨P_{soln}⟩ by appropriate choices of the phase parameters. This correlation is perfect for maximally constrained problems, but enough remains for harder problems to substantially improve the search performance.

More generally, the significance for quantum search of such correlations within individual problems provide an alternate perspective on the distinction between easy and hard problem instances. This perspective is unlike classical heuristics that rely on behavior of states near solutions as guides, and can become stuck in local minima or among large collections of assignments with the same number of conflicts [18]. For the quantum algorithm, local minima are not an issue: instead it is the limited correlation between distance and conflicts for states far from solutions that prevents efficient search. Because of these very different characteristics, an interesting direction for future work is identifying individual problems or problem ensembles where the correlations are stronger even though the local minima for states relatively near solutions remain. In such cases, quantum algorithms could perform much better than classical heuristics.

Acknowledgments

I have benefited from discussions with Carlos Mochon, Wolf Polak and Eleanor Rieffel. The On-Line Encyclopedia of Integer Sequences [39] was helpful in identifying the exact form of the optimal parameters for highly constrained problems.

References

[1] M. Abramowitz and I. Stegun, editors. Handbook of Mathematical Functions. Dover, New York, 1965.

[2] Carl M. Bender and Steven A. Orszag. Advanced Mathematical Methods for Scientists and Engineers. McGraw Hill, NY, 1978.

[3] P. Benioff. Quantum mechanical hamiltonian models of Turing machines. J. Stat. Phys., 29:515–546, 1982.

[4] Ethan Bernstein and Umesh Vazirani. Quantum complexity theory. In Proc. 25th ACM Symp. on Theory of Computation, pages 11–20, 1993.

[5] Andre Berthiaume, David Deutsch, and Richard Jozsa. The stabilization of quantum computations. In Proc. of the Workshop on Physics and Computation (PhysComp94), pages 60–62, Los Alamitos, CA, 1994. IEEE Press.

[6] Michel Boyer, Gilles Brassard, Peter Hoyer, and Alain Tapp. Tight bounds on quantum searching. In T. Toffoli et al., editors, Proc. of the Workshop on Physics and Computation (PhysComp96), pages 36–43, Cambridge, MA, 1996. New England Complex Systems Institute.

[7] Gilles Brassard, Peter Hoyer, and Alain Tapp. Quantum counting. Los Alamos preprint quant-ph/9805082, May 27 1998.

[8] Nicolas J. Cerf, Lov K. Grover, and Colin P. Williams. Nested quantum search and NP-complete problems. Los Alamos preprint quant-ph/9806078, June 23 1998.

[9] Vladimir Cerny. Quantum computers and intractable (NP-complete) computing problems. Physical Review A, 48:116–119, 1993.

[10] Peter Cheeseman, Bob Kanefsky, and William M. Taylor. Where the really hard problems are. In J. Mylopoulos and R. Reiter, editors, Proceedings of IJCAI91, pages 331–337, San Mateo, CA, 1991. Morgan Kaufmann.

[11] Isaac L. Chuang, Neil Gershenfeld, and Mark Kubinec. Experimental implementation of fast quantum searching. Physical Review Letters, 80:3408–3411, 1998.

[12] Isaac L. Chuang, Lieven M. K. Vandersypen, Xinlan Zhou, Debbie W. Leung, and Seth Lloyd. Experimental realization of a quantum algorithm. Nature, 393:143–146, 1998. Los Alamos preprint quant-ph/9801037.

[13] James M. Crawford and Larry D. Auton. Experimental results on the crossover point in random 3SAT. Artificial Intelligence, 81:31–57, 1996.

[14] D. Deutsch. Quantum theory, the Church-Turing principle and the universal quantum computer. Proc. R. Soc. London A, 400:97–117, 1985.

[15] D. Deutsch. Quantum computational networks. Proc. R. Soc. Lond., A425:73–90, 1989.

[16] David P. DiVincenzo. Quantum computation. Science, 270:255–261, 1995.

[17] R. P. Feynman. Quantum mechanical computers. Foundations of Physics, 16:507–531, 1986.

[18] J. Frank, P. Cheeseman, and J. Stutz. When gravity fails: Local search topology. J. of Artificial Intelligence Research, 7:249–281, 1997.

[19] M. R. Garey and D. S. Johnson. Computers and Intractability: A Guide to the Theory of NP-Completeness. W. H. Freeman, San Francisco, 1979.

[20] Lov K. Grover. Quantum computers can search arbitrarily large databases by a single query. Los Alamos preprint quant-ph/9706005, Bell Labs, 1997.

[21] Lov K. Grover. Quantum mechanics helps in searching for a needle in a haystack. Physical Review Letters, 78:325–328, 1997.

[22] Serge Haroche and Jean-Michel Raimond. Quantum computing: Dream or nightmare? Physics Today, 49:51–52, August 1996.

[23] Tad Hogg. A framework for structured quantum search. Physica D, 120:102–116, 1998. Los Alamos preprint quant-ph/9701013.

[24] Tad Hogg. Highly structured searches with quantum computers. Physical Review Letters, 80:2473–2476, 1998. Preprint at publish.aps.org/eprint/gateway/eplist/aps1997oct30 002.

[25] Tad Hogg, Bernardo A. Huberman, and Colin Williams. Phase transitions and the search problem. Artificial Intelligence, 81:1–15, 1996.

[26] Tad Hogg, Carlos Mochon, Eleanor Rieffel, and Wolfgang Polak. Tools for quantum algorithms. Los Alamos preprint quant-ph/9811073, Xerox, Sept. 1998.

[27] Peter Hoyer. Efficient quantum transforms. Los Alamos preprint quantph/9702028, February 1997.

[28] Emanuel Knill, Raymond Laflamme, and Wojciech H. Zurek. Resilient quantum computation. Science, 279:342–345, 1998.

[29] Rolf Landauer. Is quantum mechanically coherent computation useful? In D. H. Feng and B-L. Hu, editors, Proc. of the Drexel-4 Symposium on Quantum Nonintegrability, Boston, 1994. International Press.

[30] Seth Lloyd. A potentially realizable quantum computer. Science, 261:1569–1571, 1993.

[31] Christopher Monroe and David Wineland. Future of quantum computing proves to be debatable. Physics Today, 49:107–108, November 1996.

[32] A. Nijenhuis and H. S. Wilf. Combinatorial Algorithms for Computers and Calculators. Academic Press, New York, 2nd edition, 1978.

[33] E. M. Palmer. Graphical Evolution: An Introduction to the Theory of Random Graphs. Wiley Interscience, NY, 1985.

[34] Eleanor G. Rieffel and Wolfgang Polak. An introduction to quantum computing for non-physicists. Los Alamos preprint quant-ph/9809016 TR-98-044, FXPAL, Sept. 8 1998.

[35] Bart Selman and Scott Kirkpatrick. Critical behavior in the computational cost of satisfiability testing. Artificial Intelligence, 81:273–295, 1996.

[36] Bart Selman, Hector Levesque, and David Mitchell. A new method for solving hard satisfiability problems. In Proc. of the 10th Natl. Conf. on Artificial Intelligence (AAAI92), pages 440–446, Menlo Park, CA, 1992. AAAI Press.

[37] P. Shor. Scheme for reducing decoherence in quantum computer memory. Physical Review A, 52:2493–2496, 1995.

[38] Peter W. Shor. Algorithms for quantum computation: Discrete logarithms and factoring. In S. Goldwasser, editor, Proc. of the 35th Symposium on Foundations of Computer Science, pages 124–134, Los Alamitos, CA, November 1994. IEEE Press.

[39] Neil Sloane. A Handbook of Integer Sequences. Academic Press, NY, 1973. Online version available at http://www.research.att.com/∼njas/sequences.

[40] Barbara M. Terhal and John A. Smolin. Single quantum querying of a database. Los Alamos preprint quant-ph/9705041 v4, IBM, Nov. 14 1997.

[41] W. G. Unruh. Maintaining coherence in quantum computers. Physical Review A, 51:992–997, 1995.

[42] Colin P. Williams and Tad Hogg. Exploiting the deep structure of constraint problems. Artificial Intelligence, 70:73–117, 1994.