基于QBF的循环不变式构造技术
收稿日期: 2010-03-10
修回日期: 2010-06-20
网络出版日期: 2010-09-02
基金资助
国家自然科学基金资助项目(60703075,90718017);教育部高等学校博士学科点专项基金资助项目(20070006055)
Constructing Program Invariants Based on QBF
Received date: 2010-03-10
Revised date: 2010-06-20
Online published: 2010-09-02
陈石坤1,李舟军2 . 基于QBF的循环不变式构造技术[J]. 计算机工程与科学, 2010 , 32(9) : 76 -80 . DOI: 10.3969/j.issn.1007130X.2010.
Constructing loop invariants is one of the key problems of program verification. Stateoftheart approaches to invariant generation usually assume that program variables are evaluated over infinite domains such as rational or integer. Actually,during the execution of a program,all variables are expressed using bitvectors with a limited width and evaluated over finite domains. Many invariants suitable for infinite domains may be invalid in finite domains,and vice versa. This paper proposes an approach based on QBF (Quantified Boolean Formula) to construct invariants for programs whose variables are evaluated over finite domains. It can be used to discover a rich class of invariants including linear (or polynomial) equality (or inequality) invariants involving such operations as addition,multiplication,division,shift,bitwise operation,even quantifiers. And we also exemplify the usefulness of this approach in the termination analysis,the bound analysis and the verification of correctness.
Key words: program verification;loop Invariant;QBF
/
| 〈 |
|
〉 |