Repository logo

Infoscience

  • English
  • French
Log In
Logo EPFL, École polytechnique fédérale de Lausanne

Infoscience

  • English
  • French
Log In
  1. Home
  2. Academic and Research Output
  3. Conferences, Workshops, Symposiums, and Seminars
  4. An overview of the Leon verification system: verification by translation to recursive functions
 
conference paper not in proceedings

An overview of the Leon verification system: verification by translation to recursive functions

Blanc, Régis
•
Kneuss, Etienne  
•
Kuncak, Viktor  orcid-logo
Show more
2013
SCALA 2013

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 procedure 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 implementations; we show that Leon successfully finds bugs or proves completeness of pattern matching as well as validity of function postconditions.

  • Details
  • Metrics
Type
conference paper not in proceedings
DOI
10.1145/2489837.2489838
Author(s)
Blanc, Régis
Kneuss, Etienne  
Kuncak, Viktor  orcid-logo
Suter, Philippe  
Date Issued

2013

ISBN of the book

978-1-4503-2064-1

Editorial or Peer reviewed

REVIEWED

Written at

EPFL

EPFL units
LARA  
Event nameEvent placeEvent date
SCALA 2013

Montpellier, France

2013

Available on Infoscience
April 25, 2014
Use this identifier to reference this record
https://infoscience.epfl.ch/handle/20.500.14299/102949
Logo EPFL, École polytechnique fédérale de Lausanne
  • Contact
  • infoscience@epfl.ch

  • Follow us on Facebook
  • Follow us on Instagram
  • Follow us on LinkedIn
  • Follow us on X
  • Follow us on Youtube
AccessibilityLegal noticePrivacy policyCookie settingsEnd User AgreementGet helpFeedback

Infoscience is a service managed and provided by the Library and IT Services of EPFL. © EPFL, tous droits réservés