摘要
作为一种通用的语义近似理论,抽象解释已广泛应用于各类程序的形式化验证中。现有基于抽象解释的逻辑程序验证技术未涉及与程序点相关联的程序性质的验证,设计能够描述此类性质的逻辑程序具体语义和抽象语义是构造相应验证工具的关键。本文给出了一种基于抽象解释的Prolog程序验证方法,该方法采用了具有路径信息的Prolog语义及其抽象作为语义基础,因而可用于验证与程序点相关联的程序特性。本文例子表明了该验证方法的有效性。
Abstract interpretation is a general theory of semantics approximation, which has been widely used in the verification of computer programs. Existing abstract interpretation based verification methods for logic programs do not deal with the properties associated with the program points. Based on our previous work on Prolog semantics, an abstract interpretation based verification method for Prolog programs is proposed in this paper, which makes use of a denotational semantics for Pro[og that contains path information about the execution of the goals in a program. Since the semantics is capable of describing program properties associated with program points, it's natural for our verification method to be able to verify such a class of properties. The applicability of our method is exemplified in this paper.
出处
《计算机科学》
CSCD
北大核心
2008年第7期261-268,共8页
Computer Science
基金
国家自然科学基金(60563005
60663005)
广西青年科学基金(桂科青0728093
0542036)
关键词
抽象解释
程序验证
PROLOG
不动点语义
Abstract interpretation, Program verification, Prolog, Fixpoint semantics