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. Reports, Documentation, and Standards
  4. On Counter-Example Complete Verification for Higher-Order Functions
 
Loading...
Thumbnail Image
report

On Counter-Example Complete Verification for Higher-Order Functions

Voirol, Nicolas  
•
Kneuss, Etienne  
•
Kuncak, Viktor  
2015

We present a verification procedure for pure higher-order functional Scala programs with parametric types. We show that our procedure is sound for proofs, as well as sound and complete for counter-examples. The procedure reduces the analysis of higher-order programs to checking satisfiability of a sequence of quantifier-free formulas over theories such as algebraic data types, integer linear arithmetic, and uninterpreted function symbols, thus enabling the use of efficient satisfiability modulo theory (SMT) solvers. Our solution supports arbitrary function types and arbitrarily nested anonymous functions (which can be stored in data structures, passed as arguments, returned, and applied). Among the contributions of this work is supporting even those cases when anonymous functions cannot be statically traced back to their definition, ensuring completeness of the approach for finding counter-examples. We provide a proof of soundness and counter-example completeness for our system as well as initial evaluation in the Leon verifier.

  • Files
  • Details
  • Metrics
Type
report
Author(s)
Voirol, Nicolas  
•
Kneuss, Etienne  
•
Kuncak, Viktor  
Date Issued

2015

Subjects

higher-order functions

•

satisfiability modulo theories

•

software verification

Written at

EPFL

EPFL units
LARA  
Available on Infoscience
April 14, 2015
Use this identifier to reference this record
https://infoscience.epfl.ch/handle/20.500.14299/113308
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