6.1.2 Complexity of Sequence Generation

Let graph G have n nodes, indegree of non-source nodes between dmin and dmax, and label size between lmin and lmax. For simplicity of analysis, we will assume that lmin = lmax = l and dmin = dmax = d (l = d = 2 for a grid graph).

Let us first compute the size of the pebbling formula associated with G. The running time of PebSeq1UIP and the size of the branching sequence generated will be given in terms of this size. The number of clauses in the pebbling formula PblG is roughly nld. Taking clause sizes into account, the size of the formula, | PblG|, is roughly n(l + d )ld. Note that the size of the CNF formula itself grows exponentially with the indegree and gets worse as label size increases. The best case is when G is the grid graph, where | PblG| = $ \Theta$(n). This explains the degradation in performance of zChaff, both original and modified, as we move from grid graphs to random graphs (see section 6.3). Since we construct PblGSAT by deleting exactly one randomly chosen clause from PblG (see Section 2.5), the size | PblGSAT| of the satisfiable version is also essentially the same.

Let us now compute the running time of PebSeq1UIP. Initial computation of heights and predecessor sorting takes time $ \Theta$(nd log d ). Assuming nu unit clause labeled nodes and nt target nodes, the remaining node sorting time is $ \Theta$(nulog nu + ntlog nt). Since PebSubseq1UIPWrapper is called at most once for each node, the total running time of PebSeq1UIP is $ \Theta$(nd log d + nulog nu + ntlog nt + nTwrapper), where Twrapper denotes the running time of PebSubseq1UIP- Wrapper without taking into account recursive calls to itself. When nu and nt are much smaller than n, which we will assume as the typical case, this simplifies to $ \Theta$(nd log d + nTwrapper). If T(v, i) denotes the running time of PebSubseq1UIP(v,i), again without including recursive calls to the wrapper method, then Twrapper = T(v, d ). However, T(v, d )= lT(v, d - 1) + $ \Theta$(l ), which gives Twrapper = T(v, d )= $ \Theta$(ld+1). Substituting this back, we get that the running time of PebSeq1UIP is $ \Theta$(nld+1), which is about the same as | PblG|.

Finally, we consider the size of the branching sequence generated. Note that for each node, most of its contribution to the sequence is from the recursive pattern generated near the end of PebSubseq1UIP. Let Q(v, i) denote this contribution. Q(v, i) = (l - 2)(Q(v, i - 1) + $ \Theta$(l )), which gives Q(v, i) = $ \Theta$(ld+2). Hence, the size of the sequence generated is $ \Theta$(nld+2), which again is about the same as | PblG|.

Theorem 3   Given a pebbling graph G with label size at most l and indegree of non-source nodes at most d, algorithm PebSeq1UIP produces a branching sequence $ \sigma$ of size at most S in time $ \Theta$(dS), where S = | PblG| $ \approx$ | PblGSAT|. Moreover, the sequence $ \sigma$ is complete for PblG as well as for PblGSAT under any clause learning algorithm using fast backtracking and 1UIP learning scheme (such as zChaff).

Proof. The size and running time bounds follow from the previous discussion in this section. That this sequence is complete can be verified by a simple hand calculation simulating clause learning with fast backtracking and 1UIP learning scheme.$ \Box$


Journal of Artificial Intelligence Research 22 (2004). Copyright AI Access Foundation. All rights reserved.