|
ABSTRACT
The implementations of many seemingly simple algorithms are beyond the ability of traditional Extended Static Checking (ESC) tools to verify. Not being able to verify toy examples is often enough to turn users off of the idea of using formal methods. ESC4, the ESC component of the JML4 project, is able to verify many more kinds of methods in part because of its use of novel techniques which apply multiple theorem provers. In particular, we present Offline User-Assisted ESC (OUA-ESC), a new form of verification that lies between ESC and Full Static Program Verification (FSPV), that allows users to control the level of completeness of the tool. ESC4's improved performance should encourage greater use of static verification.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
Isabelle, 2008. Homepage at http://isabelle.in.tum.de.
|
| |
2
|
Metis theorem prover, 2008. Homepage at http://www.gilith.com/software/metis/.
|
| |
3
|
Proof General Eclipse, 2008. Homepage at http://proofgeneral.inf.ed.ac.uk/eclipse.
|
| |
4
|
Why: software verification platform, 2008. Homepage at http://why.lri.fr.
|
 |
5
|
|
| |
6
|
Barnett, M., Leino, K. R. M., and Schulte, W. The Spec# Programming System: An overview. In CASSIS 2004: International Workshop on Construction and Analysis of Safe, Secure, and Interoperable Smart Devices (2004), pp. 49--69.
|
| |
7
|
|
 |
8
|
|
| |
9
|
Patrice Chalin , Perry R. James , George Karabotsos, JML4: Towards an Industrial Grade IVE for Java and Next Generation Research Platform for JML, Proceedings of the 2nd international conference on Verified Software: Theories, Tools, Experiments, October 06-09, 2008, Toronto, Canada
[doi> 10.1007/978-3-540-87873-5_9]
|
| |
10
|
Cok, D. R., and Kiniry, J. R. ESC/Java2: Uniting ESC/Java and JML. In Construction and Analysis of Safe, Secure, and Interoperable Smart Devices (2005), vol. 3362/2005 of LNCS, Springer Berlin, pp. 108--128.
|
| |
11
|
Filliâtre, J.-C. The WHY verification tool: Tutorial and reference manual, 2008. Available at http://why.lri.fr.
|
| |
12
|
Filliâtre, J.-C., Hubert, T., and Marché, C. The Caduceus verification tool for C programs: Tutorial and reference manual, 2008. Available at http://caduceus.lri.fr.
|
 |
13
|
Cormac Flanagan , K. Rustan M. Leino , Mark Lillibridge , Greg Nelson , James B. Saxe , Raymie Stata, Extended static checking for Java, Proceedings of the ACM SIGPLAN 2002 Conference on Programming language design and implementation, June 17-19, 2002, Berlin, Germany
|
| |
14
|
Karabotsos, G., Chalin, P., James, P. R., and Giannas, L. Total correctness of recursive functions using JML4FSPV. In SAVCBS '08: Proceedings of the 2008 Workshop on Specification and Verification of Component-Based Systems (2008).
|
| |
15
|
|
| |
16
|
Leavens, G. T., Poll, E., Clifton, C., Cheon, Y., Ruby, C., Cok, D., Müller, P., Kiniry, J., and Chalin, P. JML reference manual, 2008. Available at http://www.jmlspecs.org.
|
| |
17
|
Leino, K. R. M., and Monahan, R. Automatic verification of textbook programs that use comprehensions. In FTfJP '07: Proceedings of the 9th Workshop on Formal Techniques for Java-like Programs (2007).
|
| |
18
|
|
| |
19
|
Paulson, L. C., and Susanto, K. W. Source-level proof reconstruction for interactive theorem proving. In Theorem Proving in Higher Order Logics: TPHOLs 2007 (2007), K. Schneider and J. Brandt, Eds., LNCS 4732, Springer, pp. 232--245.
|
| |
20
|
|
|