首页 | 本学科首页   官方微博 | 高级检索  
     


Model Checking Programs
Authors:Willem Visser  Klaus Havelund  Guillaume Brat  SeungJoon Park  Flavio Lerda
Affiliation:(1) RIACS/NASA Ames Research Center, Moffet Field, CA 94035, USA;(2) Kestrel Technologies/NASA Ames Research Center, Moffet Field, CA 94035, USA
Abstract:The majority of work carried out in the formal methods community throughout the last three decades has (for good reasons) been devoted to special languages designed to make it easier to experiment with mechanized formal methods such as theorem provers, proof checkers and model checkers. In this paper we will attempt to give convincing arguments for why we believe it is time for the formal methods community to shift some of its attention towards the analysis of programs written in modern programming languages. In keeping with this philosophy we have developed a verification and testing environment for Java, called Java PathFinder (JPF), which integrates model checking, program analysis and testing. Part of this work has consisted of building a new Java Virtual Machine that interprets Java bytecode. JPF uses state compression to handle big states, and partial order and symmetry reduction, slicing, abstraction, and runtime analysis techniques to reduce the state space. JPF has been applied to a real-time avionics operating system developed at Honeywell, illustrating an intricate error, and to a model of a spacecraft controller, illustrating the combination of abstraction, runtime analysis, and slicing with model checking.
Keywords:model checking  Java  symmetry  abstraction  runtime analysis  static analysis
本文献已被 SpringerLink 等数据库收录!
设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号