Maintaining verified software

  • Authors:
  • Joe Leslie-Hurd

  • Affiliations:
  • Intel Corp., Portland, OR, USA

  • Venue:
  • Proceedings of the 2013 ACM SIGPLAN symposium on Haskell
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

Maintaining software in the face of evolving dependencies is a challenging problem, and in addition to good release practices there is a need for automatic dependency analysis tools to avoid errors creeping in. Verified software reveals more semantic information in the form of mechanized proofs of functional specifications, and this can be used for dependency analysis. In this paper we present a scheme for automatic dependency analysis of verified software, which for each program checks that the collection of installed libraries is sufficient to guarantee its functional correctness. We illustrate the scheme with a case study of Haskell packages verified in higher order logic. The dependency analysis reduces the burden of maintaining verified Haskell packages by automatically computing version ranges for the packages they depend on, such that any combination provides the functionality required for correct operation.