Abstract 1 Introduction 2 Summary of Results 3 Effectiveness from smooth to semismooth fitness landscapes 4 Representing semismooth fitness landscapes by directed 𝖵𝖢𝖲𝖯s 5 From oriented VCSPs to conditionally-smooth fitness landscapes 6 Efficient local search in conditionally-smooth landscapes 7 Inefficient local search in conditionally-smooth landscapes 8 Conclusion and Future Work References Appendix A Appendices

When Is Local Search Both Effective and Efficient?

Artem Kaznatcheev ORCID Department of Mathematics, and Department of Information and Computing Sciences, Utrecht University, The Netherlands Sofia Vazquez Alferez ORCID Department of Mathematics, and Department of Information and Computing Sciences, Utrecht University, The Netherlands
Abstract

Combinatorial optimization problems implicitly define fitness landscapes that combine the numeric structure of the “fitness” function to be maximized with the combinatorial structure of which assignments are “adjacent”. Local search starts at an assignment in this landscape and successively moves assignments until no further improvement is possible among the adjacent assignments. Classic analyses of local search algorithms have focused more on the question of effectiveness (“did we find a good solution?”) and often implicitly assumed that there are no doubts about their efficiency (“did we find it quickly?”). But there are many reasons to doubt the efficiency of local search. Even if we focus on fitness landscapes on the hypercube that are single peaked on every subcube (known as semismooth fitness landscapes, completely unimodal pseudo-Boolean functions, or acyclic unique sink orientations) where effectiveness is obvious, many local search algorithms are known to be inefficient. Since fitness landscapes are unwieldy exponentially large objects, we focus on their polynomial-sized representations by instances of valued constraint satisfaction problems (𝖵𝖢𝖲𝖯). We define a “direction” for valued constraints such that directed 𝖵𝖢𝖲𝖯s generate semismooth fitness landscapes. We call directed 𝖵𝖢𝖲𝖯s oriented if they do not have any pair of variables with arcs in both directions. Since recognizing if a 𝖵𝖢𝖲𝖯-instance is directed or oriented is 𝖼𝗈𝖭𝖯-complete, we generalized oriented 𝖵𝖢𝖲𝖯s as conditionally-smooth fitness landscapes where the structural property of “conditionally-smooth” is recognizable in polynomial time for a 𝖵𝖢𝖲𝖯-instance. We prove that many popular local search algorithms like random ascent, simulated annealing, history-based rules, jumping rules, and the Kernighan-Lin heuristic are very efficient on conditionally-smooth landscapes. But conditionally-smooth landscapes are still expressive enough so that other well-regarded local search algorithms like steepest ascent and random facet require a super-polynomial number of steps to find the fitness peak.

Keywords and phrases:
valued constraint satisfaction problem, local search, algorithm analysis, constraint graphs, pseudo-Boolean functions, parameterized complexity
Copyright and License:
[Uncaptioned image] © Artem Kaznatcheev and Sofia Vazquez Alferez; licensed under Creative Commons License CC-BY 4.0
2012 ACM Subject Classification:
Theory of computation Constraint and logic programming
Related Version:
Full Version: https://arxiv.org/abs/2410.02634
Editors:
Meena Mahajan, Florin Manea, Annabelle McIver, and Nguyễn Kim Thắng

1 Introduction

Local search algorithms start at an initial assignment and successively move to better adjacent assignments until no further improvement is possible. As with all algorithms, we can ask about their effectiveness (“did we find a good solution?”) and efficiency (“did we find it quickly?”). Often, we do not know the precise answers to these questions, but still choose to use local search in combinatorial optimisation [1, 12, 18, 42, 49].111Sometimes local search is chosen because it is easy to implement. If we do not expect any algorithm to be effective and efficient on all inputs – say for 𝖭𝖯-hard combinatorial optimization problems – then why not choose an algorithm that will take less effort to implement and maintain? At other times, local search is forced on us. If we want to understand the evolution of biological systems [30, 31] or of social systems in business [26, 38] and economics [45], or even just energy-minimization in physical systems, then we need to study the effectiveness and efficiency of the local search algorithms followed by nature. In practice, local search seems to efficiently find effective solutions. But practice is not theory.

As theorists, we can view combinatorial optimization problems as implicitly defining fitness landscapes that combine the numeric structure of the “fitness” function to be maximized with the combinatorial structure of which assignments are “adjacent” [1, 12, 32]. Since many local search algorithms stop at local peaks in these fitness landscapes, much work asks questions of effectiveness like “are these peaks ‘good enough’?” [1, 18]. Such questions of effectiveness can be avoided by focusing on just single-peaked fitness landscapes. Or even more stringently, by focusing on fitness landscapes on the hypercube of assignments that are single peaked on every subcube. These landscapes are known – depending on the research community – as semismooth fitness landscapes [30], completely unimodal pseudo-Boolean functions [21], or acyclic unique-sink orientations (AUSOs) of the hypercube [48, 50]. Semismooth fitness landscapes have a single peak, a short ascent from any starting point to this peak, and have nothing resembling other local peaks to potentially block local search (Propositions 3 and 4; Hammer et al. [21], Poelwijk et al. [44], and Kaznatcheev [30]; see Section 3). Local search is effective in finding the best possible result in semismooth landscapes, but can it do so efficiently?

The (in)efficiency of finding local peaks for general combinatorial optimization problems is captured by the complexity class of polynomial local search (𝖯𝖫𝖲; [28]): if 𝖥𝖯𝖯𝖫𝖲 then there is no polynomial time algorithm (even non-local) that can find a local peak in general fitness landscapes. Many problems that generate these hard landscapes are complete under tight 𝖯𝖫𝖲-reductions, so have families of instances and initial assignments such that all ascents (i.e., sequences of adjacent assignments with strictly increasing fitness; Section 3) to any local peak are exponentially long [5, 28]. Thus, ascent-following local search will not find a local peak in polynomial time, even if 𝖥𝖯=𝖯𝖫𝖲.222Restricting 𝖯𝖫𝖲-complete problems to a subset of instances that are tractable in polynomial time does not mean that particular local search algorithms will also find a peak in polynomial time. For example, 𝖶𝖾𝗂𝗀𝗁𝗍𝖾𝖽 2-𝖲𝖠𝖳 is a 𝖯𝖫𝖲-complete problem [37, 46] and thus binary Boolean valued constraint satisfaction problems (𝖵𝖢𝖲𝖯) are 𝖯𝖫𝖲-complete. For 𝖵𝖢𝖲𝖯-instances of bounded treewidth, the global peak can be found in polynomial time [4, 6]. Thus, bounded-treewdith 𝖵𝖢𝖲𝖯 is not 𝖯𝖫𝖲-complete. But exponentially long ascents exist (and greedy local search algorithms like 𝖲𝗍𝖾𝖾𝗉𝖾𝗌𝗍𝖠𝗌𝖼𝖾𝗇𝗍 can take exponentially long) even with binary Boolean 𝖵𝖢𝖲𝖯-instances of pathwidth 2 [32, 7, 33, 34, 51]. What is easy for non-local search is not necessarily easy for local search. In contrast, semismooth fitness landscapes always have some short ascent to their unique fitness peak. Thus, any results about (in)efficiency will have to be stated in terms of specific local search algorithms.333The special case of finding the peak in semismooth landscapes is reducible to 𝖴𝗇𝗂𝗊𝗎𝖾-𝖤𝗇𝖽-𝗈𝖿-𝖯𝗈𝗍𝖾𝗇𝗍𝗂𝖺𝗅-𝖫𝗂𝗇𝖾 – the complete problem for 𝖴𝖤𝖮𝖯𝖫𝖯𝖫𝖲𝖯𝖯𝖠𝖣 [15, 19]. It is believed that 𝖴𝖤𝖮𝖯𝖫 is strictly easier than 𝖯𝖫𝖲, but still not tractable in polynomial time. In a blackbox setting (no access to a concise description of the fitness landscape), 𝖴𝖤𝖮𝖯𝖫 and 𝖯𝖫𝖲 are not tractable in polynomial time. And there exist constructions of semismooth landscapes that cannot be solved efficiently by various popular local search algorithms including 𝖲𝗍𝖾𝖾𝗉𝖾𝗌𝗍𝖠𝗌𝖼𝖾𝗇𝗍 [13, 27, 30, 34], 𝖱𝖺𝗇𝖽𝗈𝗆𝖠𝗌𝖼𝖾𝗇𝗍 [22, 39], 𝖱𝖺𝗇𝖽𝗈𝗆𝖥𝖺𝖼𝖾𝗍 [17], jumping rules [47], and many others. It is generally believed that for any particular local search algorithm, there will be some family of semismooth fitness landscapes that show that the algorithm is not efficient. On semismooth fitness landscapes, even if local search is always effective, it is not always efficient.

This raises our main question for this paper: when is local search efficient on single-peaked landscapes? In a classic complexity theory setting, one wants to keep fixed a given problem (or class of problem instances) and seek for the simplest or most natural algorithm that solves this problem effectively (i.e., correctly) and efficiently (i.e., in polynomial time). We flip this formula around. We fix the algorithms and seek the most complex class of problem instances on which these algorithms can solve the problem effectively and efficiently. Specifically, we fix a collection of many popular local search algorithms and seek to find a large class of single-peaked fitness landscapes on which this collection of many local search algorithms is efficient (we abbreviate this as efficient-for-many; and we let our fixed collection be algorithms from a broader algorithm-class that we name poly-bypass).

