Logical Characterization of Coherent Uninterpreted Programs

V. K. Hari Govind, Sharon Shoham, Arie Gurfinkel

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

An uninterpreted program (UP) is a program whose semantics is defined over the theory of uninterpreted functions. This is a common abstraction used in equivalence checking, compiler optimization, and program verification. While simple, the model is sufficiently powerful to encode counter automata, and, hence, undecidable. Recently, a class of UP programs, called coherent, has been proposed and shown to be decidable. We provide an alternative, logical characterization, of this result. Specifically, we show that every coherent program is bisimilar to a finite state system. Moreover, an inductive invariant of a coherent program is representable by a formula whose terms are of depth at most 1. We also show that the original proof, via automata, only applies to programs over unary uninterpreted functions. While this work is purely theoretical, it suggests a novel abstraction that is complete for coherent programs but can be soundly used on arbitrary uninterpreted (and partially interpreted) programs.

Original languageEnglish
Title of host publicationProceedings of the 21st Formal Methods in Computer-Aided Design, FMCAD 2021
EditorsRuzica Piskac, Michael W. Whalen, Warren A. Hunt, Georg Weissenbacher
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages77-85
Number of pages9
ISBN (Electronic)9783854480464
DOIs
StatePublished - 2021
Event21st International Conference on Formal Methods in Computer-Aided Design, FMCAD 2021 - Virtual, Online, United States
Duration: 18 Oct 202122 Oct 2021

Publication series

NameProceedings of the 21st Formal Methods in Computer-Aided Design, FMCAD 2021

Conference

Conference21st International Conference on Formal Methods in Computer-Aided Design, FMCAD 2021
Country/TerritoryUnited States
CityVirtual, Online
Period18/10/2122/10/21

Fingerprint

Dive into the research topics of 'Logical Characterization of Coherent Uninterpreted Programs'. Together they form a unique fingerprint.

Cite this