English
Related papers

Related papers: Verification of Imperative Programs by Constraint …

200 papers

We present verification methods for logic programs with delay declarations. The verified properties are termination and freedom from errors related to built-ins. Concerning termination, we present two approaches. The first approach tries to…

Logic in Computer Science · Computer Science 2009-09-25 Jan-Georg Smaus , Patricia M. Hill , Andy King

The programming language Prolog makes declarative programming possible, at least to a substantial extent. Programs may be written and reasoned about in terms of their declarative semantics. All the advantages of declarative programming are…

Logic in Computer Science · Computer Science 2023-08-31 Włodzimierz Drabent

This paper presents an example of formal reasoning about the semantics of a Prolog program of practical importance (the SAT solver of Howe and King). The program is treated as a definite clause logic program with added control. The logic…

Logic in Computer Science · Computer Science 2017-05-15 Włodzimierz Drabent

Program completion is a translation from the language of logic programs into the language of first-order theories. Its original definition has been extended to programs that include integer arithmetic, accept input, and distinguish between…

Logic in Computer Science · Computer Science 2023-12-27 Jorge Fandinno , Vladimir Lifschitz , Nathan Temple

We discuss proving correctness and completeness of definite clause logic programs. We propose a method for proving completeness, while for proving correctness we employ a method which should be well known but is often neglected. Also, we…

Logic in Computer Science · Computer Science 2017-01-31 Włodzimierz Drabent

Many transformation techniques developed for constraint logic programs, also known as constrained Horn clauses (CHCs), have found new useful applications in the field of program verification. In this paper, we work out a nontrivial case…

Logic in Computer Science · Computer Science 2020-08-10 Emanuele De Angelis , Fabio Fioravanti , Maurizio Proietti

In this paper we demonstrate several examples of solving challenging algorithmic problems from the Google Code Jam programming contest with the Prolog-based ECLiPSe system using declarative techniques like constraint logic programming and…

Programming Languages · Computer Science 2014-12-16 Sergii Dymchenko , Mariia Mykhailova

In purely functional programming languages imperative features, more generally computational effects are prohibited. However, non-functional lan- guages do involve effects. The theory of decorated logic provides a rigorous for- malism (with…

Logic in Computer Science · Computer Science 2014-11-27 Burak Ekici

Uncertain information is being taken into account in an increasing number of application fields. In the meantime, abduction has been proved a powerful tool for handling hypothetical reasoning and incomplete knowledge. Probabilistic logical…

Artificial Intelligence · Computer Science 2022-02-04 Elena Bellodi , Marco Gavanelli , Riccardo Zese , Evelina Lamma , Fabrizio Riguzzi

We present a set of rules for compiling a Dalvik bytecode program into a logic program with array constraints. Non-termination of the resulting program entails that of the original one, hence the techniques we have presented before for…

Programming Languages · Computer Science 2014-12-12 Etienne Payet , Fred Mesnard

We present the CIFF proof procedure for abductive logic programming with constraints, and we prove its correctness. CIFF is an extension of the IFF proof procedure for abductive logic programming, relaxing the original restrictions over…

Artificial Intelligence · Computer Science 2009-06-08 P. Mancarella , G. Terreni , F. Sadri , F. Toni , U. Endriss

It is well-known that the verification of partial correctness properties of imperative programs can be reduced to the satisfiability problem for constrained Horn clauses (CHCs). However, state-of-the-art solvers for CHCs (CHC solvers) based…

Logic in Computer Science · Computer Science 2018-06-29 Emanuele De Angelis , Fabio Fioravanti , Alberto Pettorossi , Maurizio Proietti

We consider a simple extension of logic programming where variables may range over goals and goals may be arguments of predicates. In this language we can write logic programs which use goals as data. We give practical evidence that, by…

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

Context. Variability-intensive programs (program families) appear in many application areas and for many reasons today. Different family members, called variants, are derived by switching statically configurable options (features) on and…

Programming Languages · Computer Science 2017-02-01 Alexandru Florin Iosif-Lazar , Jean Melo , Aleksandar S. Dimovski , Claus Brabrand , Andrzej Wasowski

We present a program synthesis method based on unfold/fold transformation rules which can be used for deriving terminating definite logic programs from formulas of the Weak Monadic Second Order theory of one successor (WS1S). This synthesis…

Programming Languages · Computer Science 2007-05-23 F. Fioravanti , A. Pettorossi , M. Proietti

Formal verification provides strong guarantees of correctness of software, which are especially important in safety or security critical systems. Hoare logic is a widely used formalism for rigorous verification of software against…

Programming Languages · Computer Science 2021-03-11 Jayaraj Poroor

Programmable Logic Controllers (PLCs) provide a prominent choice of implementation platform for safety-critical industrial control systems. Formal verification provides ways of establishing correctness guarantees, which can be quite…

Programming Languages · Computer Science 2019-02-15 Luis Garcia , Stefan Mitsch , Andre Platzer

Some approaches to increasing program reliability involve a disciplined use of programming languages so as to minimise the hazards introduced by error-prone features. This is realised by writing code that is constrained to a subset of the a…

Programming Languages · Computer Science 2007-11-06 Guillem Marpons-Ucero , Julio Mariño , Ángel Herranz , Lars-Åke Fredlund , Manuel Carro , Juan José Moreno-Navarro

Difference constraints have been used for termination analysis in the literature, where they denote relational inequalities of the form x' <= y + c, and describe that the value of x in the current state is at most the value of y in the…

Programming Languages · Computer Science 2015-08-21 Moritz Sinn , Florian Zuleger , Helmut Veith

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