Given that blackbox fitness landscapes are unwieldy exponentially large objects, we open the blackbox by representing fitness landscapes by instances of valued constraint satisfaction problems (𝖵𝖢𝖲𝖯s) [32].444Our focus on easily checkable properties of polynomial-sized representations of problems instead of purely theoretical properties of the exponentially-large fitness landscapes implicit in the problems, is one of the big differences of our approach/results versus similar work in evolutionary computation [10, 12, 11]. Specifically, we study binary Boolean 𝖵𝖢𝖲𝖯s, also known as quadratic pseudo-Boolean functions. Since arbitrary binary Boolean 𝖵𝖢𝖲𝖯s are 𝖯𝖫𝖲-complete [5, 28, 37, 46], we will be looking for subclasses of binary Boolean 𝖵𝖢𝖲𝖯s that implement single-peaked fitness landscapes on which poly-bypass local search algorithms can find the peak efficiently. Thus, our goal is to find an easy to check structural property of 𝖵𝖢𝖲𝖯s that captures the most expressive subclass of binary Boolean 𝖵𝖢𝖲𝖯s for which many popular local search algorithms are both effective and efficient.

2 Summary of Results

To avoid concerns over (in)effectiveness, we start Section 4 by identifying the binary Boolean 𝖵𝖢𝖲𝖯s that implement semismooth fitness landscapes. We do this by assigning each edge in the constraint graph of a binary Boolean 𝖵𝖢𝖲𝖯 corresponding to a valued constraint between variable xi and xj one of two types: directed (ij or ji) or bidirected (ij). We show that 𝖵𝖢𝖲𝖯s without bidirectional edges are equivalent to semismooth fitness landscapes and name them directed 𝖵𝖢𝖲𝖯s. Given many constructions of hard semismooth fitness landscapes [13, 17, 22, 27, 30, 39, 47], we do not expect local search to be efficient on directed 𝖵𝖢𝖲𝖯s.

To find efficiency, we define oriented 𝖵𝖢𝖲𝖯s as a further restriction on directed 𝖵𝖢𝖲𝖯s. For each pair of variables xi, xj in an oriented 𝖵𝖢𝖲𝖯 there can be at most one of ij or ji: the constraint graph is oriented, hence the name. We show that there are no directed cycles in oriented 𝖵𝖢𝖲𝖯s: all oriented 𝖵𝖢𝖲𝖯s induce a partial order where the preferred assignment of a variable xj depends only on the assignments of variables xi with i lower than j in the partial order. This means that once we condition on all xi with i lower than j, the preferred assignment of xj is independent of all other variables – like in a smooth landscape.

Although having a directed or oriented constraint graph is a natural property to define subclasses of 𝖵𝖢𝖲𝖯s, it is a hard property to recognize. Specifically, 𝖲𝗎𝖻𝗌𝖾𝗍𝖲𝗎𝗆 can be solved by determining the direction of constraints (Proposition B.1 for ij and Proposition B.2 for both ij and ji). Thus, given an arbitrary binary Boolean 𝖵𝖢𝖲𝖯, the problem of checking if it is directed or oriented is 𝖼𝗈𝖭𝖯-complete (Corollary B.3). Furthermore, even if we are given a directed binary Boolean 𝖵𝖢𝖲𝖯, checking if it is oriented is 𝖼𝗈𝖭𝖯-complete (Corollary B.4). The only silver lining is that if we take the maximum degree of the constraint graph of the 𝖵𝖢𝖲𝖯-instance as a parameter then checking if a binary Boolean 𝖵𝖢𝖲𝖯 is directed or oriented is fixed-parameter tractable (Algorithm 2 and Appendix B.2).

Given the importance of the partial order of conditional independence but the difficulty of recognizing if a 𝖵𝖢𝖲𝖯 is oriented, with Footnote˜8 in Section 5, we abstract to a class of landscapes that we call conditionally-smooth. Just like smooth and semismooth landscapes, conditionally-smooth landscapes have only one local (and thus global) peak and there exist short ascents from any initial assignment to the peak (Proposition 9). In other words, just as with semismooth landscapes, local search algorithms are effective on conditionally-smooth landscapes. Unlike directed or oriented 𝖵𝖢𝖲𝖯s, however, we show how to recognize if an arbitrary binary Boolean 𝖵𝖢𝖲𝖯 is conditionally-smooth in polynomial time (Algorithm 3).

In Section 6, we show that – unlike general semismooth fitness landscapes (and like smooth landscapes and oriented 𝖵𝖢𝖲𝖯s) – conditionally-smooth fitness landscapes are not just effective-for but also efficient-for-many local search algorithms.555We do not focus on efficient-for-all (or more formally: landscapes where all ascents are polynomial length) because we think that this case is too strict and has been largely resolved. Kaznatcheev, Cohen and Jeavons [32] showed that all ascents have length (n+12) in fitness landscapes that are implementable by binary Boolean 𝖵𝖢𝖲𝖯 with tree-structured constraint graphs. Efficient-for-all cannot be pushed much further than Boolean trees: Kaznatcheev, Cohen and Jeavons [32] also gave examples of 𝖵𝖢𝖲𝖯s with exponential ascents from (a) domains of size 3 and path-structured constraint graphs, or (b) Boolean domains and constraint graphs of pathwidth 2. This is why, we switch from the question of efficient-for-all to the question of efficient-for-many. Specifically, we show that conditionally-smooth fitness landscapes are solved efficiently by many local search algorithms including 𝖱𝖺𝗇𝖽𝗈𝗆𝖠𝗌𝖼𝖾𝗇𝗍 (Proposition 14); 𝖲𝗁𝖺𝗄𝖾𝗇𝖠𝗌𝖼𝖾𝗇𝗍 (Proposition C.2); 𝖲𝗂𝗆𝗎𝗅𝖺𝗍𝖾𝖽𝖠𝗇𝗇𝖾𝖺𝗅𝗂𝗇𝗀 (Proposition 15); 𝖹𝖺𝖽𝖾𝗁𝗌𝖱𝗎𝗅𝖾, 𝖫𝖾𝖺𝗌𝗍𝖱𝖾𝖼𝖾𝗇𝗍𝗅𝗒𝖢𝗈𝗇𝗌𝗂𝖽𝖾𝗋𝖾𝖽, and other history-based local search (Proposition C.6); 𝖠𝗇𝗍𝗂𝗉𝗈𝖽𝖺𝗅𝖩𝗎𝗆𝗉 and 𝖩𝗎𝗆𝗉𝖳𝗈𝖡𝖾𝗌𝗍 (Proposition C.8); 𝖪𝖾𝗋𝗇𝗂𝗇𝗀𝗁𝖺𝗇𝖫𝗂𝗇 (Proposition C.10); and 𝖱𝖺𝗇𝖽𝗈𝗆𝖩𝗎𝗆𝗉 (Proposition 16) – all of these are examples a broader class of local search algorithms that we name poly-bypass local search algorithms (Footnote˜9). Conditionally-smooth landscapes are a more expressive class than the tree-structured binary Boolean 𝖵𝖢𝖲𝖯s that (fully) capture the class of fitness landscapes that are efficient-for-all local search algorithms [32]. Thus, the conditionally-smooth structural property permits families of landscapes that are complex enough to break the efficiency of some popular local search algorithms that are not poly-bypass algorithms. In Section 7, we show that there are families of conditionally-smooth landscapes where finding the peak takes an exponential number of steps for 𝖲𝗍𝖾𝖾𝗉𝖾𝗌𝗍𝖠𝗌𝖼𝖾𝗇𝗍 (Theorem 19) and takes a superpolynomial number of steps for 𝖱𝖺𝗇𝖽𝗈𝗆𝖥𝖺𝖼𝖾𝗍 (Theorem 23). Given that both 𝖲𝗍𝖾𝖾𝗉𝖾𝗌𝗍𝖠𝗌𝖼𝖾𝗇𝗍 and 𝖱𝖺𝗇𝖽𝗈𝗆𝖥𝖺𝖼𝖾𝗍 [17] are often considered to be very good local search algorithms,666𝖱𝖺𝗇𝖽𝗈𝗆𝖥𝖺𝖼𝖾𝗍 is currently considered the best known algorithm for solving semismooth fitness landscapes. It finds the peak in any semismooth fitness landscapes in a superpolynomial but subexponential number of steps – even with the landscape given as a black-box [17]. In Corollary 22, we show that the family of semismooth landscapes that saturate this worst case behavior for 𝖱𝖺𝗇𝖽𝗈𝗆𝖥𝖺𝖼𝖾𝗍 are conditionally-smooth. their inefficiency on conditionally-smooth landscapes tells us that conditionally-smooth landscapes are not a trivially easy to solve class of landscapes.

3 Effectiveness from smooth to semismooth fitness landscapes

We consider assignments x{0,1}n from the n-dimensional hypercube where xi refers to the i-th entry of x. To refer to a substring with indexes S[n], we will write the partial assignment y=x[S]{0,1}S. If we want to modify a substring with indexes S[n] to match a partial assignment y{0,1}S (or any string y{0,1}|S|), we write x[Sy]. We abbreviate x[{i}b] by just x[ib]. Two assignments are adjacent if they differ on a single bit: x,y{0,1}n are adjacent if there exists an index i[n] such that y=x[ix¯i], where x¯i:=1xi is the negation of xi.

