English
Related papers

Related papers: Combining Logic Programs and Monadic Second Order …

200 papers

Logic program transformation by the unfold/fold method ad- vocates the writing of correct logic programs via the application of some rules to a naive program. This work focuses on how to overcome subgoal- introduction difficulties in…

Programming Languages · Computer Science 2018-10-05 Manuel Hernández

In this paper, we identify a fragment of second-order logic with restricted quantification that is expressive enough to capture numerous static analysis problems (e.g. safety proving, bug finding, termination and non-termination proving,…

Logic in Computer Science · Computer Science 2015-09-01 Cristina David , Daniel Kroening , Matt Lewis

We present a method for verifying partial correctness properties of imperative programs that manipulate integers and arrays by using techniques based on the transformation of constraint logic programs (CLP). We use CLP as a metalanguage for…

Programming Languages · Computer Science 2013-09-23 Emanuele De Angelis , Fabio Fioravanti , Alberto Pettorossi , Maurizio Proietti

This paper describes a deductive approach to synthesizing imperative programs with pointers from declarative specifications expressed in Separation Logic. Our synthesis algorithm takes as input a pair of assertions---a pre- and a…

Programming Languages · Computer Science 2018-11-12 Nadia Polikarpova , Ilya Sergey

We propose a modular method for proving termination of general logic programs (i.e., logic programs with negation). It is based on the notion of acceptable programs, but it allows us to prove termination in a truly modular way. We consider…

Logic in Computer Science · Computer Science 2025-06-18 Annalisa Bossi , Nicoletta Cocco , Sandro Etalle , Sabina Rossi

There are two kinds of approaches for termination analysis of logic programs: "transformational" and "direct" ones. Direct approaches prove termination directly on the basis of the logic program. Transformational approaches transform a…

Logic in Computer Science · Computer Science 2008-09-01 P. Schneider-Kamp , J. Giesl , A. Serebrenik , R. Thiemann

This paper describes a system, called PLP, for compiling ordered logic programs into standard logic programs under the answer set semantics. In an ordered logic program, rules are named by unique terms, and preferences among rules are given…

Artificial Intelligence · Computer Science 2007-05-23 James P. Delgrande , Torsten Schaub , Hans Tompits

We consider an extension of logic programs, called \omega-programs, that can be used to define predicates over infinite lists. \omega-programs allow us to specify properties of the infinite behavior of reactive systems and, in general,…

Programming Languages · Computer Science 2010-07-26 Alberto Pettorossi , Maurizio Proietti , Valerio Senni

We present a method for the synthesis of polynomial lasso programs. These programs consist of a program stem, a set of transitions, and an exit condition, all in the form of algebraic assertions (conjunctions of polynomial equalities).…

Logic in Computer Science · Computer Science 2013-11-19 Jan Leike , Ashish Tiwari

Program transformation is an appealing technique which allows to improve run-time efficiency, space-consumption, and more generally to optimize a given program. Essentially, it consists of a sequence of syntactic program manipulations which…

Programming Languages · Computer Science 2020-02-19 Maurizio Gabbrielli , Maria Chiara Meo , Paolo Tacchella , Herbert Wiklicky

We identify a decidable synthesis problem for a class of programs of unbounded size with conditionals and iteration that work over infinite data domains. The programs in our class use uninterpreted functions and relations, and abide by a…

Programming Languages · Computer Science 2020-07-24 Paul Krogmeier , Umang Mathur , Adithya Murali , P. Madhusudan , Mahesh Viswanathan

Monadic second order logic and linear temporal logic are two logical formalisms that can be used to describe classes of infinite words, i.e., first-order models based on the natural numbers with order, successor, and finitely many unary…

Logic · Mathematics 2016-05-02 Silvio Ghilardi , Samuel J. van Gool

Formal reasoning about finite sets and cardinality is an important tool for many applications, including software verification, where very often one needs to reason about the size of a given data structure and not only about what its…

Logic in Computer Science · Computer Science 2021-10-06 Maximiliano Cristiá , Gianfranco Rossi

We propose a set of transformation rules for constraint logic programs with negation. We assume that every program is locally stratified and, thus, it has a unique perfect model. We give sufficient conditions which ensure that the proposed…

Programming Languages · Computer Science 2007-05-23 Fabio Fioravanti , Alberto Pettorossi , Maurizio Proietti

We propose a novel logic, called Frame Logic (FL), that extends first-order logic (with recursive definitions) using a construct Sp(.) that captures the implicit supports of formulas -- the precise subset of the universe upon which their…

Logic in Computer Science · Computer Science 2022-09-27 Adithya Murali , Lucas Peña , Christof Löding , P. Madhusudan

Uncertainty in logic programming has been widely investigated in the last decades, leading to multiple extensions of the classical LP paradigm. However, few of these are designed as extensions of the well-established and powerful CLP scheme…

Logic in Computer Science · Computer Science 2012-01-27 R. Caballero , M. Rodriguez-Artalejo , C. A. Romero-Diaz

Synthesizing a program that realizes a logical specification is a classical problem in computer science. We examine a particular type of program synthesis, where the objective is to synthesize a strategy that reacts to a potentially…

Artificial Intelligence · Computer Science 2020-01-01 Alberto Camacho , Sheila A. McIlraith

Uncertainty in logic programming has been widely investigated in the last decades, leading to multiple extensions of the classical LP paradigm. However, few of these are designed as extensions of the well-established and powerful CLP scheme…

Logic in Computer Science · Computer Science 2010-09-13 Rafael Caballero , Mario Rodríguez-Artalejo , Carlos A. Romero-Díaz

Proving program termination is key to guaranteeing absence of undesirable behaviour, such as hanging programs and even security vulnerabilities such as denial-of-service attacks. To make termination checks scale to large systems,…

Software Engineering · Computer Science 2015-05-19 Hong-Yi Chen , Cristina David , Daniel Kroening , Peter Schrammel , Björn Wachter

In this paper, we consider an approach introduced in term rewriting for the automatic detection of non-looping non-termination from patterns of rules. We adapt it to logic programming by defining a new unfolding technique that produces…

Logic in Computer Science · Computer Science 2026-01-14 Etienne Payet
‹ Prev 1 2 3 10 Next ›