357 research outputs found

    Effective Encodings of Constraint Programming Models to SMT

    Get PDF
    Satisfiability Modulo Theories (SMT) is a well-established methodology that generalises propositional satisfiability (SAT) by adding support for a variety of theories such as integer arithmetic and bit-vector operations. SMT solvers have made rapid progress in recent years. In part, the efficiency of modern SMT solvers derives from the use of specialised decision procedures for each theory. In this paper we explore how the Essence Prime constraint modelling language can be translated to the standard SMT-LIB language. We target four theories: bit-vectors (QF_BV), linear integer arithmetic (QF_LIA), non-linear integer arithmetic (QF_NIA), and integer difference logic (QF_IDL). The encodings are implemented in the constraint modelling tool Savile Row. In an extensive set of experiments, we compare our encodings for the four theories, showing some notable differences and complementary strengths. We also compare our new encodings to the existing work targeting SMT and SAT, and to a well-established learning CP solver. Our two proposed encodings targeting the theory of bit-vectors (QF_BV) both substantially outperform earlier work on encoding to QF_BV on a large and diverse set of problem classes

    Algorithms for Linearly Ordered Boolean Formulas

    Get PDF
    This thesis considers a class of propositional boolean formulas on which various problems related to satisfiability are efficiently solvable by a dynamic programming algorithm. It mainly consists of two larger parts: the first part describes the class of boolean formulas we are interested in and how to find them, and the second part investigates whether this class of formulas have any practical implications.Master i InformatikkMAMN-INFINF39

    Effective encodings of constraint programming models to SMT

    Get PDF
    Funding: UK EPSRC grant EP/P015638/1.Satisfiability Modulo Theories (SMT) is a well-established methodology that generalises propositional satisfiability (SAT) by adding support for a variety of theories such as integer arithmetic and bit-vector operations. SMT solvers have made rapid progress in recent years. In part, the efficiency of modern SMT solvers derives from the use of specialised decision procedures for each theory. In this paper we explore how the Essence Prime constraint modelling language can be translated to the standard SMT-LIB language. We target four theories: bit-vectors (QF_BV), linear integer arithmetic (QF_LIA), non-linear integer arithmetic (QF_NIA), and integer difference logic (QF_IDL). The encodings are implemented in the constraint modelling tool Savile Row. In an extensive set of experiments, we compare our encodings for the four theories, showing some notable differences and complementary strengths. We also compare our new encodings to the existing work targeting SMT and SAT, and to a well-established learning CP solver. Our two proposed encodings targeting the theory of bit-vectors (QF_BV) both substantially outperform earlier work on encoding to QF_BV on a large and diverse set of problem classes.Postprin

    Decompositions of Grammar Constraints

    Full text link
    A wide range of constraints can be compactly specified using automata or formal languages. In a sequence of recent papers, we have shown that an effective means to reason with such specifications is to decompose them into primitive constraints. We can then, for instance, use state of the art SAT solvers and profit from their advanced features like fast unit propagation, clause learning, and conflict-based search heuristics. This approach holds promise for solving combinatorial problems in scheduling, rostering, and configuration, as well as problems in more diverse areas like bioinformatics, software testing and natural language processing. In addition, decomposition may be an effective method to propagate other global constraints.Comment: Proceedings of the Twenty-Third AAAI Conference on Artificial Intelligenc

    Προβλήματα Ικανοποίησης Περιορισμών: Επιλυτές Περιορισμών ή Επιλυτές Ικανοποιησιμότητας;

    Get PDF
    Σκοπός αυτής της εργασίας είναι να πραγματοποιηθεί μια έρευνα πάνω στην επίλυση προβλημάτων ικανοποίησης περιορισμών (CSP – Constraint Satisfaction Problem). Συγκεκριμένα, αντικείμενο της μελέτης είναι η παράλληλη σύγκριση δύο διαφορετικών προσεγγίσεων για την επίλυση CSP προβλημάτων. Η πρώτη προσέγγιση αφορά την απευθείας επίλυση του προβλήματος από ένα εξειδικευμένο λογισμικό επίλυσης CSP προβλημάτων (CSP Solver). Η δεύτερη προσέγγιση εξετάζει αρχικά την κωδικοποίηση του προβλήματος σε ένα ισοδύναμο πρόβλημα SAT (Boolean Satisfiability Problem) και στη συνέχεια την επίλυση αυτού μέσω ενός λογισμικού επίλυσης SAT προβλημάτων (SAT Solver). Για να γίνει αυτή η σύγκριση, επιλέχθηκαν τρία κλασσικά CSP προβλήματα (N queens, Map Coloring, Car Sequencing) τα οποία εξετάστηκαν και με τις δυο προσεγγίσεις. Τα προβλήματα αυτά μοντελοποιήθηκαν ως CSP και SAT και στη συνέχεια επιλύθηκαν από τους αντίστοιχους CSP και SAT Solvers. Για την περίπτωση των CSP, η μοντελοποίηση έγινε με τη χρήση του λογισμικού MiniZinc και η επίλυση καλώντας εσωτερικά τον Gecode solver. Αντίστοιχα, για την περίπτωση των SAT, υλοποιήθηκαν τα προβλήματα σε C++ περιβάλλον και επιλύθηκαν με τη βοήθεια του πακέτου MiniSat. Από τα αποτελέσματα που προέκυψαν, φαίνεται πως η γνήσια CSP προσέγγιση υπερέχει της αντίστοιχης SAT. Αν και το συμπέρασμα αυτό δεν είναι απόλυτο και καθολικό, ωστόσο σημειώνεται πως το ιδιαίτερο πλεονέκτημα της CSP στρατηγικής είναι η συνέπεια και η αξιοπιστία της σε σχέση με την αντίστοιχη SAT.The purpose of this paper is to investigate Constraint Satisfaction Problems (CSP). In particular, the subject of the study is the parallel comparison of two different approaches to CSP solving. The first approach is to solve the problem directly by a dedicated CSP Solver. The second one investigates encodings of the initial problem into an equivalent Boolean Satisfiability Problem (SAT) and then solves it through a general SAT Solver. In order to accomplish this comparison, three classic CSP were selected (N queens, Map Coloring, Car Sequencing) and examined by both approaches. These problems were modeled as CSP and SAT instances and then solved by the corresponding CSP and SAT Solvers. For the CSP case, the models were created using the MiniZinc software and their solution was searched by internally calling the Gecode Solver. Respectively, in the case of SAT, the problems were implemented in C++ environment and solved by the MiniSat package. From the results obtained, the pure CSP approach seems to be superior to the alternative SAT approach. Although this conclusion is not universal, however, it is noted that the special advantage of the CSP strategy is its consistency and reliability in contrast of the corresponding SAT

    CONJURE: automatic generation of constraint models from problem specifications

    Get PDF
    Funding: Engineering and Physical Sciences Research Council (EP/V027182/1, EP/P015638/1), Royal Society (URF/R/180015).When solving a combinatorial problem, the formulation or model of the problem is critical tothe efficiency of the solver. Automating the modelling process has long been of interest because of the expertise and time required to produce an effective model of a given problem. We describe a method to automatically produce constraint models from a problem specification written in the abstract constraint specification language Essence. Our approach is to incrementally refine the specification into a concrete model by applying a chosen refinement rule at each step. Any nontrivial specification may be refined in multiple ways, creating a space of models to choose from. The handling of symmetries is a particularly important aspect of automated modelling. Many combinatorial optimisation problems contain symmetry, which can lead to redundant search. If a partial assignment is shown to be invalid, we are wasting time if we ever consider a symmetric equivalent of it. A particularly important class of symmetries are those introduced by the constraint modelling process: modelling symmetries. We show how modelling symmetries may be broken automatically as they enter a model during refinement, obviating the need for an expensive symmetry detection step following model formulation. Our approach is implemented in a system called Conjure. We compare the models producedby Conjure to constraint models from the literature that are known to be effective. Our empirical results confirm that Conjure can reproduce successfully the kernels of the constraint models of 42 benchmark problems found in the literature.Publisher PDFPeer reviewe

    Proceedings of the 2022 XCSP3 Competition

    Full text link
    This document represents the proceedings of the 2022 XCSP3 Competition. The results of this competition of constraint solvers were presented at FLOC (Federated Logic Conference) 2022 Olympic Games, held in Haifa, Israel from 31th July 2022 to 7th August, 2022.Comment: arXiv admin note: text overlap with arXiv:1901.0183

    Automatically improving SAT encoding of constraint problems through common subexpression elimination in Savile Row

    Get PDF
    The formulation of a Propositional Satisfiability (SAT) problem instance is vital to efficient solving. This has motivated research on preprocessing, and inprocessing techniques where reformulation of a SAT instance is interleaved with solving. Preprocessing and inprocessing are highly effective in extending the reach of SAT solvers, however they necessarily operate on the lowest level representation of the problem, the raw SAT clauses, where higher-level patterns are difficult and/or costly to identify. Our approach is different: rather than reformulate the SAT representation directly, we apply automated reformulations to a higher level representation (a constraint model) of the original problem. Common Subexpression Elimination (CSE) is a family of techniques to improve automatically the formulation of constraint satisfaction problems, which are often highly beneficial when using a conventional constraint solver. In this work we demonstrate that CSE has similar benefits when the reformulated constraint model is encoded to SAT and solved using a state-of-the-art SAT solver. In some cases we observe speed improvements of over 100 times

    Flow-Based Propagators for the SEQUENCE and Related Global Constraints

    Full text link
    We propose new filtering algorithms for the SEQUENCE constraint and some extensions of the SEQUENCE constraint based on network flows. We enforce domain consistency on the SEQUENCE constraint in O(n2)O(n^2) time down a branch of the search tree. This improves upon the best existing domain consistency algorithm by a factor of O(logn)O(\log n). The flows used in these algorithms are derived from a linear program. Some of them differ from the flows used to propagate global constraints like GCC since the domains of the variables are encoded as costs on the edges rather than capacities. Such flows are efficient for maintaining bounds consistency over large domains and may be useful for other global constraints.Comment: Principles and Practice of Constraint Programming, 14th International Conference, CP 2008, Sydney, Australia, September 14-18, 2008. Proceeding
    corecore