3,614 research outputs found

    Answer Sets for Logic Programs with Arbitrary Abstract Constraint Atoms

    Full text link
    In this paper, we present two alternative approaches to defining answer sets for logic programs with arbitrary types of abstract constraint atoms (c-atoms). These approaches generalize the fixpoint-based and the level mapping based answer set semantics of normal logic programs to the case of logic programs with arbitrary types of c-atoms. The results are four different answer set definitions which are equivalent when applied to normal logic programs. The standard fixpoint-based semantics of logic programs is generalized in two directions, called answer set by reduct and answer set by complement. These definitions, which differ from each other in the treatment of negation-as-failure (naf) atoms, make use of an immediate consequence operator to perform answer set checking, whose definition relies on the notion of conditional satisfaction of c-atoms w.r.t. a pair of interpretations. The other two definitions, called strongly and weakly well-supported models, are generalizations of the notion of well-supported models of normal logic programs to the case of programs with c-atoms. As for the case of fixpoint-based semantics, the difference between these two definitions is rooted in the treatment of naf atoms. We prove that answer sets by reduct (resp. by complement) are equivalent to weakly (resp. strongly) well-supported models of a program, thus generalizing the theorem on the correspondence between stable models and well-supported models of a normal logic program to the class of programs with c-atoms. We show that the newly defined semantics coincide with previously introduced semantics for logic programs with monotone c-atoms, and they extend the original answer set semantics of normal logic programs. We also study some properties of answer sets of programs with c-atoms, and relate our definitions to several semantics for logic programs with aggregates presented in the literature

    Generalization Strategies for the Verification of Infinite State Systems

    Full text link
    We present a method for the automated verification of temporal properties of infinite state systems. Our verification method is based on the specialization of constraint logic programs (CLP) and works in two phases: (1) in the first phase, a CLP specification of an infinite state system is specialized with respect to the initial state of the system and the temporal property to be verified, and (2) in the second phase, the specialized program is evaluated by using a bottom-up strategy. The effectiveness of the method strongly depends on the generalization strategy which is applied during the program specialization phase. We consider several generalization strategies obtained by combining techniques already known in the field of program analysis and program transformation, and we also introduce some new strategies. Then, through many verification experiments, we evaluate the effectiveness of the generalization strategies we have considered. Finally, we compare the implementation of our specialization-based verification method to other constraint-based model checking tools. The experimental results show that our method is competitive with the methods used by those other tools. To appear in Theory and Practice of Logic Programming (TPLP).Comment: 24 pages, 2 figures, 5 table

    Rewriting recursive aggregates in answer set programming: back to monotonicity

    Get PDF
    Aggregation functions are widely used in answer set programming for representing and reasoning on knowledge involving sets of objects collectively. Current implementations simplify the structure of programs in order to optimize the overall performance. In particular, aggregates are rewritten into simpler forms known as monotone aggregates. Since the evaluation of normal programs with monotone aggregates is in general on a lower complexity level than the evaluation of normal programs with arbitrary aggregates, any faithful translation function must introduce disjunction in rule heads in some cases. However, no function of this kind is known. The paper closes this gap by introducing a polynomial, faithful, and modular translation for rewriting common aggregation functions into the simpler form accepted by current solvers. A prototype system allows for experimenting with arbitrary recursive aggregates, which are also supported in the recent version 4.5 of the grounder gringo, using the methods presented in this paper

    Combining Forward and Backward Abstract Interpretation of Horn Clauses

    Full text link
    Alternation of forward and backward analyses is a standard technique in abstract interpretation of programs, which is in particular useful when we wish to prove unreachability of some undesired program states. The current state-of-the-art technique for combining forward (bottom-up, in logic programming terms) and backward (top-down) abstract interpretation of Horn clauses is query-answer transformation. It transforms a system of Horn clauses, such that standard forward analysis can propagate constraints both forward, and backward from a goal. Query-answer transformation is effective, but has issues that we wish to address. For that, we introduce a new backward collecting semantics, which is suitable for alternating forward and backward abstract interpretation of Horn clauses. We show how the alternation can be used to prove unreachability of the goal and how every subsequent run of an analysis yields a refined model of the system. Experimentally, we observe that combining forward and backward analyses is important for analysing systems that encode questions about reachability in C programs. In particular, the combination that follows our new semantics improves the precision of our own abstract interpreter, including when compared to a forward analysis of a query-answer-transformed system.Comment: Francesco Ranzato. 24th International Static Analysis Symposium (SAS), Aug 2017, New York City, United States. Springer, Static Analysi

    Posets arising as 1-skeleta of simple polytopes, the nonrevisiting path conjecture, and poset topology

    Full text link
    Given any polytope PP and any generic linear functional c{\bf c} , one obtains a directed graph G(P,c)G(P,{\bf c}) by taking the 1-skeleton of PP and orienting each edge e(u,v)e(u,v) from uu to vv for c(u)<c(v){\bf c} (u) < {\bf c} ( v). This paper raises the question of finding sufficient conditions on a polytope PP and generic cost vector c{\bf c} so that the graph G(P,c)G(P, {\bf c} ) will not have any directed paths which revisit any face of PP after departing from that face. This is in a sense equivalent to the question of finding conditions on PP and c{\bf c} under which the simplex method for linear programming will be efficient under all choices of pivot rules. Conditions on PP and c{\bf c} are given which provably yield a corollary of the desired face nonrevisiting property and which are conjectured to give the desired property itself. This conjecture is proven for 3-polytopes and for spindles having the two distinguished vertices as source and sink; this shows that known counterexamples to the Hirsch Conjecture will not provide counterexamples to this conjecture. A part of the proposed set of conditions is that G(P,c)G(P, {\bf c} ) be the Hasse diagram of a partially ordered set, which is equivalent to requiring non revisiting of 1-dimensional faces. This opens the door to the usage of poset-theoretic techniques. This work also leads to a result for simple polytopes in which G(P,c)G(P, {\bf c}) is the Hasse diagram of a lattice L that the order complex of each open interval in L is homotopy equivalent to a ball or a sphere of some dimension. Applications are given to the weak Bruhat order, the Tamari lattice, and more generally to the Cambrian lattices, using realizations of the Hasse diagrams of these posets as 1-skeleta of permutahedra, associahedra, and generalized associahedra.Comment: new results for 3-polytopes and spindles added; exposition substantially improved throughou

    Logic Integer Programming Models for Signaling Networks

    Full text link
    We propose a static and a dynamic approach to model biological signaling networks, and show how each can be used to answer relevant biological questions. For this we use the two different mathematical tools of Propositional Logic and Integer Programming. The power of discrete mathematics for handling qualitative as well as quantitative data has so far not been exploited in Molecular Biology, which is mostly driven by experimental research, relying on first-order or statistical models. The arising logic statements and integer programs are analyzed and can be solved with standard software. For a restricted class of problems the logic models reduce to a polynomial-time solvable satisfiability algorithm. Additionally, a more dynamic model enables enumeration of possible time resolutions in poly-logarithmic time. Computational experiments are included
    • …
    corecore