216 research outputs found

    On the Scope of the Universal-Algebraic Approach to Constraint Satisfaction

    Full text link
    The universal-algebraic approach has proved a powerful tool in the study of the complexity of CSPs. This approach has previously been applied to the study of CSPs with finite or (infinite) omega-categorical templates, and relies on two facts. The first is that in finite or omega-categorical structures A, a relation is primitive positive definable if and only if it is preserved by the polymorphisms of A. The second is that every finite or omega-categorical structure is homomorphically equivalent to a core structure. In this paper, we present generalizations of these facts to infinite structures that are not necessarily omega-categorical. (This abstract has been severely curtailed by the space constraints of arXiv -- please read the full abstract in the article.) Finally, we present applications of our general results to the description and analysis of the complexity of CSPs. In particular, we give general hardness criteria based on the absence of polymorphisms that depend on more than one argument, and we present a polymorphism-based description of those CSPs that are first-order definable (and therefore can be solved in polynomial time).Comment: Extended abstract appeared at 25th Symposium on Logic in Computer Science (LICS 2010). This version will appear in the LMCS special issue associated with LICS 201

    On The Relational Width of First-Order Expansions of Finitely Bounded Homogeneous Binary Cores with Bounded Strict Width

    Full text link
    The relational width of a finite structure, if bounded, is always (1,1) or (2,3). In this paper we study the relational width of first-order expansions of finitely bounded homogeneous binary cores where binary cores are structures with equality and some anti-reflexive binary relations such that for any two different elements a, b in the domain there is exactly one binary relation R with (a, b) in R. Our main result is that first-order expansions of liberal finitely bounded homogeneous binary cores with bounded strict width have relational width (2, MaxBound) where MaxBound is the size of the largest forbidden substructure, but is not less than 3, and liberal stands for structures that do not forbid certain finite structures of small size. This result is built on a new approach and concerns a broad class of structures including reducts of homogeneous digraphs for which the CSP complexity classification has not yet been obtained.Comment: A long version of an extended abstract that appeared in LICS 202

    Using Model Theory to Find Decidable and Tractable Description Logics with Concrete Domains

    Get PDF
    Concrete domains have been introduced in the area of Description Logic (DL) to enable reference to concrete objects (such as numbers) and predefined predicates on these objects (such as numerical comparisons) when defining concepts. Unfortunately, in the presence of general concept inclusions (GCIs), which are supported by all modern DL systems, adding concrete domains may easily lead to undecidability. To regain decidability of the DL ALC in the presence of GCIs, quite strong restrictions, called ω-admissibility, were imposed on the concrete domain. On the one hand, we generalize the notion of ω-admissibility from concrete domains with only binary predicates to concrete domains with predicates of arbitrary arity. On the other hand, we relate ω-admissibility to well-known notions from model theory. In particular, we show that finitely bounded homogeneous structures yield ω-admissible concrete domains. This allows us to show ω-admissibility of concrete domains using existing results from model theory. When integrating concrete domains into lightweight DLs of the EL family, achieving decidability of reasoning is not enough. One wants the resulting DL to be tractable. This can be achieved by using so-called p-admissible concrete domains and restricting the interaction between the DL and the concrete domain. We investigate p-admissibility from an algebraic point of view. Again, this yields strong algebraic tools for demonstrating p-admissibility. In particular, we obtain an expressive numerical p-admissible concrete domain based on the rational numbers. Although ω-admissibility and p-admissibility are orthogonal conditions that are almost exclusive, our algebraic characterizations of these two properties allow us to locate an infinite class of p-admissible concrete domains whose integration into ALC yields decidable DLs. DL systems that can handle concrete domains allow their users to employ a fixed set of predicates of one or more fixed concrete domains when modelling concepts. They do not provide their users with means for defining new predicates, let alone new concrete domains. The good news is that finitely bounded homogeneous structures offer precisely that. We show that integrating concrete domains based on finitely bounded homogeneous structures into ALC yields decidable DLs even if we allow predicates specified by first-order formulas. This class of structures also provides effective means for defining new ω-admissible concrete domains with at most binary predicates. The bad news is that defining ω-admissible concrete domains with predicates of higher arities is computationally hard. We obtain two new lower bounds for this meta-problem, but leave its decidability open. In contrast, we prove that there is no algorithm that would facilitate defining p-admissible concrete domains already for binary signatures.:1. Introduction . . . 1 2. Preliminaries . . . 5 3. Description Logics with Concrete Domains . . . 9 3.1. Basic definitions and undecidability results . . . 9 3.2. Decidable and tractable DLs with concrete domains . . . 16 4. A Model-Theoretic Analysis of ω-Admissibility . . . 23 4.1. Homomorphism ω-compactness via ω-categoricity . . . 23 4.2. Patchworks via homogeneity . . . 24 4.3. JDJEPD via decomposition into orbits . . . 27 4.4. Upper bounds via finite boundedness . . . 28 4.5. ω-admissible finitely bounded homogeneous structures . . . 32 4.6. ω-admissible homogeneous cores with a decidable CSP . . . 34 4.7. Coverage of the developed sufficient conditions . . . 36 4.8. Closure properties: homogeneity & finite boundedness . . . 39 5. A Model-Theoretic Analysis of p-Admissibility . . . 47 5.1. Convexity via square embeddings . . . 47 5.2. Convex ω-categorical structures . . . 50 5.3. Convex numerical structures . . . 52 5.4. Ages defined by forbidden substructures . . . 54 5.5. Ages defined by forbidden homomorphic images . . . 56 5.6. (Non-)closure properties of convexity . . . 59 6. Towards user-definable concrete domains . . . 61 6.1. A proof-theoretic perspective . . . 65 6.2. Universal Horn sentences and the JEP . . . 66 6.3. Universal sentences and the AP: the Horn case . . . 77 6.4. Universal sentences and the AP: the general case . . . 90 7. Conclusion . . . 99 7.1. Contributions and future outlook . . . 99 A. Concrete Domains without Equality . . . 103 Bibliography . . . 107 List of figures . . . 115 Alphabetical Index . . . 11

    Verifying Programs with Arrays and Lists

    Get PDF
    Automatically verifying safety properties of programs is a tough problem that has been tackled using many different approaches: rewriting systems, abstract interpretation, SMT solving,. .. Most techniques restrict themselves to programs operating on boolean and integer values and transposing them to infinite data structures such as arrays has not yet been satisfyingly achieved. Recent work in Monniaux and Gonnord [2016] suggests the use of abstract interpretation to transpose programs containing arrays into Horn clauses that do not contain arrays. The major innovation of their work is that they use Horn clauses which are more general than programs, to obtain better results. In this work, we first set the work of Monniaux and Gonnord in a more general framework that allows us to extend their abstractions, simplify the expressions they generate, and analyze the precision of their abstraction. Finally we extend their abstractions so that we can the analyze lists and experiments show that we succeed to analyze several classical examples, including sorting algorithms

    A Sorted Datalog Hammer for Supervisor Verification Conditions Modulo Simple Linear Arithmetic

    Get PDF
    International audienceAbstract In a previous paper, we have shown that clause sets belonging to the Horn Bernays-Schönfinkel fragment over simple linear real arithmetic (HBS(SLR)) can be translated into HBS clause sets over a finite set of first-order constants. The translation preserves validity and satisfiability and it is still applicable if we extend our input with positive universally or existentially quantified verification conditions (conjectures). We call this translation a Datalog hammer. The combination of its implementation in SPASS-SPL with the Datalog reasoner VLog establishes an effective way of deciding verification conditions in the Horn fragment. We verify supervisor code for two examples: a lane change assistant in a car and an electronic control unit of a supercharged combustion engine. In this paper, we improve our Datalog hammer in several ways: we generalize it to mixed real-integer arithmetic and finite first-order sorts; we extend the class of acceptable inequalities beyond variable bounds and positively grounded inequalities; and we significantly reduce the size of the hammer output by a soft typing discipline. We call the result the sorted Datalog hammer. It not only allows us to handle more complex supervisor code and to model already considered supervisor code more concisely, but it also improves our performance on real world benchmark examples. Finally, we replace the before file-based interface between SPASS-SPL and VLog by a close coupling resulting in a single executable binary

    Towards Practical Predicate Analysis

    Get PDF
    Software model checking is a successful technique for automated program verification. Several of the most widely used approaches for software model checking are based on solving first-order-logic formulas over predicates using SMT solvers, e.g., predicate abstraction, bounded model checking, k-induction, and lazy abstraction with interpolants. We define a configurable framework for predicate-based analyses that allows expressing each of these approaches. This unifying framework highlights the differences between the approaches, producing new insights, and facilitates research of further algorithms and their combinations, as witnessed by several research projects that have been conducted on top of this framework. In addition to this theoretical contribution, we provide a mature implementation of our framework in the software verifier that allows applying all of the mentioned approaches to practice. This implementation is used by other research groups, e.g., to find bugs in the Linux kernel, and has proven its competitiveness by winning gold medals in the International Competition on Software Verification. Tools and approaches for software model checking like our predicate analysis are typically evaluated using performance benchmarking on large sets of verification tasks. We have identified several pitfalls that can silently arise during benchmarking, and we have found that the benchmarking techniques and tools that are used by many researchers do not guarantee valid results in practice, but may produce arbitrarily large measurement errors. Furthermore, certain hardware characteristics can also have nondeterministic influence on the measurements. In order to being able to properly evaluate our framework for software verification, we study the effects of these hardware characteristics, and define a list of the most important requirements that need to be ensured for reliable benchmarking. We present as solution an open-source benchmarking framework BenchExec, which in contrast to other benchmarking tools fulfills all our requirements and aims at making reliable benchmarking easy. BenchExec was already adopted by several research groups and the International Competition on Software Verification. Using the power of BenchExec we conduct an experimental evaluation of our unifying framework for predicate analysis. We study the effect of varying the SMT solver and the way program semantics are encoded in formulas across several verification algorithms and find that these technical choices can significantly influence the results of experimental studies of verification approaches. This is valuable information for both researchers who study verification approaches as well as for users who apply them in practice. Our comprehensive study of 120 different configurations would not have been possible without our highly flexible and configurable unifying framework for predicate analysis and shows that the latter is a valuable base for conducting experiments. Furthermore, we show using a comparison against top-ranking verifiers from the International Competition on Software Verification that our implementation is highly competitive and can outperform the state of the art
    corecore