当前位置:
X-MOL 学术
›
arXiv.cs.FL
›
论文详情
Our official English website, www.x-mol.net, welcomes your
feedback! (Note: you will need to create a separate account there.)
Logical Characterization of Coherent Uninterpreted Programs
arXiv - CS - Formal Languages and Automata Theory Pub Date : 2021-07-26 , DOI: arxiv-2107.12902 Hari Govind V K, Sharon Shoham, Arie Gurfinkel
arXiv - CS - Formal Languages and Automata Theory Pub Date : 2021-07-26 , DOI: arxiv-2107.12902 Hari Govind V K, Sharon Shoham, Arie Gurfinkel
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.
中文翻译:
连贯未解释程序的逻辑特征
未解释程序 (UP) 是一种程序,其语义是根据未解释函数理论定义的。这是用于等价检查、编译器优化和程序验证的常见抽象。虽然简单,但该模型足够强大,可以对计数器自动机进行编码,因此是不可判定的。最近,已经提出了一类称为相干的 UP 程序并证明它是可判定的。我们为此结果提供了另一种逻辑特征。具体来说,我们表明每个相干程序都类似于有限状态系统。此外,相干程序的归纳不变量可以用一个公式表示,该公式的项的深度最多为 1。我们还表明,通过自动机的原始证明仅适用于一元未解释函数上的程序。虽然这项工作纯粹是理论性的,
更新日期:2021-07-28
中文翻译:
连贯未解释程序的逻辑特征
未解释程序 (UP) 是一种程序,其语义是根据未解释函数理论定义的。这是用于等价检查、编译器优化和程序验证的常见抽象。虽然简单,但该模型足够强大,可以对计数器自动机进行编码,因此是不可判定的。最近,已经提出了一类称为相干的 UP 程序并证明它是可判定的。我们为此结果提供了另一种逻辑特征。具体来说,我们表明每个相干程序都类似于有限状态系统。此外,相干程序的归纳不变量可以用一个公式表示,该公式的项的深度最多为 1。我们还表明,通过自动机的原始证明仅适用于一元未解释函数上的程序。虽然这项工作纯粹是理论性的,