We propose a novel approach to proving the termination of heapmanipulating programs, which combines separation logic with cyclic proof within a Hoare-style proof system. Judgement...
James Brotherston, Richard Bornat, Cristiano Calca...
A lens is a bidirectional program. When read from left to right, it denotes an ordinary function that maps inputs to outputs. When read from right to left, it denotes an "upd...
Aaron Bohannon, J. Nathan Foster, Benjamin C. Pier...
Machine-checked proofs of properties of programming languages have become a critical need, both for increased confidence in large and complex designs and as a foundation for techn...
Abstract. Many combinatorial problems encountered in practice involve constraints that require that a set of variables take distinct or equal values. The AllDifferent constraint, i...
Decision tree induction techniques attempt to find small trees that fit a training set of data. This preference for smaller trees, which provides a learning bias, is often justifie...
Christian Bessiere, Emmanuel Hebrard, Barry O'Sull...
We investigate soft open constraints. We generalize and unify classes of soft constraints and adapt them to the open setting. We give sufficient conditions for generalized classes ...
This paper deals with the challenging problem of counting the number of solutions of a CSP, denoted #CSP. Recent progress have been made using search methods, such as BTD [15], whi...
Abstract. This paper introduces a generalization of the nvalue constraint that bounds the number of distinct values taken by a set of variables.The generalized constraint (called n...
This paper introduces propagator groups as an abstraction for controlling the execution of propagators as implementations of constraints. Propagator groups enable users of a constr...