Filters








808 Hits in 4.8 sec

Proving correctness of imperative programs by linearizing constrained Horn clauses

EMANUELE DE ANGELIS, FABIO FIORAVANTI, ALBERTO PETTOROSSI, MAURIZIO PROIETTI
2015 Theory and Practice of Logic Programming  
We highlight some limitations of state-of-the-art constrained Horn clause solving methods, here calledLA-solving methods, which prove the satisfiability of the clauses by looking for linear arithmetic  ...  AbstractWe present a method for verifying the correctness of imperative programs which is based on the automated transformation of their specifications.  ...  Translating Partial Correctness to Constrained Horn Clauses • Suppose  and  are linear arithmetic constraints (LA constraints). • Partial correctness specifications %Loop exit • The program is partially  ... 
doi:10.1017/s1471068415000289 fatcat:3avbtyt3tjhshad3tnq4pcwv4i

Removing Unnecessary Variables from Horn Clause Verification Conditions

Emanuele De Angelis, Fabio Fioravanti, Alberto Pettorossi, Maurizio Proietti
2016 Electronic Proceedings in Theoretical Computer Science  
increases the effectiveness of Horn clause solvers when proving program correctness.  ...  We consider VCs in the form of constrained Horn clauses (CHC) which are automatically generated from the encoding of (an interpreter of) the operational semantics of the programming language.  ...  In this paper we consider VCs which are automatically derived by applying program specialization to a constrained Horn clause encoding of the operational semantics of the programming language.  ... 
doi:10.4204/eptcs.219.5 fatcat:3zpyhdp5xfh4zjvnzywnf46jtq

Introduction to the special issue on computational logic for verification

GERMÁN VIDAL
2018 Theory and Practice of Logic Programming  
It helps us to rigorously formalize these techniques and prove them correct. The last decade has witnessed a growing interest in the use of computational logic methods for program verification.  ...  It has attracted researchers from both computational logic and program verification communities, giving rise to a fruitful exchange of ideas and experiences.  ...  For instance, programs written in different programming languages (e.g., functional, imperative, object oriented, concurrent) can be translated into Constrained Horn Clauses (CHCs) so that the same tools  ... 
doi:10.1017/s1471068418000029 fatcat:c4gxiijazzgohk6shsfnb5p6cy

Tree dimension in verification of constrained Horn clauses [article]

Bishoksan Kafle, John P. Gallagher, Pierre Ganty
2018 arXiv   pre-print
In this paper, we show how the notion of tree dimension can be used in the verification of constrained Horn clauses (CHCs).  ...  The dimension of a tree is a numerical measure of its branching complexity and the concept here applies to Horn clause derivation trees.  ...  Proving correctness of imperative programs by linearizing constrained Horn clauses. TPLP 15, 4- 5, 635–650. Dutertre, B. 2014. Yices 2.2. In CAV, A. Biere and R. Bloem, Eds. LNCS, vol. 8559.  ... 
arXiv:1803.01448v2 fatcat:fk6sgwdmovcqvcz534djww7iyy

From Big-Step to Small-Step Semantics and Back with Interpreter Specialisation

John P. Gallagher, Manuel Hermenegildo, Bishoksan Kafle, Maximiliano Klemen, Pedro López García, José Morales
2020 Electronic Proceedings in Theoretical Computer Science  
We investigate representations of imperative programs as constrained Horn clauses.  ...  Starting from operational semantics transition rules, we proceed by writing interpreters as constrained Horn clause programs directly encoding the rules.  ...  Acknowledgements Discussions on semantics and Horn clauses with Alberto Pettorossi, Maurizio Proietti, Fabio Fioravanti and Emanuele De Angelis are gratefully acknowledged.  ... 
doi:10.4204/eptcs.320.4 fatcat:4dry4azxwncnrojzddv6pcomay

A Fixed-point Theorem for Horn Formula Equations

Stefan Hetzl, Johannes Kloibhofer
2021 Electronic Proceedings in Theoretical Computer Science  
We consider constrained Horn clause solving from the more general point of view of solving formula equations. Constrained Horn clauses correspond to the subclass of Horn formula equations.  ...  We state and prove a fixed-point theorem for Horn formula equations which is based on expressing the fixed-point computation of a minimal model of a set of Horn clauses on the object level as a formula  ...  The authors would like to thank Christoph Wernhard for a number of helpful conversations about formula equations and second-order quantifier elimination and the anonymous reviewers for many useful suggestions  ... 
doi:10.4204/eptcs.344.5 fatcat:cjn7ovjkendmjogwnd5xrxf4pq

Predicate Pairing for program verification

EMANUELE DE ANGELIS, FABIO FIORAVANTI, ALBERTO PETTOROSSI, MAURIZIO PROIETTI
2017 Theory and Practice of Logic Programming  
AbstractIt 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 constrained Horn clauses (or CHC solvers) based on predicate abstraction are sometimes unable to verify satisfiability because they look for models that are definable  ...  This work has been partially supported by the National Group of Computing Science (GNCS-INDAM). E. De Angelis, F. Fioravanti, and A. Pettorossi are research associates at CNR-IASI, Rome, Italy.  ... 
doi:10.1017/s1471068417000497 fatcat:sqrdis2mhnh2tcpt3kebo2s2ty

Semantics-based generation of verification conditions via program specialization

