Loading...
Please wait, while we are loading the content...
Similar Documents
An overview of the Leon verification system: Verification by translation to recursive functions (2013)
| Content Provider | CiteSeerX |
|---|---|
| Author | Blanc, Régis Kneuss, Etienne Kuncak, Viktor |
| Description | We present the Leon verification system for a subset of the Scala programming language. Along with several functional features of Scala, Leon supports imperative constructs such as mutations and loops, using a translation into recursive functional form. Both properties and programs in Leon are expressed in terms of user-defined functions. We discuss several techniques that led to an efficient semi-decision pro-cedure for first-order constraints with recursive functions, which is the core solving engine of Leon. We describe a generational unrolling strategy for recursive templates that yields smaller satisfiable formulas and ensures completeness for counterexamples. We illustrate the current capabilities of Leon on a set of examples, such as data structure imple-mentations; we show that Leon successfully finds bugs or proves completeness of pattern matching as well as validity of function postconditions. |
| File Format | |
| Language | English |
| Publisher Date | 2013-01-01 |
| Publisher Institution | In Scala Workshop |
| Access Restriction | Open |
| Subject Keyword | Satisfiable Formula Recursive Function Pattern Matching Current Capability Efficient Semi-decision Pro-cedure Several Technique Scala Programming Language Several Functional Feature Generational Unrolling Strategy Imperative Construct User-defined Function Function Postconditions Recursive Functional Form Recursive Template Leon Verification System Data Structure Imple-mentations First-order Constraint |
| Content Type | Text |
| Resource Type | Article |