arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 2107.12902cs.LOcs.FL
收藏

一致性未解释程序的逻辑特征

Logical Characterization of Coherent Uninterpreted Programs

Hari Govind V K, Sharon Shoham, Arie Gurfinkel

摘要:

一个未解释的程序(UP)是一个程序,其语义定义在理论上的未解释的功能。这是等价性检查、编译器优化和程序验证中常用的抽象。虽然简单,但该模型足够强大,可以对计数器自动机进行编码,因此不可判定。最近,一类UP程序,称为相干,已被提出并证明是可判定的。我们提供了一个替代的,合乎逻辑的表征,这一结果。具体来说,我们证明了每一个相干程序是一个有限状态系统的双相似。此外,一个连贯程序的归纳不变量可以用一个公式表示,该公式的项的深度至多为1。我们还表明,原来的证明,通过自动机,只适用于一元未解释的功能的程序。虽然这项工作是纯理论的,它提出了一种新颖的抽象,是完整的连贯的程序,但可以合理地用于任意的未解释(和部分解释)的程序。

英文摘要:

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.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