What's Decidable About Program Verification Modulo Axioms?

by   Umang Mathur, et al.

We consider the decidability of the verification problem of programs modulo axioms— that is, verifying whether programs satisfy their assertions, when the functions and relations it uses are assumed to interpreted by arbitrary functions and relations that satisfy a set of first-order axioms. Unfortunately, verification of entirely uninterpreted programs (with the empty set of axioms) is already undecidable. A recent work introduced a subclass of coherent uninterpreted programs, and showed that they admit decidable verification <cit.>. We undertake a systematic study of various natural axioms for relations and functions, and study the decidability of the coherent verification problem. Axioms include relations being reflexive, symmetric, transitive, or total order relations, functions restricted to being associative, idempotent or commutative, and combinations of such axioms as well. Our comprehensive results unearth a rich landscape that shows that though several axiom classes admit decidability for coherent programs, coherence is not a panacea as several others continue to be undecidable.



There are no comments yet.


page 1


Decidable Verification of Uninterpreted Programs

verifying uninterpreted programs---programs that work over arbitrary da...

Logical Characterization of Coherent Uninterpreted Programs

An uninterpreted program (UP) is a program whose semantics is defined ov...

Decidable Synthesis of Programs with Uninterpreted Functions

We identify a decidable synthesis problem for a class of programs of unb...

Modular Verification of Concurrent Programs via Sequential Model Checking

This work utilizes the plethora of work on verification of sequential pr...

Dynamic Verification of C/C++11 Concurrency over Multi Copy Atomics

We investigate the problem of runtime analysis of C11 programs under Mul...

Finite Representability of Semigroups with Demonic Refinement

Composition and demonic refinement ⊑ of binary relations are defined by ...

Lemma Functions for Frama-C: C Programs as Proofs

This paper describes the development of an auto-active verification tech...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.