This combinatorial structure of adjacent assignments can be combined with the numeric structure of a pseudo-Boolean function (that we call the fitness function) to create a fitness landscape [54, 30, 32]. A fitness landscapes f associates to each assignment x the integer f(x) and a set of adjacent assignments. Given an assignment x, we let ϕ+(x)={i|i[n] and f(x[ix¯i])>f(x)} be the indexes of variables that increase fitness when flipped (out-map) and ϕ(x)={i|i[n] and f(x)f(x[ix¯i])} be the set of indexes that lower or do not increase fitness when flipped (in-map). An assignment x is a local peak in f if for all y adjacent to x we have f(x)f(y) (i.e., if ϕ+(x) is empty).777Note that local peaks are not necessarily “strict”, they can have adjacent assignments of equal (but not greater) fitness. So what some call a “fitness plateau” is for us a collection of adjacent local peaks. This transforms how we think about popular “hard” landscapes like 𝖭𝖾𝖾𝖽𝗅𝖾 from the evolutionary computation literature. A landscape f is a 𝖭𝖾𝖾𝖽𝗅𝖾 landscape if there exists a single assignment xneedle such that f(xneedle)=1 and for all other assignments xxneedlef(x)=0. We use the scare quotes around hard because for our definition of local peaks, 𝖭𝖾𝖾𝖽𝗅𝖾 landscapes are trivial: every assignment is either a local peak (for xneedle and any xxneedle not directly adjacent to xneedle) or directly adjacent to a local peak (for y directly adjacent to xneedle) and are thus solved by any local search algorithm in at most one step. 𝖭𝖾𝖾𝖽𝗅𝖾 landscapes are only hard if we are looking for a global peak instead of any local peak. So from the perspective of our effective vs efficient distinction, many intractability results that rely on the difficulty of ‘navigating fitness plateaus or crossing fitness valleys’ are statement of ineffectiveness rather than inefficiency. This is one of the big differences between our approach and results, and the approach and results in the evolutionary computation literature [52, 25, 10, 12, 11, 23]. A sequence of assignments x0,x1,,xT is an ascent if every xt1 and xt are adjacent with the latter having higher fitness (i.e., tTxt=xt1[ixit1¯] and iϕ+(xt1)) and xT is a local peak.

A fitness landscape f is smooth if for each i[n] there exists an assignment xi such that for all assignments x we have f(x[ixi])>f(x[ixi¯]). In other words, in a smooth landscape, each variable xi has a preferred assignment xi that is independent of how other variables are assigned. It is easy to see that all ascents are short (i.e, n) in smooth fitness landscapes, so smooth landscapes are effective- and efficient-for-all local search algorithms.

We can relax the definition of smooth while maintaining effectiveness: a fitness landscape on the hypercube is a semismooth fitness landscape if every subcube is single peaked [30]. These are also known as completely unimodal pseudo-Boolean functions [21], or acyclic unique-sink orientations (AUSOs) of the hypercube [48, 50]. Semismooth fitness landscapes have a nice characterization in terms of the biological concept of sign epistasis [30, 44, 43, 53]:

Definition 1 (Kaznatcheev, Cohen and Jeavons [32]).

We say index i sign-depends on j in background x (and write j𝑥i) if f(x[ix¯i])>f(x) and f(x[{i,j}x¯ix¯j])f(x[jx¯j]) If there is no background assignment x such that j𝑥i then we say that i does not sign-depend on j (write ji). If for all ji we have ji then we say that i is sign-independent.

This terminology of “sign” comes from the observation that the sign of the fitness effect of a change in xi depends on the value of xj. Since the sign of the fitness effect of a change in xi just indicates the preferred assignment of xi (with a positive sign indicating xi=1 and negative indicating xi=0), it is easy to link this definition to smooth landscapes: a smooth landscape is a fitness landscapes where all indexes are sign-independent. Or stated in the negative, a smooth landscape is one without sign-dependence. We will relax this negative definition to get semismooth landscapes by instead excluding the concept of “reciprocal sign epistasis” [43, 44]:

Definition 2 (Poelwijk et al. [44]).

If there exists a background assignment x such that j𝑥i and i𝑥j then we say that i and j have reciprocal sign epistasis in background x (and write i𝑥j). If there is no background assignment x such that i𝑥j then we say i and j do not have reciprocal sign epistasis, and use the symbol ij.

If the background x is clear form context or not important then we drop the superscript in the above notations and just write ji or ij. The absence of reciprocal sign epistasis is clearly necessary for a fitness landscape to be semismooth, but it is also sufficient:

Proposition 3 (Hammer et al. [21], Poelwijk et al. [44], and Kaznatcheev [30]).

A fitness landscape f on n bits is semismooth if and only if for all i,j[n] ij.

Conveniently, semismooth landscapes always have a short ascent to the unique peak:

Proposition 4 (Hammer et al. [21], and Kaznatcheev [30]).

A semismooth fitness landscape has only one local (thus global) peak at x and given any initial assignment x0, there exists an ascent to x of Hamming distance (i.e., length n).

Unlike smooth landscapes, however, not all ascents in semismooth fitness landscapes are short, and finding and following a short ascent is not easy. The Klee-Minty cube [36] is a construction of a semismooth fitness landscape on {0,1}n with an ascent of length 2n1. As for local search algorithms, constructions exists such that semismooth landscapes are not tractable in polynomial time by various popular ascent-following local search algorithms including 𝖲𝗍𝖾𝖾𝗉𝖾𝗌𝗍𝖠𝗌𝖼𝖾𝗇𝗍 [13, 27, 30], 𝖱𝖺𝗇𝖽𝗈𝗆𝖠𝗌𝖼𝖾𝗇𝗍 [22, 39], 𝖱𝖺𝗇𝖽𝗈𝗆𝖥𝖺𝖼𝖾𝗍 [17], jumping rules [47], and many others. Thus, local search is not efficient on all semismooth fitness landscapes. So we start our search for single-peaked landscapes that are efficient-for-many local search algorithms by looking for natural subclasses of semismooth fitness landscapes.

4 Representing semismooth fitness landscapes by directed 𝖵𝖢𝖲𝖯s

As blackboxes, fitness landscapes are unwieldy exponentially large objects, so we open the blackbox by representing landscapes by instances of valued constraint satisfaction problems (𝖵𝖢𝖲𝖯s) [32]. We can then find which natural subclass of 𝖵𝖢𝖲𝖯s represents semismooth fitness landscapes along with an algorithms for checking when a given 𝖵𝖢𝖲𝖯-instance has these properties. A Boolean 𝖵𝖢𝖲𝖯-instance is a set of constraint weights 𝒞={cS} where each weight cS{0} has a scope S[n]. This set of constraints implements a pseudo-Boolean function:

f(x)=cS𝒞cSjSxj. (1)

If |S|2 for all constraints then we say the 𝖵𝖢𝖲𝖯 is binary. We also view every binary 𝖵𝖢𝖲𝖯-instance 𝒞 as a constraint graph with edges {i,j}E(𝒞) if cij:=c{i,j}𝒞 and a neighbourhood function N𝒞(i)={j|{i,j}E(𝒞)}. This constraint graph is a way of representing where the potential sign-dependencies are in the fitness landscape.

Given a binary Boolean 𝖵𝖢𝖲𝖯 𝒞 on the whole n-dimensional hypercube, it is sometimes useful to consider the binary Boolean 𝖵𝖢𝖲𝖯 𝒞 restricted to just a subset of the indexes R[n] with the other variables in S:=[n]R fixed to some assignment y{0,1}S (i.e., restricted to the face {0,1}Ry). This restricted 𝖵𝖢𝖲𝖯 𝒞 will have the same binary constraint as 𝒞 (i.e., if i,jR and cij𝒞 then cij𝒞) but the unary constraints will change to what we call the effective unaries that “absorb” the binary constraints that cross the R-S cut:

Definition 5.

Given a variable index i with neighbourhood N(i) and RN(i) a set of indices we do not want to fix, we define the effective unary c^i(x,R)=ci+jN(i)Rxjcij. For simplicity, we write c^i(x) for c^i(x,).

If x and y are two assignments with x[N(i)R]=y[N(i)R] then c^i(x,R)=c^i(y,R). We use this to overload c^i to partial assignments: given TN(i)R and y{0,1}T, we interpret c^i(y,R) as c^i(y0[n]T,R). From this, it is easy to see that restricting our 𝖵𝖢𝖲𝖯 𝒞 to 𝒞’ on the face {0,1}Ry will change the unaries to ci=c^i(y,R) (for iR).

In terms of representation of smooth landscapes, it is clear than if all constraints in a 𝖵𝖢𝖲𝖯 are unary then the resulting fitness landscape is smooth. But even given a binary Boolean 𝖵𝖢𝖲𝖯-instance with non-unary constraints, it is easy to check if that 𝖵𝖢𝖲𝖯-instance implements a smooth landscape by checking if the unary constraints are “sufficiently large” compared to the relevant binary constraints. Or more generally, given any partial assignment y{0,1}S it is easy to check if the face {0,1}[n]Sy is smooth using the effective unaries. We will do this check one variable at a time. For a variable xi to have a preferred assignment that is independent of how other variables are assigned, its unary must dominate over the binary constraints that it participates in – its unary must have big magnitude. For example, suppose that ci>0 then xi will prefer to be 1 if all of its neighbours are 0. This preference must not change as any xj with jN(i) change to 1s. Since xj with cij<0 are the only ones that can lower xi’s preference for 1, this becomes equivalent to checking if ci>jN(i) s.t. cij<0|cij|. There exists a combination of xjs that flip xi’s preference if and only if this inequality is violated. In moving from this particular example to the general case, we can also generalize our algorithm to check not only if xi has an independent preference in the whole landscape but also if it has a conditionally independent preference conditional on some variables with indexes jS not being able to vary and fixed to some y{0,1}S. To do this we only need to replace ci by the effective unary of Definition 5 c^i=c^i(y,N(i)S):=ci+jSN(i)yjcij and consider cijs with sgn(c^i)sgn(cij) and jN(i)S. We encode this in 𝖢𝗈𝗇𝖽𝗂𝗍𝗂𝗈𝗇𝖺𝗅𝗅𝗒𝖲𝗂𝗀𝗇𝖨𝗇𝖽𝖾𝗉𝖾𝗇𝖽𝖾𝗇𝗍(𝒞,i,S,y) of Algorithm 1.

