Refinement of higher-order logic programs

  • Authors:
  • Robert Colvin;Ian Hayes;David Hemer;Paul Strooper

  • Affiliations:
  • Software Verification Research Centre, University of Queensland, Brisbane, Australia;School of Information Technology and Electrical Engineering, University of Queensland, Brisbane, Australia;Software Verification Research Centre, University of Queensland, Brisbane, Australia;School of Information Technology and Electrical Engineering, University of Queensland, Brisbane, Australia

  • Venue:
  • LOPSTR'02 Proceedings of the 12th international conference on Logic based program synthesis and transformation
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

A refinement calculus provides a method for transforming specifications to executable code, maintaining the correctness of the code with respect to its specification. In this paper we extend the refinement calculus for logic programs to include higher-order programming capabilities in specifications and programs, such as procedures as terms and lambda abstraction. We use a higher-order type and term system to describe programs, and provide a semantics for the higher-order language and refinement. The calculus is illustrated by refinement examples.