Hybrid Contract Checking via Symbolic SimplificationReport as inadecuate

Hybrid Contract Checking via Symbolic Simplification - Download this document for free, or read online. Document in PDF available to download.

1 GALLIUM - Programming languages, types, compilation and proofs Inria Paris-Rocquencourt

Abstract : Program errors are hard to detect or prove absent. Allowing programmers to write formal and precise specifications, especially in the form of contracts, is a popular approach to program verification and error discovery. We formalize and implement a hybrid contract checker, that is static checking followed by dynamic checking, for a subset of OCaml. The key technique we use is symbolic simplification, which makes integrating static and dynamic contract checking easy and effective. Our technique statically verifies that a function either satisfies its contract or blames the function violating the contract. When a contract satisfaction is undecidable, it leaves residual code for dynamic contract checking.

Author: Na Xu -

Source: https://hal.archives-ouvertes.fr/


Related documents