Specifying and verifying advanced control features

Gary T. Leavens, David Naumann, Hridesh Rajan, Tomoyuki Aotani

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

2 Scopus citations

Abstract

Advances in programming often revolve around key design patterns, which programming languages embody as new control features. These control features, such as higher-order functions, advice, and context dependence, use indirection to decrease coupling and enhance modularity. However, this indirection makes them difficult to verify, because it hides actions (and their effects) behind an abstraction barrier. Such abstraction barriers can be overcome in a modular way using greybox specification techniques, provided the programming language supports interfaces as a place to record specifications. These techniques have previously allowed specification and modular verification of higher-order functional and object-oriented programs, as well as aspect-oriented and context-oriented programs.

Original languageEnglish
Title of host publicationLeveraging Applications of Formal Methods, Verification and Validation
Subtitle of host publicationDiscussion, Dissemination, Applications - 7th International Symposium, ISoLA 2016, Proceedings
EditorsBernhard Steffen, Tiziana Margaria
Pages80-96
Number of pages17
DOIs
StatePublished - 2016

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume9953 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Keywords

  • Greybox specification
  • JML language
  • Modular verification

Fingerprint

Dive into the research topics of 'Specifying and verifying advanced control features'. Together they form a unique fingerprint.

Cite this