Logical Characterization of Coherent Uninterpreted Programs
Hari Govind V K, Sharon Shoham, Arie Gurfinkel

TL;DR
This paper provides a logical characterization of coherent uninterpreted programs, showing their equivalence to finite state systems and describing properties of their invariants, thus advancing theoretical understanding in program verification.
Contribution
It offers a new logical perspective on coherent UP programs, demonstrating their bisimilarity to finite state systems and characterizing their invariants with shallow terms.
Findings
Coherent UP programs are bisimilar to finite state systems.
Inductive invariants of coherent programs have terms of depth at most 1.
The automata-based proof applies only to unary uninterpreted functions.
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…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsFormal Methods in Verification · Logic, programming, and type systems · Logic, Reasoning, and Knowledge
