期刊文献+

ON INVARIANT CHECKING

ON INVARIANT CHECKING
原文传递
导出
摘要 Checking whether a given formula is an invariant at a given program location(especially,inside a loop) can be quite nontrivial even for simple loop programs,given that it is in general an undecidable property.This is especially the case if the given formula is not an inductive loop invariant,as most automated techniques can only check or generate inductive loop invariants.In this paper,conditions are identified on simple loops and formulas when this check can be performed automatically.A general theorem is proved which gives a necessary and sufficient condition for a formula to be an invariant under certain restrictions on a loop.As a byproduct of this analysis,a new kind of loop invariant inside the loop body,called inside-loop invariant,is proposed.Such an invariant is more general than an inductive loop invariant typically used in the Floyd-Hoare axiomatic approach to program verification.The use of such invariants for program debugging is explored;it is shown that such invariants can be more useful than traditional inductive loop invariants especially when one is interested in checking extreme/side conditions such as underflow,accessing array/collection data structures outside the range,divide by zero,etc.
出处 《Journal of Systems Science & Complexity》 SCIE EI CSCD 2013年第3期470-482,共13页 系统科学与复杂性学报(英文版)
基金 supported by NSFC-90718041 NKBRPC-2005C B321902 China Scholarship Council in China supported by the National Science Foundation award CCF-0729097
关键词 ASSERTION Floyd-Hoare logic INVARIANT invariant generation. 检查 循环不变式 充分必要条件 感应线圈 程序验证 自动化程度 公理化方法 自动执行
  • 相关文献

参考文献1

二级参考文献34

  • 1B. Elspas, M. W. Green, K. N. Levitt, and R. J. Waldinger, Research in Interactive Program-Proving Techniques, Stanford Research Institute, Menlo Park, California, USA, May 1972.
  • 2S. German and B. Wegbreit, A synthesizer of inductive assertions, IEEE Transactions on Software Engineering, 1975, 1(1): 68-75.
  • 3S. Katz and Z. Manna, Logical analysis of programs, Communications of the ACM, 1976, 19(4):188-206.
  • 4P. Cousot and R. Cousot, Abstract interpretation: A unified lattice model for static analysis ofprograms by construction or approximation of fixpoints, in Conference Record of the Fourth Annual A CM SIGPLA N-SIGA CT Symposium on Principles of Programming Languages, Los Angeles,California, ACM Press, New York, NY,1977, 238-252.
  • 5P. Cousot and N. Halbwachs, Automatic discovery of linear restraints among variables of a program,in Conference Record of the Fifth Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, Tucson, Arizona, ACM Press, New York, NY, 1978, 84-97.
  • 6M. Muller-Olm and H. Seidl, Polynomial constants are decidable, in 9th Static Analysis Symposium(SAS) (LNCS 2477), Springer-Verlag, 2002.
  • 7M. Muller-Olm and H. Seidl, Precise interprocedural analysis through linear algebra, in Symposium on Principles of Programming Languages,2004,330-341.
  • 8E. Rodriguez-Carbonell and D. Kapur, An abstract interpretation approach for automatic generation of polynomial invariants, in 11th Symposium on Static Analysis (SAS) (LNCS 3148), Verona,Italy, Springer-Verlag, August 2004, 280-295.
  • 9W. Wu, On the decision problem and the mechanization of theorem proving in elementary geometry,Scientia Sinica, 1978, 21: 150-172.
  • 10D. Kapur and X. Nie, Reasoning about numbers in Tecton, in Proceedings 8th International Symposium on Methodologies for Intelligent Systems (ISMIS'94), October 1994, 57-70.

共引文献2

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

内容加载中请稍等...
;
使用帮助 返回顶部