Efficient Symbolic Execution of Value-Based Data Structures for Critical Systems

  • Jason Belt
  • Robby
  • Patrice Chalin
  • John Hatcliff
  • Xianghua Deng
Conference paper

DOI: 10.1007/978-3-642-28891-3_29

Volume 7226 of the book series Lecture Notes in Computer Science (LNCS)
Cite this paper as:
Belt J., Robby, Chalin P., Hatcliff J., Deng X. (2012) Efficient Symbolic Execution of Value-Based Data Structures for Critical Systems. In: Goodloe A.E., Person S. (eds) NASA Formal Methods. NFM 2012. Lecture Notes in Computer Science, vol 7226. Springer, Berlin, Heidelberg

Abstract

Symbolic execution shows promise for increasing the automation of verification tasks in certified safety/security-critical systems, where use of statically allocated value-based data structures is mandated. In fact Spark/Ada, a subset of Ada designed for verification and used for building critical systems, only permits data structures that are statically allocated. This paper describes a novel and efficient graph-based representation for programs making use of value-based data structures and procedure contracts. We show that our graph-based representation offers performance superior to a logic-based representation that is used in many approaches that delegate array reasoning to a decision procedure.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Jason Belt
    • 1
  • Robby
    • 1
  • Patrice Chalin
    • 1
  • John Hatcliff
    • 1
  • Xianghua Deng
    • 2
  1. 1.Kansas State UniversityUnited States
  2. 2.Google Inc.United States