English
Related papers

Related papers: Verifying Catamorphism-Based Contracts using Const…

200 papers

Reasoning about functions that operate over algebraic data types is an important problem for a large variety of applications. One application of particular interest is network applications that manipulate or reason about complex message…

Logic in Computer Science · Computer Science 2016-03-30 Tuan-Hung Pham , Andrew Gacek , Michael W. Whalen

Control-flow refinement refers to program transformations whose purpose is to make implicit control-flow explicit, and is used in the context of program analysis to increase precision. Several techniques have been suggested for different…

Programming Languages · Computer Science 2019-08-01 Jesús J. Doménech , John P. Gallagher , Samir Genaim

We present a tool for verification of deterministic programs with shared mutable references against specifications such as assertions, preconditions, postconditions, and read/write effects. We implement our tool by encoding programs with…

Logic in Computer Science · Computer Science 2021-03-16 Georg Schmid , Viktor Kunčak

We study the problem of completely automatically verifying uninterpreted programs---programs that work over arbitrary data models that provide an interpretation for the constants, functions and relations the program uses. The verification…

Programming Languages · Computer Science 2020-08-27 Umang Mathur , P. Madhusudan , Mahesh Viswanathan

Recursion-free Constrained Horn Clauses (CHCs) are logic-programming problems that can model safety properties of programs with bounded iteration and recursion. In addition, many CHC solvers reduce recursive systems to a series of…

Logic in Computer Science · Computer Science 2018-09-18 Qi Zhou , David Heath , William Harris

Answer-set programming (ASP) has emerged recently as a viable programming paradigm. We describe here an ASP system, DATALOG with constraints or DC, based on non-monotonic logic. Informally, DC theories consist of propositional clauses…

Artificial Intelligence · Computer Science 2007-05-23 Deborah East , Miroslaw Truszczynski

Cryptographic protocols with single blind copying were defined and modeled by Comon and Cortier using the new class $\mathcal C$ of first order clauses. They showed its satisfiability problem to be in 3-DEXPTIME. We improve this result by…

Logic in Computer Science · Computer Science 2007-05-23 Helmut Seidl , Kumar Neeraj Verma

We present a recursive formulation of the Horn algorithm for deciding the satisfiability of propositional clauses. The usual presentations in imperative pseudo-code are informal and not suitable for simple proofs of its main properties. By…

Logic in Computer Science · Computer Science 2018-09-14 António Ravara

Heap-manipulating programs are known to be challenging to reason about. We present a novel verifier for heap-manipulating programs called S2TD, which encodes programs systematically in the form of Constrained Horn Clauses (CHC) using a…

Programming Languages · Computer Science 2022-09-21 Quang Loc Le , Jun Sun , Long H. Pham , Shengchao Qin

We present a verification technique for program safety that combines Iterated Specialization and Interpolating Horn Clause Solving. Our new method composes together these two techniques in a modular way by exploiting the common Horn Clause…

Logic in Computer Science · Computer Science 2014-12-04 Emanuele De Angelis , Fabio Fioravanti , Jorge A. Navas , Maurizio Proietti

We report on the automation of a technique to prove the correctness of program transformations in higher-order program calculi which may permit recursive let-bindings as they occur in functional programming languages. A program…

Logic in Computer Science · Computer Science 2019-02-25 David Sabel

Verification of C++ programs has seen considerable progress in several areas, but not for programs that use these languages' mathematical libraries. The reason is that all libraries in widespread use come with no guarantees about the…

Programming Languages · Computer Science 2022-06-23 Roberto Bagnara , Michele Chiari , Roberta Gori , Abramo Bagnara

We present a novel and well automatable approach to formal verification of C programs with underspecified semantics, i.e., a language semantics that leaves open the order of certain evaluations. First, we reduce this problem to…

Programming Languages · Computer Science 2022-08-10 Eduard Kamburjan , Nathan Wasser

Formal verification entails testing software to ensure it operates as specified. Smart contracts are self-executing contracts with the terms of the agreement directly written into lines of code. They run on blockchain platforms and…

Software Engineering · Computer Science 2025-10-22 Rene Davila , Everardo Barcenas , Rocio Aldeco-Perez

Model transformations operate on models conforming to precisely defined metamodels. Consequently, it often seems relatively easy to chain them: the output of a transformation may be given as input to a second one if metamodels match.…

Artificial Intelligence · Computer Science 2010-03-04 Raphael Chenouard , Frédéric Jouault

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…

Logic in Computer Science · Computer Science 2021-09-13 Stefan Hetzl , Johannes Kloibhofer

Despite decades of research, there are still a number of concepts commonly found in software programs that are considered challenging for verification: among others, such concepts include concurrency, and the compositional analysis of…

Logic in Computer Science · Computer Science 2013-02-19 Philipp Rümmer , Hossein Hojjat , Viktor Kuncak

Software contracts allow programmers to state rich program properties using the full expressive power of an object language. However, since they are enforced at runtime, monitoring contracts imposes significant overhead and delays error…

Programming Languages · Computer Science 2017-11-13 Phuc C. Nguyen , Thomas Gilray , Sam Tobin-Hochstadt , David Van Horn

Blockchain smart contracts play a crucial role in automating and securing agreements in diverse domains such as finance, healthcare, and supply chains. Despite their critical applications, testing these contracts often receives less…

Software Engineering · Computer Science 2025-01-20 Irving Jared Villanueva , Madhusudan Srinivasan , Faqeer Ur Rehman

Answer-set programming (ASP) has emerged recently as a viable programming paradigm well attuned to search problems in AI, constraint satisfaction and combinatorics. Propositional logic is, arguably, the simplest ASP system with an intuitive…

Artificial Intelligence · Computer Science 2007-05-23 Deborah East , Miroslaw Truszczynski