## The Logic of Search Algorithms: Theory and Applications (1997)

### Cached

### Download Links

- [www.dcs.st-and.ac.uk]
- [www.dcs.st-and.ac.uk]
- DBLP

### Other Repositories/Bibliography

Venue: | In Principles and Practice of Constraint Programming { CP97 |

Citations: | 5 - 2 self |

### BibTeX

@INPROCEEDINGS{Gent97thelogic,

author = {Ian P. Gent and Judith L. Underwood},

title = {The Logic of Search Algorithms: Theory and Applications},

booktitle = {In Principles and Practice of Constraint Programming { CP97},

year = {1997},

pages = {77--91},

publisher = {Springer}

}

### OpenURL

### Abstract

. Many search algorithms have been introduced without correctness proofs, or proved only with respect to an informal semantics of the algorithm. We address this problem by taking advantage of the correspondence between programs and proofs. We give a single proof of the correctness of a very general search algorithm, for which we provide Scheme code. It is straightforward to implement service functions to implement algorithms such as Davis-Putnam for satisfiability or forward checking (FC) for constraint satisfaction, and to incorporate conflictdirected backjumping (CBJ) and heuristics for variable and value ordering. By separating the search algorithm from problem features, our work should enable the much speedier implementation of sophisticated search methods such as FC-CBJ in new domains, and we illustrate this by sketching an implementation for the Hamiltonian Circuit problem. 1 Introduction The constraint satisfaction community has an excellent record of introducing intelligent se...

### Citations

1075 |
A Computing Procedure for Quantification Theory
- Davis, Putnam
- 1960
(Show Context)
Citation Context ... literal satisfied by the assignment, a positive literal being satisfied by the value true and a negative literal by the value false. The standard algorithm for SAT is the Davis-Putnam (DP) algorithm =-=[6, 5]-=- though we describe it here (as is often done) without pure literal deletion. However we do present it with both a variable- and a value- ordering heuristic. Dp: Variables are, as would be expected, t... |

579 | Where the really hard problems are
- Cheeseman, Kanefsky, et al.
- 1991
(Show Context)
Citation Context ...nodes in a graph exactly once and returning the starting point, while only traversing edges that appear in the graph. The problem is NP-complete and a phase transition in solubility has been observed =-=[3, 7]-=-. Algorithms analogous to forward checking have been given, for example by Martello [15], but we are not aware of CBJ having been described for this problem. In our framework it is more natural to imp... |

533 |
A machine program for theorem-proving
- Davis, Logemann, et al.
- 1962
(Show Context)
Citation Context ... literal satisfied by the assignment, a positive literal being satisfied by the value true and a negative literal by the value false. The standard algorithm for SAT is the Davis-Putnam (DP) algorithm =-=[6, 5]-=- though we describe it here (as is often done) without pure literal deletion. However we do present it with both a variable- and a value- ordering heuristic. Dp: Variables are, as would be expected, t... |

441 |
The formulas-as-types notion of construction
- Howard
- 1980
(Show Context)
Citation Context ...s an expressive logical language together with rules describing properties of types and terms of each type. Types can be interpreted as formulas; this idea is known as the Curry-Howard correspondence =-=[12]-=-. For example, A ! B is the type of functions from A to B, but it also expresses the logical implication that if we know A ! B and A, we know B. More precisely, if we have a proof of A ! B and a proof... |

361 | Dynamic backtracking
- Ginsberg
- 1993
(Show Context)
Citation Context ...terface can be written so that test and enumerate-domain see only values in the original problem. 4 Related Work Following Prosser's introduction of conflict-directed backjumping (CBJ) [19], Ginsberg =-=[8]-=- and Kondrak & van Beek [13] have given proofs of the correctness of CBJ and also related the numbers of nodes searched by different algorithms. The significant advance of our work is in its underlyin... |

350 | Hybrid algorithms for the constraint satisfaction problem
- Prosser
- 1993
(Show Context)
Citation Context ...e algorithm: extending our sketch above into one should be straightforward. Application: Binary Constraint Satisfaction Conflict-directed backjumping was first described in the context of binary CSPs =-=[19]-=- so it is natural to apply our framework to that domain. A problem consists of a number of variables each of which can take a value from a finite domain. Each constraint acts on two variables, and rul... |

235 | A formulae-as-types notion of control
- Griffin
- 1990
(Show Context)
Citation Context ...e evidence of inconsistency, in the form of a conflict set. To get this computational behaviour from the proof, we use the fact that call/cc can be given the type ((ff ! ?) ! ff) ! ff for any type ff =-=[11, 17, 16, 23]-=-. This corresponds to a form a proof by contradiction; if, from the assumption that ff is false, we can prove ff, then we have a contradiction so ff must be true. This form of reasoning is not strictl... |

206 | Using CSP lookback techniques to solve real-world SAT instances
- Bayardo, Schrag
- 1997
(Show Context)
Citation Context ... algorithm DP-CBJ has been reported by Bayardo and Schrag [1]. They have shown that it can outperform the best implementations of DP without CBJ and compete with the best local search methods for SAT =-=[2]-=-. However we are not aware of a formal correctness proof of the algorithm: extending our sketch above into one should be straightforward. Application: Binary Constraint Satisfaction Conflict-directed ... |

204 | Contradicting conventional wisdom in constraint satisfaction
- Sabin, Freuder
- 1994
(Show Context)
Citation Context ...s such as forward checking are often used, and indeed it would not be difficult to implement FC-CBJ in our framework. A more sophisticated propagation technique is `maintaining arc consistency' (MAC) =-=[22]-=-. MAC has been combined with CBJ to yield MAC-CBJ [20] and this algorithm has been extensively studied empirically [10]. However we are not aware of a correctness proof of MAC-CBJ. It is therefore par... |

114 |
An empirical study of phase transitions in binary constraint satisfaction problems
- Prosser
- 1996
(Show Context)
Citation Context ...s as described above in Scheme, and tested our code against special-purpose CBJ code written independently, also in Scheme. 8 When run on problem generated randomly in a standard way (see for example =-=[21]-=-) with 10 variables, 10 values, 23 constraints, and constraint tightness varying from 0.01 to 0.99 in steps of 0.1, the two implementations produced identical results in the solutions found, number of... |

112 | A theoretical evaluation of selected backtracking algorithms
- Kondrak, Beek
- 1997
(Show Context)
Citation Context ...hat test and enumerate-domain see only values in the original problem. 4 Related Work Following Prosser's introduction of conflict-directed backjumping (CBJ) [19], Ginsberg [8] and Kondrak & van Beek =-=[13]-=- have given proofs of the correctness of CBJ and also related the numbers of nodes searched by different algorithms. The significant advance of our work is in its underlying basis in formal semantics ... |

108 |
Computation and Reasoning, A Type Theory for Computer Science
- Luo
- 1994
(Show Context)
Citation Context ...he connection between the proof and the algorithms it proves correct is best described by constructive type theory. Type theories are widely used in the theorem proving and formal methods communities =-=[4, 14, 9]-=-; we outline here the main ideas and how they will be used in this setting. In general, a type theory is an expressive logical language together with rules describing properties of types and terms of ... |

104 |
et al . Implementing Mathematics with the Nuprl
- Constable
- 1986
(Show Context)
Citation Context ...he connection between the proof and the algorithms it proves correct is best described by constructive type theory. Type theories are widely used in the theorem proving and formal methods communities =-=[4, 14, 9]-=-; we outline here the main ideas and how they will be used in this setting. In general, a type theory is an expressive logical language together with rules describing properties of types and terms of ... |

62 |
Extracting Constructive Content from Classical Proofs
- Murthy
- 1990
(Show Context)
Citation Context ...e evidence of inconsistency, in the form of a conflict set. To get this computational behaviour from the proof, we use the fact that call/cc can be given the type ((ff ! ?) ! ff) ! ff for any type ff =-=[11, 17, 16, 23]-=-. This corresponds to a form a proof by contradiction; if, from the assumption that ff is false, we can prove ff, then we have a contradiction so ff must be true. This form of reasoning is not strictl... |

49 |
An evaluation semantics for classical proofs
- Murthy
- 1991
(Show Context)
Citation Context ...e evidence of inconsistency, in the form of a conflict set. To get this computational behaviour from the proof, we use the fact that call/cc can be given the type ((ff ! ?) ! ff) ! ff for any type ff =-=[11, 17, 16, 23]-=-. This corresponds to a form a proof by contradiction; if, from the assumption that ff is false, we can prove ff, then we have a contradiction so ff must be true. This form of reasoning is not strictl... |

35 | MAC-CBJ: Maintaining Arc Consistency with ConflictDirected Backjumping
- Prosser
- 1995
(Show Context)
Citation Context ...it would not be difficult to implement FC-CBJ in our framework. A more sophisticated propagation technique is `maintaining arc consistency' (MAC) [22]. MAC has been combined with CBJ to yield MAC-CBJ =-=[20]-=- and this algorithm has been extensively studied empirically [10]. However we are not aware of a correctness proof of MAC-CBJ. It is therefore particularly interesting to sketch how MAC-CBJ can be imp... |

24 |
Using CSP look-back techniques to solve exceptionnaly hard SAT instances
- Schrag
- 1996
(Show Context)
Citation Context ...ibed above in Scheme, and tested our code against special-purpose DP code with the same heuristics written independently in Common Lisp. 7 We tested 20 random 3-SAT problems (described for example in =-=[1]-=-) with from 100 to 500 clauses in steps of 1 clause. In each of these 8020 tests both implementations found identical solutions in identical numbers of nodes searched. Such experiments provide confide... |

24 | B.M.: The phase transition behaviour of maintaining arc consistency
- Grant, Smith
- 1996
(Show Context)
Citation Context ... more sophisticated propagation technique is `maintaining arc consistency' (MAC) [22]. MAC has been combined with CBJ to yield MAC-CBJ [20] and this algorithm has been extensively studied empirically =-=[10]-=-. However we are not aware of a correctness proof of MAC-CBJ. It is therefore particularly interesting to sketch how MAC-CBJ can be implemented in our framework, and therefore how a proof of its corre... |

22 |
The Theory of LEGO
- Pollack
- 1994
(Show Context)
Citation Context ...ry mathematical language. The Scheme program corresponding to this proof is given in full in the Appendix. This correspondence is informal -- although we have formalized the core of the proof in Lego =-=[14, 18]-=- and extracted a type theoretic program, we have not produced our code by translating that program to Scheme by some verified method. However, the code we present closely follows the structure of the ... |

7 |
An Enumerative Algorithm for Finding Hamiltonian Circuits in a Directed Graph
- Martello
- 1983
(Show Context)
Citation Context ...s that appear in the graph. The problem is NP-complete and a phase transition in solubility has been observed [3, 7]. Algorithms analogous to forward checking have been given, for example by Martello =-=[15]-=-, but we are not aware of CBJ having been described for this problem. In our framework it is more natural to implement CBJ rather than chronological backtracking. We consider the problem for directed ... |

6 |
Aspects of the Computational Content of Proofs
- Underwood
- 1994
(Show Context)
Citation Context |

3 |
Phase transitions in random graphs
- Frank, Martel
- 1995
(Show Context)
Citation Context ...nodes in a graph exactly once and returning the starting point, while only traversing edges that appear in the graph. The problem is NP-complete and a phase transition in solubility has been observed =-=[3, 7]-=-. Algorithms analogous to forward checking have been given, for example by Martello [15], but we are not aware of CBJ having been described for this problem. In our framework it is more natural to imp... |