English
Related papers

Related papers: Disjunctive Interpolants for Horn-Clause Verificat…

200 papers

Abstraction is a successful technique in software verification, and interpolation on infeasible error paths is a successful approach to automatically detect the right level of abstraction in counterexample-guided abstraction refinement.…

Software Engineering · Computer Science 2015-02-03 Dirk Beyer , Stefan Löwe , Philipp Wendler

Craig interpolation is used in program verification for automating key tasks such as the inference of loop invariants and the computation of program abstractions. This chapter covers some of the most important techniques that have been…

Logic in Computer Science · Computer Science 2026-02-10 Philipp Rümmer

Building on the successes of satisfiability modulo theories (SMT), Bj{\o}rner et al. initiated a research programme advocating Horn constraints as a suitable basis for automatic program verification. The notion of first-order constrained…

Programming Languages · Computer Science 2019-02-25 Long Pham , Steven J. Ramsay , C. -H. Luke Ong

Verifying programs that manipulate tree data structures often requires complex, ad-hoc proofs that are hard to generalize and automate. This paper introduces an automatic technique for analyzing such programs. Our approach combines automata…

Programming Languages · Computer Science 2024-10-15 Marco Faella , Gennaro Parlato

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

We report on work in progress on automatic procedures for proving properties of programs written in higher-order functional languages. Our approach encodes higher-order programs directly as first-order SMT problems over Horn clauses. It is…

Logic in Computer Science · Computer Science 2013-06-25 Nikolaj Bjorner , Ken McMillan , Andrey Rybalchenko

This is a survey on propositional proof complexity aimed at introducing the basics of the field with a particular focus on a method known as feasible interpolation. This method is used to construct "hard theorems" for several proof systems…

Logic · Mathematics 2025-05-07 Amirhossein Akbar Tabatabai

Software model checking is a challenging problem, and generating relevant invariants is a key factor in proving the safety properties of a program. Program invariants can be obtained by various approaches, including lightweight procedures…

Software Engineering · Computer Science 2024-10-28 Dirk Beyer , Po-Chun Chien , Nian-Ze Lee

The proof of a program property can be reduced to the proof of satisfiability of a set of constrained Horn clauses (CHCs) which can be automatically generated from the program and the property. In this paper we have conducted a case study…

Logic in Computer Science · Computer Science 2019-07-10 Emanuele De Angelis , Fabio Fioravanti , Alberto Pettorossi , Maurizio Proietti

Effective verification and validation techniques for modern scientific machine learning workflows are challenging to devise. Statistical methods are abundant and easily deployed, but often rely on speculative assumptions about the data and…

Machine Learning · Computer Science 2025-02-11 Tyler Chang , Andrew Gillette , Romit Maulik

This article focuses on automatically generating polynomial equations that are inductive loop invariants of computer programs. We propose a new algorithm for this task, which is based on polynomial interpolation. Though the proposed…

Software Engineering · Computer Science 2012-04-25 Marc Moreno Maza , Rong Xiao

We propose a novel method for inferring refinement types of higher-order functional programs. The main advantage of the proposed method is that it can infer maximally preferred (i.e., Pareto optimal) refinement types with respect to a…

Programming Languages · Computer Science 2015-05-19 Kodai Hashimoto , Hiroshi Unno

Constrained Horn Clauses (CHCs) are often used in automated program verification. Thus, techniques for (dis-)proving satisfiability of CHCs are a very active field of research. On the other hand, acceleration techniques for computing…

Logic in Computer Science · Computer Science 2023-07-17 Florian Frohn , Jürgen Giesl

Constrained Horn Clauses (CHCs) have conventionally been used as a low-level representation in formal verification. Most existing solvers use a diverse set of specialized techniques, including direct state space traversal or…

Logic in Computer Science · Computer Science 2024-04-24 Márk Somorjai , Mihály Dobos-Kovács , Zsófia Ádám , Levente Bajczi , András Vörös

We present a method for automatic inference of conditions on the initial states of a program that guarantee that the safety assertions in the program are not violated. Constrained Horn clauses (CHCs) are used to model the program and…

Logic in Computer Science · Computer Science 2018-04-18 Bishoksan Kafle , John P. Gallagher , Graeme Gange , Peter Schachte , Harald Sondergaard , Peter J. Stuckey

Despite the recent progress of automated program verification techniques, fully automated verification of programs manipulating recursive data structures remains a challenge. We introduce solvable tuple patterns (STPs) and conjunctive STPs…

Programming Languages · Computer Science 2026-05-27 Naoki Kobayashi , Ryosuke Sato , Ayumi Shinohara , Ryo Yoshinaka

We establish proof-theoretic, constructive and coalgebraic foundations for proof search in coinductive Horn clause theories. Operational semantics of coinductive Horn clause resolution is cast in terms of coinductive uniform proofs; its…

Logic in Computer Science · Computer Science 2022-03-16 Henning Basold , Ekaterina Komendantskaya , Yue Li

Developing an efficient non-linear Horn clause solver is a challenging task since the solver has to reason about the tree structures rather than the linear ones as in a linear solver. In this paper we propose an incremental approach to…

Logic in Computer Science · Computer Science 2015-11-23 Bishoksan Kafle

Craig interpolation is a fundamental property of classical and non-classic logics with a plethora of applications from philosophical logic to computer-aided verification. The question of which interpolants can be obtained from an…

Logic in Computer Science · Computer Science 2025-01-14 Stefan Hetzl , Raheleh Jalali

We show how variations of range-restriction and also the Horn property can be passed from inputs to outputs of Craig interpolation in first-order logic. The proof system is clausal tableaux, which stems from first-order ATP. Our results are…

Logic in Computer Science · Computer Science 2023-09-28 Christoph Wernhard