Executing Formal Specifications with Concurrent Constraint Programming

  • Authors:
  • Tim Wahls;Gary T. Leavens;Albert L. Baker

  • Affiliations:
  • Department of Mathematical and Computer Sciences, Penn State Harrisburg, 777 W. Harrisburg Pike, Middletown, PA 17057 USA. wahls@psu.edu;Department of Computer Science, 229 Atanasoff Hall, Iowa State University, Ames, Iowa 50011-1040 USA. leavens@cs.iastate.edu;Department of Computer Science, 228 Atanasoff Hall, Iowa State University, Ames, Iowa 50011-1040 USA. baker@cs.iastate.edu

  • Venue:
  • Automated Software Engineering
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

We have implemented a technique for execution of formal, model-based specifications. The specifications we can execute are written at a level of abstraction that is close to that used in nonexecutable specifications. The specification abstractions supported by our execution technique include using quantified assertions to directly construct post-state values, and indirect definitions of post-state values (definitions that do not use equality). Our approach is based on translating specifications to the concurrent constraint programming language AKL. While there are, of course, expressible assertions that are not executable, our technique is amenable to any formal specification language based on a finite number of intrinsic types and pre- and postcondition assertions.