Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
constraint_based_analysis_of_java_using_jahob_and_amrc [2007/06/14 11:58] vaibhav.rajan |
constraint_based_analysis_of_java_using_jahob_and_amrc [2007/06/14 12:28] vaibhav.rajan |
||
---|---|---|---|
Line 5: | Line 5: | ||
In this project, we are trying to bridge two verification tools Jahob and Armc. Jahob is quite powerful in accepting complecated Java programs and translate it into simplified intermidiate language. We are trying to write a translater from this representation of program to input format of ARMC. ARMC takes transition relation as input. ARMC is powerful in computing loop invariant and fixedpoint analysis automaticlly. Result of ARMC can be fed back to Jahob to improe its analysis of programs. (**Both the tools are evolving and It is difficult to claim about their capabilities.**) | In this project, we are trying to bridge two verification tools Jahob and Armc. Jahob is quite powerful in accepting complecated Java programs and translate it into simplified intermidiate language. We are trying to write a translater from this representation of program to input format of ARMC. ARMC takes transition relation as input. ARMC is powerful in computing loop invariant and fixedpoint analysis automaticlly. Result of ARMC can be fed back to Jahob to improe its analysis of programs. (**Both the tools are evolving and It is difficult to claim about their capabilities.**) | ||
===== Class Presentation ===== | ===== Class Presentation ===== | ||
- | I am going to present following paper. | + | I am going to present following paper which describes internal functions of ARMC. |
- | ==== ARMC: The Logical Choice for Software Model Checking with Abstraction Refinement ==== | ||
{{padl07-armc.pdf|ARMC: The Logical Choice for Software Model Checking with Abstraction Refinement}} | {{padl07-armc.pdf|ARMC: The Logical Choice for Software Model Checking with Abstraction Refinement}} | ||
+ | |||
+ | ==== ARMC ==== | ||
+ | |||
+ | ARMC stands for Abstract Refinement Model Checker. We have already learned this methodlogy in the course. This model checker executes program using abstract set of states. Model checker divided its process in following three procedures: | ||
+ | |||
+ | - ''Abstract Fixed Point'' | ||
+ | - ''Feasible Counter Example'' | ||
+ | - ''Refine'' | ||
+ | |||
+ | ARMC calls them in a loop. Until any of the following two event happens: | ||
+ | |||
+ | |||
+ | - ''Abstract Fixed Point'' finds a fixed point which does not contain error state. | ||
+ | - ''Feasible Counter Example'' finds a concrete counter example. | ||
+ | | ||
+ | |||
+ | === Abstract Fixed Point === | ||
+ | |||
+ | === Feasible Counter Example === | ||
+ | |||
+ | === Refine === | ||
+ | |||
+ | |||
+ | |||
+ |