E. De Angelis, F. Fioravanti, A. Pettorossi, M. Proietti
2017 Science of Computer Programming  
We have proved that the verification condition generation takes a number of transformation steps that is linear with respect to the size of the imperative program to be verified.  ...  for a few hundreds of programs taken from various publicly available benchmarks, and by checking the satisfiability of these verification conditions by using state-of-the-art Horn clause solvers.  ...  We acknowledge the financial support of INDAM-GNCS (Italy).  ... 
doi:10.1016/j.scico.2016.11.002 fatcat:tbgcffa6vnhf5a7zpirzwh2cou

Enhancing Predicate Pairing with Abstraction for Relational Verification [article]

Emanuele De Angelis , Maurizio Proietti DEC, University G. D'Annunzio, Chieti-Pescara, Italy, IASI-CNR, Roma, Italy)
2017 arXiv   pre-print
It has been shown that constrained Horn clauses (CHCs) can effectively be used for relational verification by applying a CHC transformation, called predicate pairing, which allows the CHC solver to infer  ...  Relational verification is a technique that aims at proving properties that relate two different program fragments, or two different program runs.  ...  The latter method proposed by Felsing et al. [21] presents proof rules for relations between imperative programs that are translated into constrained Horn clauses.  ... 
arXiv:1709.04809v1 fatcat:dsg5k46kmvagpkwobge35ogsiy

Predicate Pairing with Abstraction for Relational Verification [chapter]

Emanuele De Angelis, Fabio Fioravanti, Alberto Pettorossi, Maurizio Proietti
2018 Lecture Notes in Computer Science  
It has been shown that constrained Horn clauses (CHCs) can effectively be used for relational verification by applying a CHC transformation, called Predicate Pairing, which allows the CHC solver to infer  ...  Relational verification is a technique that aims at proving properties that relate two different program fragments, or two different program runs.  ...  The latter method proposed by Felsing et al. [18] presents proof rules for relations between imperative programs that are translated into constrained Horn clauses.  ... 
doi:10.1007/978-3-319-94460-9_17 fatcat:uh5fmdecwbgw5pv72ppze5sr2i

Verifying Array Programs by Transforming Verification Conditions [chapter]

Emanuele De Angelis, Fabio Fioravanti, Alberto Pettorossi, Maurizio Proietti
2014 Lecture Notes in Computer Science  
The interpreter (that is, the operational semantics) of the program is specified as a set of Horn clauses with constraints in the domain of integer arrays, also called constraint logic programs over integer  ...  We present a method for verifying properties of imperative programs manipulating integer arrays. We assume that we are given a program and a property to be verified.  ...  Indeed, the verification conditions that express the correctness of a given program, can often be expressed as constrained Horn clauses [3] , that is, Horn clauses extended with constraints in specific  ... 
doi:10.1007/978-3-642-54013-4_11 fatcat:f347lp3cwndclmjj7qprwc2r4e

Program verification via iterated specialization

E. De Angelis, F. Fioravanti, A. Pettorossi, M. Proietti
2014 Science of Computer Programming  
the fact unsafe (and in this case the imperative program is proved unsafe) or contains no clauses with head unsafe (and in this case the imperative program is proved safe).  ...  Thus, in order to prove some given properties of the imperative program P, we can analyze the CLP program I sp by applying, for instance, techniques based on the above mentioned polyhedral abstractions  ...  As an evidence of the expressive power of constraints we want to point out that Constrained Horn Clauses (which basically are Constraint Logic Programs) have been recently proposed in [4] as a common  ... 
doi:10.1016/j.scico.2014.05.017 fatcat:5th77b243fdhdpcwvoyhtuzmp4

Semantics-based generation of verification conditions by program specialization

E. De Angelis, F. Fioravanti, A. Pettorossi, M. Proietti
2015 Proceedings of the 17th International Symposium on Principles and Practice of Declarative Programming - PPDP '15  
Our method is parametric with respect to the semantics of the imperative programming language, as it specializes, by using unfold/fold transformation rules, a Horn clause interpreter that encodes that  ...  available benchmarks, and by checking the satisfiability of these verification conditions by using state-of-the-art Horn clause solvers.  ...  We acknowledge the financial support of INDAM-GNCS (Italy).  ... 
doi:10.1145/2790449.2790529 dblp:conf/ppdp/AngelisFPP15 fatcat:e5hjfzjv45gxhayjizhw5rcq5m

Horn Clause Solvers for Program Verification [chapter]

Nikolaj Bjørner, Arie Gurfinkel, Ken McMillan, Andrey Rybalchenko
2015 Lecture Notes in Computer Science  
This paper complements these strides as we summarize main useful properties of Horn clauses, illustrate encodings of procedural program verification into Horn clauses and then highlight a number of useful  ...  A theme pursued in the past years by the authors of this paper has been to encode symbolic model problems directly as Horn clauses and develop dedicated solvers for Horn clauses.  ...  Instead of proving bounds, we may also be interested in finding solutions that optimize objective functions.  ... 
doi:10.1007/978-3-319-23534-9_2 fatcat:hsmmbrr35nfsveszovx67isifq

Transformational Verification of Quicksort

Emanuele De Angelis, Fabio Fioravanti, Maurizio Proietti
2020 Electronic Proceedings in Theoretical Computer Science  
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.  ...  We consider the familiar Quicksort program for sorting lists, written in a functional programming language, and we verify the pre/-postconditions that specify the intended correctness properties of the  ...  First of all, the topics he contributed to explore starting from the 1970s, such as program transformation, program verification and, in general, the use of logic and formal methods in computing, are still  ... 
doi:10.4204/eptcs.320.7 fatcat:dfczbzddzre5tet6ohxcznifki
« Previous Showing results 1 — 15 out of 808 results