English
Related papers

Related papers: Verifying Graph Programs with First-Order Logic

200 papers

In this work we target the problem of provably computing the equivalence between two programs represented as dataflow graphs. To this end, we formalize the problem of equivalence between two programs as finding a set of semantics-preserving…

Machine Learning · Computer Science 2021-06-07 Steve Kommrusch , Théo Barollet , Louis-Noël Pouchet

We present a novel strongest-postcondition-style calculus for quantitative reasoning about non-deterministic programs with loops. Whereas existing quantitative weakest pre allows reasoning about the value of a quantity after a program…

Logic in Computer Science · Computer Science 2022-02-24 Linpeng Zhang , Benjamin Lucien Kaminski

We deal with first-order definability in the embeddability ordering $( \mathcal{D}; \leq)$ of finite directed graphs. A directed graph $G\in \mathcal{D}$ is said to be embeddable into $G' \in \mathcal{D}$ if there exists an injective graph…

Logic · Mathematics 2018-06-21 Ádám Kunos

These notes present some extensions of a formal method introduced in an earlier paper. The formal method is designed as a tool for program verification of numerical computation and forms the basis of the software package VPC. Included in…

Logic in Computer Science · Computer Science 2014-11-21 Garry Pantelis

We introduce regular graph constraints and explore their decidability properties. The motivation for regular graph constraints is 1) type checking of changing types of objects in the presence of linked data structures, 2) shape analysis…

Programming Languages · Computer Science 2007-05-23 Viktor Kuncak , Martin Rinard

First Order Logic (FOL) is a powerful reasoning tool for program verification. Recent work on Ivy shows that FOL is well suited for verification of parameterized distributed systems. However, specifying many natural objects, such as a ring…

Logic in Computer Science · Computer Science 2019-03-11 Rylo Ashmore , Arie Gurfinkel , Richard Trefler

In first-year programming courses it is often difficult to show students how an algorithm can be discovered. In this paper we present a program format that supports the development from specification to code in small and obvious steps; that…

Programming Languages · Computer Science 2012-05-09 M. H. van Emden

We consider the problem of how to verify the security of probabilistic oblivious algorithms formally and systematically. Unfortunately, prior program logics fail to support a number of complexities that feature in the semantics and…

Programming Languages · Computer Science 2024-07-02 Pengbo Yan , Toby Murray , Olga Ohrimenko , Van-Thuan Pham , Robert Sison

We present a linear-time algorithm for deciding first-order (FO) properties in classes of graphs with bounded expansion, a notion recently introduced by Nesetril and Ossona de Mendez. This generalizes several results from the literature,…

Discrete Mathematics · Computer Science 2015-03-19 Zdenek Dvorak , Daniel Kral , Robin Thomas

We present results concerning the expressiveness and decidability of a popular graph learning formalism, graph neural networks (GNNs), exploiting connections with logic. We use a family of recently-discovered decidable logics involving…

Logic in Computer Science · Computer Science 2025-01-31 Michael Benedikt , Chia-Hsuan Lu , Tony Tan

We consider limit probabilities of first order properties in random graphs with a given degree sequence. Under mild conditions on the degree sequence, we show that the closure set of limit probabilities is a finite union of closed…

Combinatorics · Mathematics 2024-05-24 Alberto Larrauri , Guillem Perarnau

Program logics are a powerful formal method in the context of program verification. Can we develop a counterpart of program logics in the context of language verification? This paper proposes language logics, which allow for statements of…

Programming Languages · Computer Science 2024-08-06 Matteo Cimini

Automatically verifying safety properties of programs is hard, and it is even harder if the program acts upon arrays or other forms of maps. Many approaches exist for verifying programs operating upon Boolean and integer values (e.g.…

Programming Languages · Computer Science 2015-10-01 David Monniaux , Laure Gonnord

We consider dataflow architecture for two classes of computations which admit taking linear combinations of execution runs: probabilistic sampling and generalized animation. We improve the earlier technique of almost continuous program…

Programming Languages · Computer Science 2016-01-12 Michael Bukatin , Steve Matthews

Higher-order functions and imperative states are language features supported by many mainstream languages. Their combination is expressive and useful, but complicates specification and reasoning, due to the use of yet-to-be-instantiated…

Programming Languages · Computer Science 2024-07-03 Darius Foo , Yahui Song , Wei-Ngan Chin

Learning the dependence structure among variables in complex systems is a central problem across medical, natural, and social sciences. These structures can be naturally represented by graphs, and the task of inferring such graphs from data…

Methodology · Statistics 2026-04-02 Lucas Kook , Søren Wengel Mogensen

Many foundational program verification tools have been developed to build machine-checked program correctness proofs, a majority of which are based on Hoare logic. Their program logics, their assertion languages, and their underlying…

Programming Languages · Computer Science 2023-10-27 Zhongye Wang , Qinxiang Cao , Yichen Tao

We develop the first two heap logics that have implicit heaplets and that admit FO-complete program verification. The notion of FO-completeness is a theoretical guarantee that all theorems that are valid when recursive definitions are…

Logic in Computer Science · Computer Science 2026-01-13 Adithya Murali , Hrishikesh Balakrishnan , Aaron Councilman , P. Madhusudan

The first-order (FO) model checking problem asks, given an FO sentence $\phi$ and a graph $G$, whether $G$ is a model of $\phi$. This problem is known to be $\mathsf{AW[*]}$-hard when parameterized by the quantifier rank of the formula. A…

Logic in Computer Science · Computer Science 2026-04-27 Jan Jedelský

The problem of characterizing testable graph properties (properties that can be tested with a number of queries independent of the input size) is a fundamental problem in the area of property testing. While there has been some extensive…

Data Structures and Algorithms · Computer Science 2019-09-25 Artur Czumaj , Christian Sohler