Algorithm 1 𝖢𝗈𝗇𝖽𝗂𝗍𝗂𝗈𝗇𝖺𝗅𝗅𝗒𝖲𝗂𝗀𝗇𝖨𝗇𝖽𝖾𝗉𝖾𝗇𝖽𝖾𝗇𝗍(𝒞,i,S,y).

Given a binary Boolean 𝖵𝖢𝖲𝖯-instance 𝒞, this algorithms runs in time linear in the maximum degree Δ(𝒞) of the constraint graph. To check if 𝒞 implements a smooth landscape, run 𝖢𝗈𝗇𝖽𝗂𝗍𝗂𝗈𝗇𝖺𝗅𝗅𝗒𝖲𝗂𝗀𝗇𝖨𝗇𝖽𝖾𝗉𝖾𝗇𝖽𝖾𝗇𝗍(𝒞,i,,0n) on every i and return the conjunction of their outputs in O(Δ(𝒞)n) time.

Now let us return to view the constraint graph as a way of represetning where the potential sign-dependencies are in a fitness landscape. If 𝖵𝖢𝖲𝖯-instance with binary constraints is smooth then this tells us that the edges in the constraint-graph did not actually encode any actual sign-dependence. This idea can be taken further by converting edges to arcs and assigning “directions” to the binary constraint cij based on how its weight compares to the effective unaries c^i across various background assignments (see Figure 1 for illustration):

Definition 6.

For 𝖵𝖢𝖲𝖯-instance 𝒞 we set the arcs A(𝒞) such that for {i,j}E(𝒞):

  1. (1)

    we set ijA(𝒞) if there exists an assignment x with |cij|>max{|c^i(x,{i,j})|,|c^j(x,{i,j})|} with sgn(cij)sgn(c^i(x,{i,j})) and sgn(cij)sgn(c^j(x,{i,j})).

  2. (2)

    otherwise we set: (a) ijA(𝒞) if there exists an assignment y such that |cij|>|c^j(y,{i,j})| with sgn(cij)sgn(c^j(y,{i,j})), and (b) ijA(𝒞) if there exists an assignment z such that |cij|>|c^i(z,{i,j})| with sgn(cij)sgn(c^i(z,{i,j})).

From this, each edge {i,j}E(𝒞) is assigned only one of the three kinds of arcs: {ij} or {ij and/or ij} or {}. In Figure 1, we provide some minimal prototypical examples of 𝖵𝖢𝖲𝖯-instances that have (a) no direction for the constraint with scope {i,j}, (b) ijA(𝒞), (c) both ij,ijA(𝒞), or (d) ijA(𝒞). Most of these examples are on two variables. Since it is impossible to have both both ij and ij without a kN(i)N(j) (Proposition A.4), the minimal instance in Figure 1(c) requires three variables. It is easy to check that the overloading of the sign-dependence and reciprocal sign epistasis symbols is appropriate. Most importantly, the fitness landscape will have reciprocal sign epistasis if and only if the 𝖵𝖢𝖲𝖯-instance 𝒞 implementing it has {ij}A(𝒞).

(a) {}A(𝒞).
(b) ijA(𝒞).
(c) ij,ijA(𝒞).
(d) ijA(𝒞).
Figure 1: Four 𝖵𝖢𝖲𝖯 instances illustrating the different arc directions of Definition 6. Weights of unary constraints are next to nodes and weights of binary constraints are above the edges.

The advantage of Definition 6 over black-box features of the fitness landscape is its statement in terms of properties of just the 𝖵𝖢𝖲𝖯-instance. This means, for example, that if we want to check the potential direction of a constraint with scope {i,j}E(𝒞) with cij<0 then we need to compare it to the effective unaries c^i(x,{i,j}) and c^j(x,{i,j}) for various choices of x. If we find an x such that both |cij|>c^i(x,{i,j})>0 and |cij|>c^j(x,{i,j})>0 are simultaneously satisfied then we output that ijA(𝒞). If we only ever satisfy one or fewer of these equations for all choices of x then we need to output a subset of {ij,ij} depending on which of the comparisons was true. Outputing {} if neither comparison was ever satisfied, ij if only the first was satisfied, ij if only the second, and {ij,ij} if each was true in a different background. Finally, to be fixed-parameter tractable, it is important to use that c^i(x,R)=c^i(y,R) when x[N(i)R]=y[N(i)R] to limit our search to just partial assignments x{0,1}N(i)N(j){i,j}. We formalize this as Algorithm 2:

Algorithm 2 𝖠𝗋𝖼𝖣𝗂𝗋𝖾𝖼𝗍𝗂𝗈𝗇(𝒞,i,j).

The resulting worst-case runtime is 2O(Δ(𝒞)), or an overall runtime of 2O(Δ(𝒞))O(Δ(𝒞)n) to determine the direction of all arcs in the 𝖵𝖢𝖲𝖯-instance 𝒞. This is fixed-parameter tractable when parameterized by the maximum number of constraints incident on a variable (Δ(𝒞)). A fully polynomial time algorithm for finding arc directions is unlikely given that the questions “is ijA(𝒞)?” (Proposition B.1) and “are both ij and ji in A(𝒞)?” (Proposition B.2) are 𝖭𝖯-complete by reduction from 𝖲𝗎𝖻𝗌𝖾𝗍𝖲𝗎𝗆. However, we can still define two natural subclasses of 𝖵𝖢𝖲𝖯s by restricting the bidirected constraint graph:

Definition 7.

We say that a VCSP instance 𝒞 is directed if 𝒞 has no bidirected arcs. We say that a directed 𝒞 is oriented if it has at most one arc for every pair of variables ij.

In Appendix A, we extend Proposition 3 to representations to show that a quadratic pseudo-Boolean f is semismooth if and only if the corresponding 𝖵𝖢𝖲𝖯 is directed (Proposition A.1), any triangle-free directed 𝖵𝖢𝖲𝖯 is oriented (Theorem A.3), and oriented 𝖵𝖢𝖲𝖯s are always acyclic (Proposition A.5). Theorem A.3 and Proposition A.5 let us view oriented 𝖵𝖢𝖲𝖯s as a kind of generalization of the tree-structured 𝖵𝖢𝖲𝖯s that Kaznatcheev, Cohen, and Jeavons [32] showed are efficient-for-all local search algorithms. Specifically, we replace the undirected acyclicity of trees by the directed acyclicity of DAGs. Unfortunately, checking if a 𝖵𝖢𝖲𝖯 is directed or oriented is 𝖼𝗈𝖭𝖯-complete (Corollary B.3 and Corollary B.4).

5 From oriented VCSPs to conditionally-smooth fitness landscapes

One of these nice features of our two natural subclasses of directed and oriented 𝖵𝖢𝖲𝖯s is that they let us capture when fitness landscapes are both effective-for-all and efficient-for-many local search algorithms. Directed 𝖵𝖢𝖲𝖯s capture the semismooth fitness landscapes that are effective-for-all local search algorithms, but that have no known efficient algorithms. Oriented 𝖵𝖢𝖲𝖯s are then a further restriction to capture those semismooth fitness landscapes that are efficient-for-many local search algorithms. By focusing on the main aspect of acyclicity that makes oriented 𝖵𝖢𝖲𝖯 tractable, we can generalize that class to a slightly larger class of conditionally-smooth fitness landscapes that are also single-peaked (and so effictive-for-all local search algorithms) but also recognizable from the implementing 𝖵𝖢𝖲𝖯-instance.

The acyclicity of an oriented 𝖵𝖢𝖲𝖯-instance (Proposition A.5) lets us define a strict partial order as the transitive closure of the constraint graph and the corresponding down sets j={i|ij}. As we show later, what makes oriented 𝖵𝖢𝖲𝖯s efficient for many local search algorithms is that this order respects conditional independence (from Algorithm 1). Specifically Proposition A.7: for oriented 𝖵𝖢𝖲𝖯-instance 𝒞, y{0,1}j 𝖢𝗈𝗇𝖽𝗂𝗍𝗂𝗈𝗇𝖺𝗅𝗅𝗒𝖲𝗂𝗀𝗇𝖨𝗇𝖽𝖾𝗉𝖾𝗇𝖽𝖾𝗇𝗍(𝒞,j,j,y)=True. Proposition A.7 is a powerful defining feature of oriented 𝖵𝖢𝖲𝖯s, but it is more powerful (and restrictive) than necessary for efficiency. To get our definition of the larger class of conditionally-smooth fitness landscapes, we can relax from conditional sign independence for any background y{0,1}j to just a single background y=x[j] where x is the peak of a single-peaked landscape:

Definition 8.

Given a strict partially ordered set ([n],) and j={i|ij}, we call a fitness landscape f on {0,1}n a -smooth fitness landscape with optimum x when for all j[n] and x{0,1}n, if x[j]=x[j] then f(x[jxj])>f(x[jxj¯]).888Thus -smooth fitness landscapes are just smooth fitness landscapes. We say f is a conditionally-smooth fitness landscape if there exists some such that f is -smooth.

