English
Related papers

Related papers: An Inductive Proof Method for Simulation-based Com…

200 papers

This talk describes how a combination of symbolic computation techniques with first-order theorem proving can be used for solving some challenges of automating program analysis, in particular for generating and proving properties about the…

Programming Languages · Computer Science 2017-04-17 Laura Kovacs

Program verification is to develop the program's proof system, and to prove the proof system soundness with respect to a trusted operational semantics of the program. However, many practical program verifiers are not based on operational…

Logic in Computer Science · Computer Science 2021-02-09 ShangBei Wang

One of the effective model checking methods is to utilize the efficient decision procedure of SAT (or SMT) solvers. In a SAT-based model checking, a system and its property are encoded into a set of logic formulas and the safety is checked…

Logic in Computer Science · Computer Science 2022-03-14 Daisuke Ishii , Saito Fujii

Induction in saturation-based first-order theorem proving is a new exciting direction in the automation of inductive reasoning. In this paper we survey our work on integrating induction directly into the saturation-based proof search…

Logic in Computer Science · Computer Science 2024-03-01 Márton Hajdu , Petra Hozzová , Laura Kovács , Giles Reger , Andrei Voronkov

Probabilistic applicative bisimulation is a recently introduced coinductive methodology for program equivalence in a probabilistic, higher-order, setting. In this paper, the technique is applied to a typed, call-by-value, lambda-calculus.…

Logic in Computer Science · Computer Science 2014-01-30 Raphaelle Crubille , Ugo Dal Lago

Loop invariants are fundamental to reasoning about programs with loops. They establish properties about a given loop's behavior. When they additionally are inductive, they become useful for the task of formal verification that seeks to…

Verification problems of programs written in various paradigms (such as imperative, logic, concurrent, functional, and object-oriented ones) can be reduced to problems of solving Horn clause constraints on predicate variables that represent…

Programming Languages · Computer Science 2016-10-24 Hiroshi Unno , Sho Torii

Inductions and game semantics are two useful extensions to traditional logic programming. To be specific, inductions can capture a wider class of provable formulas in logic programming. Adopting game semantics can make logic programming…

Logic in Computer Science · Computer Science 2015-08-11 Keehang Kwon

We present the design, implementation, and foundation of a verifier for higher-order functional programs with generics and recursive data types. Our system supports proving safety and termination using preconditions, postconditions and…

Logic in Computer Science · Computer Science 2020-03-25 Jad Hamza , Nicolas Voirol , Viktor Kunčak

We present an automated reasoning framework for synthesizing recursion-free programs using saturation-based theorem proving. Given a functional specification encoded as a first-order logical formula, we use a first-order theorem prover to…

Logic in Computer Science · Computer Science 2024-03-01 Petra Hozzová , Laura Kovács , Chase Norman , Andrei Voronkov

We propose an approach for modular verification of programs written in an object-oriented language where, like in C++, the same virtual method call is bound to different methods at different points during the construction or destruction of…

Programming Languages · Computer Science 2023-07-18 Niels Mommen , Bart Jacobs

In answer set programming, two groups of rules are considered strongly equivalent if they have the same meaning in any context. Strong equivalence of two programs can be sometimes established by deriving rules of each program from rules of…

Logic in Computer Science · Computer Science 2026-01-14 Jorge Fandinno , Vladimir Lifschitz

The overall problem addressed in this paper is the long-standing problem of program correctness, and in particular programs that describe systems of parallel executing processes. We propose a new method for proving correctness of parallel…

Programming Languages · Computer Science 2023-02-10 Frank S. de Boer , Einar Broch Johnsen , Violet Ka I Pun , Silvia Lizeth Tapia Tarifa

We introduce a method for using deep neural networks to amortize the cost of inference in models from the family induced by universal probabilistic programming languages, establishing a framework that combines the strengths of probabilistic…

Artificial Intelligence · Computer Science 2018-09-03 Tuan Anh Le , Atilim Gunes Baydin , Frank Wood

We axiomatize the molecular-biology reasoning style, show compliance of the standard reference: Ptashne, A Genetic Switch, and present proof-theory-induced technologies to help infer phenotypes and to predict life cycles from genotypes. The…

Other Quantitative Biology · Quantitative Biology 2019-03-19 René Vestergaard , Emmanuel Pietriga

User defined recursive types are a fundamental feature of modern functional programming languages like Haskell, Clean, and the ML family of languages. Properties of programs defined by recursion on the structure of recursive types are…

Programming Languages · Computer Science 2013-12-11 James Caldwell

An inductive inference system for proving validity of formulas in the initial algebra $T_{\mathcal{E}}$ of an order-sorted equational theory $\mathcal{E}$ is presented. It has 20 inference rules, but only 9 of them require user interaction;…

Logic in Computer Science · Computer Science 2024-05-07 Jose Meseguer

Inference systems are a widespread framework used to define possibly recursive predicates by means of inference rules. They allow both inductive and coinductive interpretations that are fairly well-studied. In this paper, we consider a…

Logic in Computer Science · Computer Science 2023-06-22 Francesco Dagnino

We propose a procedure for automated implicit inductive theorem proving for equational specifications made of rewrite rules with conditions and constraints. The constraints are interpreted over constructor terms (representing data values),…

Logic in Computer Science · Computer Science 2008-12-01 Adel Bouhoula , Florent Jacquemard

The purpose of this paper is to develop and study recursive proofs of coinductive predicates. Such recursive proofs allow one to discover proof goals in the construction of a proof of a coinductive predicate, while still allowing the use of…

Logic in Computer Science · Computer Science 2018-02-21 Henning Basold