Results 1 - 10
of
194
ProB: A Model Checker for B
- FME 2003: FORMAL METHODS, LNCS 2805
, 2003
"... We present ProB, an animation and model checking tool for the B method. ProB's animation facilities allow users to gain confidence in their specifications, and unlike the animator provided by the B-Toolkit, the user does not have to guess the right values for the operation arguments or choi ..."
Abstract
-
Cited by 135 (40 self)
- Add to MetaCart
We present ProB, an animation and model checking tool for the B method. ProB's animation facilities allow users to gain confidence in their specifications, and unlike the animator provided by the B-Toolkit, the user does not have to guess the right values for the operation arguments or choice variables. ProB contains a model checker and a constraint-based checker, both of which can be used to detect various errors in B specifications. We present our first experiences in using ProB on several case studies, highlighting that ProB enables users to uncover errors that are not easily discovered by existing tools.
Global Constraints as Graph Properties on Structured Network of Elementary Constraints of the Same Type
, 2000
"... This report introduces a classification scheme for the global constraints. This classification is based on four basic ingredients from which one can generate almost all existing global constraints and come up with new interesting constraints. Global constraints are defined in a very concise way, in ..."
Abstract
-
Cited by 75 (11 self)
- Add to MetaCart
This report introduces a classification scheme for the global constraints. This classification is based on four basic ingredients from which one can generate almost all existing global constraints and come up with new interesting constraints. Global constraints are defined in a very concise way, in term of graph properties that have to hold, where the graph is a structured network of same elementary constraints. Since this classification is based on the internal structure of the global constraints it is also a strong hint for the pruning algorithms of the global constraints. Keywords Constraint, finite domain, global constraint, classification, resource constraint scheduling, graph partitioning, timetabling. 2 Table of contents Table of contents ....................................................................................................................................................... 2 Table of figures.........................................................................
Efficient constraint propagation engines
- Transactions on Programming Languages and Systems
"... This paper presents a model and implementation techniques for speeding up constraint propagation. Three fundamental approaches to improving constraint propagation based on propagators as implementations of constraints are explored: keeping track of which propagators are at fixpoint, choosing which p ..."
Abstract
-
Cited by 62 (9 self)
- Add to MetaCart
(Show Context)
This paper presents a model and implementation techniques for speeding up constraint propagation. Three fundamental approaches to improving constraint propagation based on propagators as implementations of constraints are explored: keeping track of which propagators are at fixpoint, choosing which propagator to apply next, and how to combine several propagators for the same constraint. We show how idempotence reasoning and events help track fixpoints more accurately. We improve these methods by using them dynamically (taking into account current domains to improve accuracy). We define priority-based approaches to choosing a next propagator and show that dynamic priorities can improve propagation. We illustrate that the use of multiple propagators for the same constraint can be advantageous with priorities, and introduce staged propagators that combine the effects of multiple propagators with priorities for greater efficiency. 1
Deriving Filtering Algorithms from Constraint Checkers
- Principles and Practice of Constraint Programming (CP’2004), volume 3258 of LNCS
, 2004
"... Abstract. This reportdeals with global constraints for which the set of solutions can be recognized by an extended finite automaton whose size is bounded by a polynomial in ¦ , where ¦ is the number of variables of the corresponding global constraint. By reformulating the automaton as a conjunction ..."
Abstract
-
Cited by 51 (11 self)
- Add to MetaCart
(Show Context)
Abstract. This reportdeals with global constraints for which the set of solutions can be recognized by an extended finite automaton whose size is bounded by a polynomial in ¦ , where ¦ is the number of variables of the corresponding global constraint. By reformulating the automaton as a conjunction of signature and transition constraints we show how to systematically obtain a filtering algorithm. Under some restrictions on the signature and transition constraints this filtering algorithm achieves arc-consistency. An implementation based on some constraints as well as on the metaprogramming facilities of SICStus Prolog is available. For a restricted class of automata we provide a filtering algorithm for the relaxed case, where the violation cost is the minimum number of variables to unassign in order to get back to a solution. Keywords: Constraint Programming,
The CIFF Proof Procedure for Abductive Logic Programming with Constraints
- In Proceedings JELIA04
, 2004
"... We introduce a new proof procedure for abductive logic programming and present two soundness results. Our procedure extends that of Fung and Kowalski by integrating abductive reasoning with constraint solving and by relaxing the restrictions on allowed inputs for which the procedure can operate ..."
Abstract
-
Cited by 43 (20 self)
- Add to MetaCart
(Show Context)
We introduce a new proof procedure for abductive logic programming and present two soundness results. Our procedure extends that of Fung and Kowalski by integrating abductive reasoning with constraint solving and by relaxing the restrictions on allowed inputs for which the procedure can operate correctly. An implementation of our proof procedure is available and has been applied successfully in the context of multiagent systems.
ProB: An Automated Analysis Toolset for the B Method
- SOFTWARE TOOLS FOR TECHNOLOGY TRANSFER
, 2007
"... We present ProB, a validation toolset for the B method. ProB’s automated animation facilities allow users to gain confidence in their specifications. ProB also contains a model checker and a refinement checker, both of which can be used to detect various errors in B specifications. We describe the u ..."
Abstract
-
Cited by 41 (12 self)
- Add to MetaCart
We present ProB, a validation toolset for the B method. ProB’s automated animation facilities allow users to gain confidence in their specifications. ProB also contains a model checker and a refinement checker, both of which can be used to detect various errors in B specifications. We describe the underlying methodology of ProB, and present the important aspects of the implementation. We also present empirical evaluations as well as several case studies, highlighting that ProB enables users to uncover errors that are not easily discovered by existing tools.
Function Variables for Constraint Programming
, 2003
"... We introduce function variables to constraint programs (CP), variables whose values are one of (exponentially many) possible functions between two sets. Such variables are useful for modelling problems from domains such as configuration, planning, scheduling, etc. We show that a function variable ca ..."
Abstract
-
Cited by 40 (5 self)
- Add to MetaCart
(Show Context)
We introduce function variables to constraint programs (CP), variables whose values are one of (exponentially many) possible functions between two sets. Such variables are useful for modelling problems from domains such as configuration, planning, scheduling, etc. We show that a function variable can be mapped into different representations in terms of integer and set variables, and illustrate how to map constraints stated on a function variable into constraints on integer and set variables. As a result, a constraint model expressed using function variables allows for the generation of alternate CP models. Furthermore, we present an extensive theoretical comparison of models of problems involving injective functions supported by asymptotic and empirical studies. Finally, we present and evaluate a practical modelling tool that is based on a high-level language that supports function variables. The tool helps users explore different alternate CP models starting from a function model that is easy to develop, understand, and maintain.
A Comparative Study of Eight Constraint Programming Languages over the Boolean and Finite Domains
- Constraints
, 2000
"... This paper compares the efficiency of a number of Constraint Logic Programming (CLP) systems in the setting of finite domains as well as a specific aspect of their expressiveness (that concerning reification and meta-constraints). There are two key reasons for adopting CLP technology for solving a p ..."
Abstract
-
Cited by 31 (5 self)
- Add to MetaCart
This paper compares the efficiency of a number of Constraint Logic Programming (CLP) systems in the setting of finite domains as well as a specific aspect of their expressiveness (that concerning reification and meta-constraints). There are two key reasons for adopting CLP technology for solving a problem. The first is its expressiveness enabling a declarative solution with readable code which is vital for maintenance and the second is the provision of an efficient implementation for the computationally expensive procedures. However, CLP systems differ significantly both in how solutions may be expressed and the efficiency of their execution and it is important that both these factors are taken into account when choosing the best CLP system for a particular application. This paper aids this choice by illustrating differences between the systems, indicating their particular strengths and weaknesses.
K.: University course timetabling with soft constraints
- In: PATAT IV, LNCS 2740
, 2003
"... Abstract. An extension of constraint logic programming that allows for weighted partial satisfaction of soft constraints is described and ap-plied to the development of an automated timetabling system for Purdue University. The soft constraint solver implemented in the proposed solu-tion approach al ..."
Abstract
-
Cited by 31 (14 self)
- Add to MetaCart
(Show Context)
Abstract. An extension of constraint logic programming that allows for weighted partial satisfaction of soft constraints is described and ap-plied to the development of an automated timetabling system for Purdue University. The soft constraint solver implemented in the proposed solu-tion approach allows constraint propagation for hard constraints together with preference propagation for soft constraints. A new repair search al-gorithm is proposed to improve upon initially generated (partial) assign-ments of the problem variables. The model and search methods applied to the solution of the large lecture room component are presented and discussed along with the computational results.
A New Multi-Resource cumulatives Constraint with Negative Heights
, 2001
"... This paper presents a new s cumulative constraint which generalizes the original cumulative constraint in different ways. The two most important aspects consist in permitting multiple cumulative resources as well as negative heights for the resource consumption of the tasks. This allows modeling ..."
Abstract
-
Cited by 30 (3 self)
- Add to MetaCart
This paper presents a new s cumulative constraint which generalizes the original cumulative constraint in different ways. The two most important aspects consist in permitting multiple cumulative resources as well as negative heights for the resource consumption of the tasks. This allows modeling in an easy way new scheduling and planning problems. The introduction of negative heights has forced us to come up with new propagation algorithms and to revisit existing ones. The first propagation algorithm is derived from an idea called sweep which is extensively used in computational geometry; the second algorithm is based on a combination of sweep and constructive disjunction, while the last is a generalization of task intervals to this new context. A real-life timetabling problem originally motivated this constraint which was implemented within the SICStus finite domain solver and evaluated against different problem patterns.