Conditionally-smooth landscapes generalize both oriented 𝖵𝖢𝖲𝖯s and recursively combed AUSOs (Definition A.8). Although conditionally-smooth landscapes are not always semismooth, they are singled peaked and have direct ascents from any assignment to the peak:

Proposition 9.

A conditionally-smooth fitness landscape has only one local (thus global) peak at x and given any initial assignment x0, there exists an ascent to x of Hamming distance (i.e., length n).

Proof.

Let f be a -smooth landscape. Take any assignment xx and let i be the -smallest index such that xixi. Then f(x[ixi¯])>f(x). Unlike with directed or oriented 𝖵𝖢𝖲𝖯s, we can check if a binary Boolean 𝖵𝖢𝖲𝖯 instance implements a fitness landscape that is conditionally smooth in polynomial time. In fact, if the 𝖵𝖢𝖲𝖯 does implement a conditionally-smooth fitness landscape then our recognition Algorithm 3 even returns a partial order and the preferred assignment x such that 𝒞 is -smooth. The overall approach is similar to checking if a 𝖵𝖢𝖲𝖯 is smooth (i.e., -smooth) with the difference being that subsequent calls to 𝖢𝗈𝗇𝖽𝗂𝗍𝗂𝗈𝗇𝖺𝗅𝗅𝗒𝖲𝗂𝗀𝗇𝖨𝗇𝖽𝖾𝗉𝖾𝗇𝖽𝖾𝗇𝗍(𝒞,i,S,y) adjust the set of fixed variables S and background assignment y based on previous calls. This gives the 𝖢𝗈𝗇𝖽𝗂𝗍𝗂𝗈𝗇𝖺𝗅𝗅𝗒𝖲𝗆𝗈𝗈𝗍𝗁(𝒞) algorithm (Algorithm 3). This algorithm calls 𝖢𝗈𝗇𝖽𝗂𝗍𝗂𝗈𝗇𝖺𝗅𝗅𝗒𝖲𝗂𝗀𝗇𝖨𝗇𝖽𝖾𝗉𝖾𝗇𝖽𝖾𝗇𝗍 at most (n2) times for an overall runtime of (n2)Δ(𝒞) (for details of the analysis, see Appendix B.3).

Algorithm 3 𝖢𝗈𝗇𝖽𝗂𝗍𝗂𝗈𝗇𝖺𝗅𝗅𝗒𝖲𝗆𝗈𝗈𝗍𝗁(𝒞). Checking if a 𝖵𝖢𝖲𝖯 implements a -smooth landscape.

6 Efficient local search in conditionally-smooth landscapes

Local search starts at some initial assignment x0 and takes steps to assignments x1,x2,,xT with xT as a local peak. If, additionally, for every 0t<T we have f(xt+1)>f(xt) then local search followed an ascent. For an arbitrary local search algorithm 𝖠 we let 𝖠ft(x) denote t steps of 𝖠 from x on fitness landscape f.

Definition 10.

Given a polynomial p(n), we say that an ascent-following999One can modify Footnote 9 to apply to ascent-biased algorithms (Appendix C.2) or jumping algorithms (Appendix C.4) instead of just ascent-following local search algorithms – but this makes the definition more unwieldy and unintuitive. We want to present poly-bypass algorithms as just a simple warm-up example to get at the main ideas of our later proofs. So here we focus on just ascent-following poly-bypass for simplicity, and go into the nuance of stochastic, ascent-biased, and jumping rules when we focus on proving even tighter bounds for specific popular examples of those local search algorithms. local search algorithm A is a p(n)-bypass ascent following local search algorithm if given any f, any corresponding run x0,x1,,xT of A on f, and all s[Tp(n)], we have that t=ss+p(n)ϕ+(xt) is empty (with high probability, for randomized algorithms). If some polynomial p(n) exists, but its specific form is not important to us, then we say that the algorithm is a poly-bypass ascent-following local search algorithm.

For a p(n)-bypass algorithm, any index i that could have flipped to increase fitness at some step s (i.e., iϕ(xs)), will become an index that cannot be flipped to increase fitness at some point in the subsequent p(n) steps. This can happen either because the variable with index i flips or because some other indexes flip in a way that makes a flip at i no longer fitness increasing. In other words, no potential fitness-increasing flip was bypassed for more than p(n) steps. Hence, the name.

Now, we can easily show that conditionally-smooth landscapes are efficient for p(n)-bypass local search algorithms.

Theorem 11.

On a -smooth landscape f on n bits, given any initial assignment x0 at Hamming distance m(n) to the fitness peak x, any p(n)-bypass local search algorithm starting at initial assignments x0 takes at most mp(n) steps to find the peak.

Proof.

We prove this by induction on m. For m=0, x0=x and local search finishes without taking a step. Now we assume the inductive hypothesis is true for Hamming distance m1 and show it is true if the Hamming distance between x0 and x is m. Let i be the -smallest index such that xi0xi. Since the algorithm is p(n)-bypass, sometime by the p(n)th step, it will be at an assignment such that the ith bit doesn’t want to flip. Since i was -smallest index such that xi0xi that means that the ith will always want to be in state xi and once it flips, it won’t flip back because the algorithm is ascent-following, so xip(n)=xi. Thus xp(n) has at least one more variable assignment in common with x than x0 did, so the Hamming distance between xp(n) and x is m1. By the inductive hypothesis, the p(n)-bypass algorithm will find the fitness peak in at most (m1)p(n) steps starting from xp(n). This gives us a total number of steps of less than mp(n).

For a specific local search algorithm, the bound in Theorem 11 can be rather loose. To provide tighter bounds on the number of steps taken by many popular local search algorithms, we will need a bit more fine-grained notation and more careful proofs. However, much like the proof of Theorem 11, all these proofs will rest on showing a bound on how long it takes to fix -minimal indexes that disagree with x and repeatedly applying that bound until the assignments agree (Lemma 13).

To show that conditionally-smooth landscapes (and thus also oriented 𝖵𝖢𝖲𝖯s) are efficient for many popular local search algorithms with tighter bounds, we need to state Lemma 13 precisely. This requires us to create a partition of the n indexes and show that many local search algorithms quickly and “permanently” fix variables with indexes progressing along the levels of this partition. Given a poset ([n],) and variable index i[n], define the upper set of i as i={j|ij}. We partition [n] into height([n],)-many level sets defined as Sl={i|height(i,)=l} where height(S,) is the height of the poset (S,). Additionally we define S0=, S<l=k=0l1Sk, and S>l=k=l+1nSk. We relate these partitions to an assignment x via a conditionally-smooth landscape specific refinement of in- and out-maps:

Definition 12.

Given a -smooth landscape f on n bits and x an assignment, we define the maps ϕ,ϕ:{0,1}n2[n] by:

  • iϕ(x) if for all ji we have jϕ(x) (we say i is correct at x), and

  • iϕ(x) if iϕ+(x) but for all ji we have jϕ(x) (we say i is at border at x).

Note that given any ascent x0,x1,,xT in a conditionally-smooth landscape, we have ϕ(x0)ϕ(x1)ϕ(xT)=[n]. We refer to the set ϕ(x)¯:=[n]ϕ(x) as the free indices at x. For an assignment x, define heightf(x) (and widthf(x)) as the height (and width) of the poset (ϕ(x)¯,). Note that for x with height(x)=l,101010If we define Xl as the set of all assignments x with height(x)=l, it is important to note that the resulting sets X0,,Xheight(,[n]) are not necessarily monotonic in fitness. There can exist x at height(x)=l and y,z with height l1 such that f(y)<f(x)<f(z). Thus, even if we expressed our results in terms of sets of assignments (i.e., in the space of the fitness landscape rather than the more compact space of the representation that we use) our approach in this paper is still not a fitness-level method of the sort often used in the analysis of randomized search heuristics [52, 12, 23]. we have S>lϕ(x), Slϕ(x)ϕ(x), and, for xx, ϕ(x)Sl. In other words, if x is at height l0 then all the variables with indexes at higher levels are set correctly, all free indexes at level l are at the border, and at least one index at level l is free. This also means that ϕ(x[ϕ(x)x[ϕ(x)]¯])¯S<l.

Lemma 13.

Given a -smooth fitness landscape f on n bits and any assignment x with l:=heightf(x), let Y:Ω×{0,1}n be a stochastic process such that Yt𝖠ft(x) is the random variable of outcomes of t applications of the local search step algorithm 𝖠f1 starting from x and let the random variable τ<l(ω):=inf{t|ϕ(Yt(ω))¯S<l} be the number of steps to decrement height. If the expected number of steps to decrement height is:

𝔼{τ<l(ω)}p(n,l)q(n) (2)

then the expected total number of steps taken by 𝖠 to find the peak from an initial assignment x0 is l=1heightf(x0)p(n,l)heightf(x0)q(n)height()q(n).

Proof.

This follows by induction on 0pt[x0] and linearity of expected value. We use Lemma 13 to show that conditionally-smooth fitness landscapes are efficient-for-many local search algorithms, whether they follow ascents (𝖱𝖺𝗇𝖽𝗈𝗆𝖠𝗌𝖼𝖾𝗇𝗍; Proposition 14), occasionally step to adjacent assignments of lower fitness (𝖲𝗂𝗆𝗎𝗅𝖺𝗍𝖾𝖽𝖠𝗇𝗇𝖾𝖺𝗅𝗂𝗇𝗀; Proposition 15), or even if they step to non-adjacent assignments of higher fitness (𝖱𝖺𝗇𝖽𝗈𝗆𝖩𝗎𝗆𝗉; Proposition 16).

