A Hypothesis-Based Approach to Detecting Runtime Violations

Lizhang Qin, Xiaoping Jia, Hongming Liu

Abstract

We have developed an approach to apply formal methods to represent program source code as a model and use an automated theorem prover to detect runtime violations by doing static analysis. Unlike other proof-based program verification approaches, this approach is based on a hypothesis to develop the implicit specification information, such as invariants, preconditions, postconditions, then using an automated theorem prover to verify the correctness of each statement in the program. Our research work can catch those run-time exceptions that are beyond the capability of control flow-based analysis in compilers.

References

  1. Cousot, P. and Cousot R., 1977. Abstract Interpretation: A Unified Lattice Model for Static Analysis of Programs by Construction or Approximation Fixpoints In Proc. ACM SIGPLAN Conference on Programming Languages
  2. Dijkstra, E., 1975. Guarded Commands, Nondeterminacy and Formal Derivation of Program. In Communications of ACM. 18(8).
  3. Hoare, A., 1969. An Axiomatic Basis for Computer Programming. In Communications of ACM, 12(10).
  4. Kemp, D. and Goodfellow G., 1990. The Official Report, technical report. In ACM SIGSOFT).
  5. Leino, K. and Stata, R., 1997. Checking Object Invariants, technical report, Digital Equipment Corporation Research Center. Palo Alto, CA.
  6. Schumann, J., 2001. Automated Theorem Proving in Software Engineering, Springer
  7. Skevoulis, S. and Jia, X., 2000. Generic Invariant-Based Static Analysis Tool For Detection of Runtime Errors in Java Programs.
  8. McMillan, K., 1993. Symbolic Model Checking: An Approach to the State Explosion Problem, Kluwer.
  9. Holzmann, G., 1991. Design and Validation of Computer Protocols, Prentice Hall.
  10. Visser, W., Havelund, K., Brat, G. and Park, S., 2000. Model cheking Programs. In 15th Conference on automated Software Engineering(ASE), IEEE Press
  11. Pasareanu, C., Dwyer, M. and Visser, W., 2001. Finding Feasible Counter-examples when Model checking Java Programs. In Proc. of the 7th International Conference on Tools and Algorithms for the Construction and Analysis of Systems, Springer-Verlag
  12. Ball, T. and Rajamani, S., 2001. Automatically Validating Temporal Safety Properties of Interface. In Proc. of SPIN 2001 Workshop on Model Checking of Software.
  13. Gosling, J., Joy, B. and Steele, G., 1996. The Javatm Language Specification, AddisonWesley
Download


Paper Citation


in Harvard Style

Qin L., Jia X. and Liu H. (2004). A Hypothesis-Based Approach to Detecting Runtime Violations . In Proceedings of the 2nd International Workshop on Verification and Validation of Enterprise Information Systems - Volume 1: VVEIS, (ICEIS 2004) ISBN 972-8865-03-1, pages 60-65. DOI: 10.5220/0002676400600065


in Bibtex Style

@conference{vveis04,
author={Lizhang Qin and Xiaoping Jia and Hongming Liu},
title={A Hypothesis-Based Approach to Detecting Runtime Violations},
booktitle={Proceedings of the 2nd International Workshop on Verification and Validation of Enterprise Information Systems - Volume 1: VVEIS, (ICEIS 2004)},
year={2004},
pages={60-65},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0002676400600065},
isbn={972-8865-03-1},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 2nd International Workshop on Verification and Validation of Enterprise Information Systems - Volume 1: VVEIS, (ICEIS 2004)
TI - A Hypothesis-Based Approach to Detecting Runtime Violations
SN - 972-8865-03-1
AU - Qin L.
AU - Jia X.
AU - Liu H.
PY - 2004
SP - 60
EP - 65
DO - 10.5220/0002676400600065