Since Lemma 13 is expressed in terms of a stochastic process, we begin by applying it to the prototypical stochastic local search algorithm: 𝖱𝖺𝗇𝖽𝗈𝗆𝖠𝗌𝖼𝖾𝗇𝗍 [22, 29, 39]. Given an assignment x, the step 𝖱𝖺𝗇𝖽𝗈𝗆𝖠𝗌𝖼𝖾𝗇𝗍f1 simply returns a fitter adjacent assignment uniformly at random. Formally, if YRA(x)𝖱𝖺𝗇𝖽𝗈𝗆𝖠𝗌𝖼𝖾𝗇𝗍f1(x) then:

Pr{YRA(x)=x[ixi¯]}={1|ϕ+(x)| if iϕ+(x)0otherwise (3)

By bounding the expected number of steps to decrement height (Lemma C.1) and applying Lemma 13 we bound the expected total number of steps for 𝖱𝖺𝗇𝖽𝗈𝗆𝖠𝗌𝖼𝖾𝗇𝗍:

Proposition 14 (Appendix C.1).

On a -smooth landscape f on n bits, the expected number of steps taken by 𝖱𝖺𝗇𝖽𝗈𝗆𝖠𝗌𝖼𝖾𝗇𝗍 to find the peak from initial assignment x0 is:

|ϕ(x0)¯|+widthf(x0)(1+logwidthf(x0))(heightf(x0)12) (4)
n+width()(1+logwidth())(height()12). (5)

Good bounds are also possible for deterministic ascent-following algorithms like various history-based pivot rules [2, 8, 14, 55] that we discuss in Appendix C.3. But even if an ascent-following algorithm is not efficient on conditionally-smooth landscapes, it can become efficient through combination with 𝖱𝖺𝗇𝖽𝗈𝗆𝖠𝗌𝖼𝖾𝗇𝗍. Any ascent-following local search algorithm 𝖠 can be made into ϵ-𝗌𝗁𝖺𝗄𝖾𝗇𝖠 like this: with probability 1ϵ take take a step according to 𝖠, and with probability ϵ take a step according to 𝖱𝖺𝗇𝖽𝗈𝗆𝖠𝗌𝖼𝖾𝗇𝗍. Since variables with indexes in ϕ(x) will never be unflipped by ascents, this combined algorithm’s expected runtime is less than an 1/ϵ-multiple of the bound in Proposition 14 (Proposition C.2).

Lemma 13 also applies to algorithms that occasionally take downhill steps like simulated annealing [1]. Formally, if Yt+1SA(x)𝖲𝗂𝗆𝗎𝗅𝖺𝗍𝖾𝖽𝖠𝗇𝗇𝖾𝖺𝗅𝗂𝗇𝗀f1(xt) then

Pr{Yt+1SA=y}={1n if iϕ+(x) and y=x[ixi¯]1nrt(f(xt)f(xt[ixit¯])) if iϕ(x) and y=x[ixi¯]1|ϕ+(x)|nZ|ϕ(x)|n if y=x (6)

where the downstep probability rt(Δf)0 monotonically as t for any Δf>0 and Z=1|ϕ(x)|iϕ(x)rt(f(xt)f(xt[ixit¯])) is the average downstep probability. A popular choice of downstep probability is rt(Δf)=exp(ΔfK(t)) with K(t) a sequence of temperatures strictly decreasing to 0. But any downstep probability can be used to define a burn-in time τα=inf{t|rt(1)αn} that is a property of the algorithm and independent of the particular problem-instance (i.e., independent of the fitness landscape).

Proposition 15 (Appendix C.2).

On a conditionally-smooth fitness landscape f on n bits, the expected number of steps taken by 𝖲𝗂𝗆𝗎𝗅𝖺𝗍𝖾𝖽𝖠𝗇𝗇𝖾𝖺𝗅𝗂𝗇𝗀 to find the peak is τα+n2(exp(α)1)α where τα=inf{t|rt(1)αn}.

𝖱𝖺𝗇𝖽𝗈𝗆𝖠𝗌𝖼𝖾𝗇𝗍 and 𝖲𝗂𝗆𝗎𝗅𝖺𝗍𝖾𝖽𝖠𝗇𝗇𝖾𝖺𝗅𝗂𝗇𝗀 move to adjacent assignments, changing at most one variable at a time, and so require at least a linear number of steps. But Lemma 13 also applies to local search algorithms that jump to non-adjacent assignments. Some such algorithms like 𝖠𝗇𝗍𝗂𝗉𝗈𝖽𝖺𝗅𝖩𝗎𝗆𝗉, 𝖩𝗎𝗆𝗉𝖳𝗈𝖡𝖾𝗌𝗍, and 𝖱𝖺𝗇𝖽𝗈𝗆𝖩𝗎𝗆𝗉 are especially popular on semismooth fitness landscapes since flipping any combination of variables with indexes in ϕ+(x) results in a fitness increasing step [24, 29, 47]. But algorithms that take steps to non-adjacent assignments are also used in other contexts like the Kernighan-Lin heuristic for 𝖬𝖺𝗑𝖢𝗎𝗍 [35]. Such algorithms can exploit short but wide partial orders. For example on -smooth landscapes, the number of steps taken by deterministic algorithms like 𝖠𝗇𝗍𝗂𝗉𝗈𝖽𝖺𝗅𝖩𝗎𝗆𝗉, 𝖩𝗎𝗆𝗉𝖳𝗈𝖡𝖾𝗌𝗍 and Kernighan-Lin are independent of width(), taking at most height()-steps (Propositions C.8 and C.10). Picking uniformly at random which subset of improving indexes to include in a jump – as done by the like 𝖱𝖺𝗇𝖽𝗈𝗆𝖩𝗎𝗆𝗉 algorithm (see Equation (17) in Appendix C.4) – requires only a log(width())-factor more steps than the deterministic jump rules:

Proposition 16 (Appendix C.4).

Let f be a conditionally-smooth landscape and x0 some assignment. The expected number of steps that 𝖱𝖺𝗇𝖽𝗈𝗆𝖩𝗎𝗆𝗉 takes to find the peak is at most (log(0pt[x0])+2)0pt[x0].

Thus, we see that many local search algorithms can efficiently find the peak in conditionally-smooth fitness landscapes in a quadratic or fewer number of steps.

7 Inefficient local search in conditionally-smooth landscapes

Finally, in this section, we want to argue that the effectiveness of many local search algorithms on conditionally-smooth landscapes is not a trivial observation. We do this by showing that conditionality-smooth landscapes are not tractable for some algorithms that are often considered to be very good local search algorithms (but that happen to not be poly-bypass). Specifically, we will show that oriented 𝖵𝖢𝖲𝖯s can represent families of landscapes where 𝖲𝗍𝖾𝖾𝗉𝖾𝗌𝗍𝖠𝗌𝖼𝖾𝗇𝗍 takes an exponential number of steps; and that conditionally-smooth landscapes include families of semismooth landscapes where 𝖱𝖺𝗇𝖽𝗈𝗆𝖥𝖺𝖼𝖾𝗍 takes a superpolynomial number of steps. In other words, conditionally-smooth landscapes are expressive enough to contain very complicated kinds of fitness landscapes.

While studying Hopfield networks, Haken and Luby [20] created a family of binary Boolean 𝖵𝖢𝖲𝖯s with exponentially long steepest ascents. Here we show that the Haken-Luby 𝖵𝖢𝖲𝖯 is oriented and has pathwidth 3. The Haken-Luby 𝖵𝖢𝖲𝖯 has variables with indexes {(k,i)|k[n],i[7]} where each set of seven variables {(k,1),(k,2),(k,7)} forms a gadget. The gadgets form a chain by connecting (k,7) to (k1,1). The magnitude of the constraints on the kth module is roughly proportional to Mk=56(6k6) and the exact constraints, with the exception of c(n,1)=(6Mn+24)K, where K=2n+1 is constant for the instance, are given by Figure 2. For example, c(k,5),(k,7)=(2Mk+4)K and c(k,7),(k1,1)=MkK. In Figure 2 we also included the direction of the constraints.

Figure 2: Haken-Luby gadget with Mk=56(6k6), ϵk=n+1k, and K=2n+1. Constraints of the kth of n gadgets are shown: weights of unary constraints are next to their variables and weights of binary constraints are above the edges that specify their scope. Arcs are oriented according to Definition 2, showing that the instance is oriented. Dotted arcs and vertices illustrate the connection to the neighboring gadgets. For the boundaries: the unary of (n,1) is (6Mn+24)K>0, M1=0 and there is no binary constraint c(1,7),(0,1).
Proposition 17.

Haken-Luby 𝖵𝖢𝖲𝖯 is an oriented 𝖵𝖢𝖲𝖯.

Proof.

It suffices to check the constraints in Figure 2 against Definition 6. For example, check the constraint with scope S={(k,5),(k,7)} and weight cS=(2Mk+4)K<0. First, look at c^(k,5)(x,S): among all partial assignments in {0,1}{(k,4),(k,6)}, only the assignment that sets x(k,4)=1 and x(k,6)=1 yields a non-negative c^(k,5)(11,S)=2(2Mk+6)K(2Mk+7)K=(2Mk+5)K>0; since |cS|=(2Mk+4)K(2Mk+5)K=c^(k,5)(11,S) it follows that (k,7)(k,5). Second, look at c^(k,7)(x,S): the assignment that sets x(k,4)=1,x(k,6)=0 and x(k1,1)=0 yields c^(k,7)(100,S)=((11)Mk+(21))K=K>0; since |cS|=(2Mk+4)K>K=c^(k,7)(100,S), it follows that that (k,5)(k,7). The other constraints can be checked similarly.

Proposition 18.

Haken-Luby 𝖵𝖢𝖲𝖯 has pathwidth 3.111111For standard definitions of pathwidth/treewidth, see [9].

Proof.

()

Path decomposition for k-th gadget: {(k+1,7),(k,1)}, {(k,1),(k,2),(k,3),(k,4)}, {(k,3),(k,4),(k,5),(k,6)}, {(k,4),(k,5),(k,6),(k,7)}, {(k,7),(k1,1)}.

()

Contracting (k,3), (k,1), (k,2) and (k,4) yields a K4 minor.

Proposition 17 and 11 together with Haken and Luby’s [20] proof that Haken-Luby 𝖵𝖢𝖲𝖯s have an exponential steepest ascent, gives us:

Theorem 19 (Haken and Luby [20]).

There are oriented 𝖵𝖢𝖲𝖯s on 7n bits with constraint graphs of pathwidth 3 such that 𝖲𝗍𝖾𝖾𝗉𝖾𝗌𝗍𝖠𝗌𝖼𝖾𝗇𝗍 follows an ascent of length 2n.

Unaware of much older Haken and Luby [20], Cohen et al. [7] claimed to show pathwidth 7 as best lower bound for a 𝖵𝖢𝖲𝖯 with exponential steepest ascents, which was later improved to pathwidth 4 [33]. Since Footnote˜11 shows that the Haken-Luby 𝖵𝖢𝖲𝖯 has pathwidth 3, this means it was the lowest pathwidth construction all along. That Haken-Luby is oriented gives the bonus that the resulting fitness landscapes are semismooth – something that was not shown for the other constructions [7, 33]. Very recently, Kaznatcheev and Vazquez Alferez [34] and van Marle [51] produced a construction similar to Haken and Luby [20] that reduced the bound to pathwidth 2, and showed that their construction is an oriented 𝖵𝖢𝖲𝖯. This is the lowest possible pathwidth with exponential steepest ascent because all ascents are quadratic for tree-structured 𝖵𝖢𝖲𝖯s [32]. So some of the simplest oriented 𝖵𝖢𝖲𝖯s are already hard for greedy local search.

Now, we prove that conditionally-smooth landscape are intractable for 𝖱𝖺𝗇𝖽𝗈𝗆𝖥𝖺𝖼𝖾𝗍 [17], by showing that conditionally-smooth landscapes can express Matoušek AUSOs [17, 40].

Definition 20 (Gärtner [17], Matoušek [40]).

Given any n parity functions Pi:{0,1}Ri{0,1} with scopes such that iRi[i], a landscape on {0,1}n with fitness function f(x)=i=1n2niPi(x[Ri]) is a Matoušek AUSO.

AUSOs are often defined just in terms of their outmap (ϕ+), without specific fitness values, so we had to make a specific choice in Definition 20. Our choice of fitness function, however, is the simplest one in terms of overall arity that can can implement the out-map of the Matoušek AUSOs. Specifically, Batman [3] showed that any 𝖵𝖢𝖲𝖯 implementing the same out-map as Matoušek AUSOs must have non-zero constraints with scopes Ri. Overall, the fitness function of a Matousek AUSO is very well behaved, in particular:

Proposition 21.

If f is a Matoušek AUSO on n bits then for all k[n] and y{0,1}[k1] there is a preferred assignment b{0,1} such that z{0,1}[n][k]f(ybz)>f(yb¯z).

Proof.

This follows from rewriting the big sum for f in 3 terms:

f(xby)=(2n(k1)i=1k12(k1)iPi(y[Ri])))2nkPk(yb[Rk])(2nki=1nk2iPi(ybz[Ri])) (7)

and noting that the first summand is independent of b and z, the last summand can sum to at most (2nk1), and that the middle summand is independent of z and saves us 2nk in the sum if we set b=Parity(y[Rk{k}])¯.

From this, it follows that:

Corollary 22.

Matoušek AUSOs are both conditionally-smooth and semismooth.

Given the similarity of Proposition 21 and Proposition A.7, if we generalized the definition of oriented binary 𝖵𝖢𝖲𝖯s to arbitrary arity then Matoušek AUSOs would be oriented. The real power of Corollary 22 is that we can combine it with the super-polynomial lower-bound on the runtime of 𝖱𝖺𝗇𝖽𝗈𝗆𝖥𝖺𝖼𝖾𝗍 (Theorem 4.2 from Gärtner [17]) to give:

Theorem 23 (Gärtner [17]).

There exist families of fitness landscapes that are both conditionally-smooth and semismooth such that 𝖱𝖺𝗇𝖽𝗈𝗆𝖥𝖺𝖼𝖾𝗍 follows an ascent with expected length exp(Θ(n)).

Given that 𝖱𝖺𝗇𝖽𝗈𝗆𝖥𝖺𝖼𝖾𝗍 is the best known algorithm for semismooth fitness landscapes, it is surprising to see it performing at its worst-case on conditionally-smooth landscapes.

8 Conclusion and Future Work

Overall, we showed that conditionally-smooth fitness landscapes – a polynomial-time testable structural property of 𝖵𝖢𝖲𝖯s that generalizes the natural notion of oriented 𝖵𝖢𝖲𝖯s – are an expressive subclass of Boolean 𝖵𝖢𝖲𝖯s for which many (but not all) popular local search algorithm are both effective and efficient. Future work could further generalize conditionally-smooth landscapes from Boolean to higher-valence domains. This might allow us to engage with directed 𝖵𝖢𝖲𝖯s where each strongly connected component is of small size DO(logn) by modeling the whole connected component as one domain with 2D values. Would this class still be efficient-for-many local search algorithms? Is local search fixed-parameter tractable when parameterized by the size of the 𝖵𝖢𝖲𝖯’s largest strongly connected component?

We hope that our results on conditionally-smooth fitness landscapes contribute to a fuller understanding of when local search is both effective and efficient. This is interesting for theory as it grows our understanding of parameterized complexity, especially for 𝖯𝖫𝖲. This theory can guide us to what properties practical fitness landscapes might have in the real-world cases where local search seems to work well. Finally, we are excited about the use of these results for theory-building in the natural sciences. When local search is used by nature, we often do not have perfect understanding of which local search algorithm nature follows. But we might have strong beliefs about nature’s algorithm being efficient. In this case, a good understanding of what landscapes are efficient-for-many local search algorithms can help us to reduce the set of fitness landscapes that we consider theoretically possible in nature. This can be especially useful in fields like evolutionary biology [30, 31] and economics [45] where we have only limited empirical measurements of nature’s fitness landscapes.

References

  • [1] Emile Aarts and Jan Karel Lenstra, editors. Local Search in Combinatorial Optimization. Princeton University Press, Princeton, NJ, USA, 2003.
  • [2] Yoshikazu Aoshima, David Avis, Theresa Deering, Yoshitake Matsumoto, and Sonoko Moriyama. On the existence of Hamiltonian paths for history based pivot rules on acyclic unique sink orientations of hypercubes. Discrete Applied Mathematics, 160(15):2104–2115, 2012. doi:10.1016/J.DAM.2012.05.023.
  • [3] Taylan Batman. Arity of polynomials for equivalence classes of pseudo-Boolean functions. Bachelor’s thesis, Utrecht University, 2025.
  • [4] Umberto Bertelè and Francesco Brioschi. On non-serial dynamic programming. Journal of Combinatorial Theory, Series A, 14(2):137–148, 1973. doi:10.1016/0097-3165(73)90016-2.
  • [5] Michaela Borzechowski. The complexity class polynomial local search (PLS) and PLS-complete problems. Bachelor’s thesis, Freie Universitat Berlin, 2016.
  • [6] Clément Carbonnel, Miguel Romero, and Stanislav Živný. The complexity of general-valued constraint satisfaction problems seen from the other side. SIAM Journal on Computing, 51(1):19–69, 2022. doi:10.1137/19M1250121.
  • [7] David A Cohen, Martin C Cooper, Artem Kaznatcheev, and Mark Wallace. Steepest ascent can be exponential in bounded treewidth problems. Operations Research Letters, 48:217–224, 2020. doi:10.1016/J.ORL.2020.02.010.
  • [8] William H. Cunningham. Theoretical properties of the network simplex method. Mathematics of Operations Research, 4(2):196–208, 1979. doi:10.1287/MOOR.4.2.196.
  • [9] Marek Cygan, Fedor V Fomin, 𝖫ukasz Kowalik, Daniel Lokshtanov, Dániel Marx, Marcin Pilipczuk, Michał Pilipczuk, and Saket Saurabh. Parameterized algorithms. Springer International Publishing, 2015. doi:10.1007/978-3-319-21275-3.
  • [10] Duc-Cuong Dang, Anton Eremeev, and Per Kristian Lehre. Non-elitist evolutionary algorithms excel in fitness landscapes with sparse deceptive regions and dense valleys. In Proceedings of the Genetic and Evolutionary Computation Conference, pages 1133–1141, 2021. doi:10.1145/3449639.3459398.
  • [11] Duc-Cuong Dang and Per Kristian Lehre. The slo hierarchy of pseudo-boolean functions and runtime of evolutionary algorithms. In Proceedings of the Genetic and Evolutionary Computation Conference, pages 1551–1559, 2024.
  • [12] Benjamin Doerr and Frank Neumann, editors. Theory of Evolutionary Computation—Recent Developments in Discrete Optimization. Springer, 2020. Also available at http://www.lix.polytechnique.fr/Labo/Benjamin.Doerr/doerr_neumann_book.html.
  • [13] MR Emamy-K. The worst case behavior of a greedy algorithm for a class of pseudo-boolean functions. Discrete Applied Mathematics, 23(3):285–287, 1989. doi:10.1016/0166-218X(89)90018-8.
  • [14] Yahya Fathi and Craig Tovey. Affirmative action algorithms. Mathematical Programming, 34(3):292–301, 1986. doi:10.1007/BF01582232.
  • [15] John Fearnley, Spencer Gordon, Ruta Mehta, and Rahul Savani. Unique end of potential line. Journal of Computer and System Sciences, 114:1–35, 2020. doi:10.1016/J.JCSS.2020.05.007.
  • [16] Yuan Gao, Bernd Gärtner, and Jourdain Lamperski. A new combinatorial property of geometric unique sink orientations. arXiv preprint arXiv:2008.08992, 2022.
  • [17] Bernd Gärtner. The random-facet simplex algorithm on combinatorial cubes. Random Structures & Algorithms, 20(3):353–381, 2002. doi:10.1002/RSA.10034.
  • [18] Teofilo F. Gonzalez, editor. Handbook of Approximation Algorithms and Metaheuristics: Methologies and Traditional Applications, volume 1. Chapman and Hall/CRC, New York, 2 edition, 2018.
  • [19] Mika Göös, Alexandros Hollender, Siddhartha Jain, Gilbert Maystre, William Pires, Robert Robere, and Ran Tao. Further collapses in tfnp. arXiv preprint arXiv:2202.07761, 2022. arXiv:2202.07761.
  • [20] Armin Haken and Michael Luby. Steepest descent can take exponential time for symmetric connection networks. Complex Syst., 2(2):191–196, April 1988. URL: http://www.complex-systems.com/abstracts/v02_i02_a03.html.
  • [21] Peter L Hammer, Bruno Simeone, Th M Liebling, and Dominique de Werra. From linear separability to unimodality: A hierarchy of pseudo-boolean functions. SIAM Journal on Discrete Mathematics, 1(2):174–184, 1988. doi:10.1137/0401019.
  • [22] Thomas Dueholm Hansen and Uri Zwick. Random-edge is slower than random-facet on abstract cubes. Leibniz International Proceedings in Informatics, 55:51–1, 2016. doi:10.4230/LIPIcs.ICALP.2016.51.
  • [23] Jun He and Yuren Zhou. Drift analysis with fitness levels for elitist evolutionary algorithms. Evolutionary Computation, 33(1):1–25, 2025. doi:10.1162/EVCO_A_00349.
  • [24] Ronald A Howard. Dynamic programming and Markov Processes. John Wiley, 1960.
  • [25] Thomas Jansen and Ingo Wegener. Evolutionary algorithms-how to cope with plateaus of constant fitness and when to reject strings of the same fitness. IEEE Transactions on Evolutionary Computation, 5(6):589–599, 2002. doi:10.1109/4235.974841.
  • [26] Johnny Jermias and Lindawati Gani. Integrating business strategy, organizational configurations and management accounting systems with business unit effectiveness: a fitness landscape approach. Management Accounting Research, 15(2):179–200, 2004.
  • [27] Robert G Jeroslow. The simplex algorithm with the pivot rule of maximizing criterion improvement. Discrete Mathematics, 4(4):367–377, 1973. doi:10.1016/0012-365X(73)90171-4.
  • [28] David S. Johnson, Christos H. Papadimitriou, and Mihalis Yannakakis. How easy is local search? Journal of Computer and System Sciences, 37(1):79–100, 1988. doi:10.1016/0022-0000(88)90046-3.
  • [29] Gil Kalai. Combinatorics with a geometric flavor. In Visions in Mathematics: GAFA 2000 Special volume, Part II, pages 742–791. Springer, 2000.
  • [30] Artem Kaznatcheev. Computational complexity as an ultimate constraint on evolution. Genetics, 212(1):245–265, 2019.
  • [31] Artem Kaznatcheev. Algorithmic Biology of Evolution and Ecology. PhD thesis, University of Oxford, 2020.
  • [32] Artem Kaznatcheev, David A Cohen, and Peter Jeavons. Representing fitness landscapes by valued constraints to understand the complexity of local search. Journal of Artificial Intelligence Research, 69:1077–1102, 2020. doi:10.1613/JAIR.1.12156.
  • [33] Artem Kaznatcheev and Melle van Marle. Exponential steepest ascent from valued constraint graphs of pathwidth four. In 30th International Conference on Principles and Practice of Constraint Programming (CP 2024), pages 17:1–17:16, 2024. doi:10.4230/LIPIcs.CP.2024.17.
  • [34] Artem Kaznatcheev and Sofia Vazquez Alferez. Greed is slow on sparse graphs of oriented valued constraints. In 31st International Conference on Principles and Practice of Constraint Programming (CP 2025), pages 44:1–44:13, 2025. doi:10.4230/LIPIcs.CP.2025.18.
  • [35] Brian W Kernighan and Shen Lin. An efficient heuristic procedure for partitioning graphs. The Bell system technical journal, 49(2):291–307, 1970. doi:10.1002/J.1538-7305.1970.TB01770.X.
  • [36] Victor Klee and George J Minty. How good is the simplex algorithm. Inequalities, 3(3):159–175, 1972.
  • [37] Mark W. Krentel. On finding and verifying locally optimal solutions. SIAM Journal on Computing, 19(4):742–749, 1990. doi:10.1137/0219052.
  • [38] Daniel A Levinthal. Adaptation on rugged landscapes. Management Science, 43(7):934–950, 1997.
  • [39] J. Matousek and T. Szabo. RANDOM EDGE can be exponential on abstract cubes. Advances in Mathematics, 204:262–277, 2006.
  • [40] Jiří Matoušek. Lower bounds for a subexponential optimization algorithm. Random Structures & Algorithms, 5(4):591–607, 1994. doi:10.1002/RSA.3240050408.
  • [41] Jiří Matoušek. The number of unique-sink orientations of the hypercube. Combinatorica, 26(1):91–99, 2006. doi:10.1007/S00493-006-0007-0.
  • [42] Wil Michiels, Emile Aarts, and Jan Korst. Theoretical aspects of local search, volume 25. Springer, 2007. doi:10.1007/978-3-540-35854-1.
  • [43] F.J. Poelwijk, D.J. Kiviet, D.M. Weinreich, and S.J. Tans. Empirical fitness landscapes reveal accessible evolutionary paths. Nature, 445:383–386, 2007.
  • [44] F.J. Poelwijk, T.-N. Sorin, D.J. Kiviet, and S.J. Tans. Reciprocal sign epistasis is a necessary condition for multi-peaked fitness landscapes. Journal of Theoretical Biology, 272:141–144, 2011.
  • [45] T Roughgarden. Computing equilibria: A computational complexity perspective. Economic Theory, 42:193–236, 2010.
  • [46] Alejandro A. Schäffer and Mihalis Yannakakis. Simple local search problems that are hard to solve. SIAM Journal on Computing, 20(1):56–87, 1991. doi:10.1137/0220004.
  • [47] Ingo Schurr and Tibor Szabó. Jumping doesn’t help in abstract cubes. In International Conference on Integer Programming and Combinatorial Optimization, pages 225–235. Springer, 2005.
  • [48] Ingo A Schurr. Unique sink orientations of cubes. PhD thesis, ETH Zurich, 2004.
  • [49] Thomas Stützle. Local search algorithms for combinatorial problems: Analysis, Improvements, and New Applications. PhD thesis, TU Darmstadt, 1998.
  • [50] Tibor Szabó and Emo Welzl. Unique sink orientations of cubes. In Proceedings 42nd IEEE Symposium on Foundations of Computer Science, pages 547–555. IEEE, 2001. doi:10.1109/SFCS.2001.959931.
  • [51] Melle van Marle. Complexity of greedy local search for constraint satisfaction. Master’s thesis, Utrecht University, 2025.
  • [52] Ingo Wegener. Methods for the analysis of evolutionary algorithms on pseudo-boolean functions. In Evolutionary Optimization, pages 349–369. Springer, 2002.
  • [53] D.M. Weinreich, R.A. Watson, and L. Chan. Sign epistasis and genetic constraint on evolutionary trajectories. Evolution, 59:1165–1174, 2005.
  • [54] S. Wright. The roles of mutation, inbreeding, crossbreeding, and selection in evolution. In Proc. of the 6th International Congress on Genetics, pages 355–366, 1932.
  • [55] Norman Zadeh. What is the worst case behavior of the simplex algorithm? In Polyhedral computation, volume 48 of CRM Proceedings and Lecture Notes, pages 131–143. American Mathematical Society, Providence, RI, 2009.

Appendix A Appendices

All appendices are available in the full versionof this article at https://arxiv.org/abs/2410.02634v3.
These include all the appendix results (along with their proofs) that are mentioned in the main text:

  • Appendices A, B.2, B.3, C.1, C.2, C.3 and C.4;

  • Corollaries B.3 and B.4;

  • Definition A.8 (adapted from [16] – see also [17, 41]);

  • Lemma C.1;

  • Propositions A.1, A.4, A.5, A.7, B.1, B.2, C.2, C.6, C.8, and C.10; and

  • Theorem A.3.