scholarly journals Establishing a refinement relation between binaries and abstract code

Author(s):  
Freek Verbeek ◽  
Joshua Bockenek ◽  
Abhijith Bharadwaj ◽  
Binoy Ravindran ◽  
Ian Roessle
Keyword(s):  
Author(s):  
Françoise Bellegarde ◽  
Célina Charlet ◽  
Olga Kouchnarenko

2007 ◽  
Vol 8 (01) ◽  
pp. 1-31 ◽  
Author(s):  
ROBERT COLVIN ◽  
IAN J. HAYES ◽  
PAUL STROOPER

AbstractThe refinement calculus for logic programs is a framework for deriving logic programs from specifications. It is based on a wide-spectrum language that can express both specifications and code, and a refinement relation that models the notion of correct implementation. In this paper we extend and generalise earlier work oncontextual refinement. Contextual refinement simplifies the refinement process by abstractly capturing the context of a subcomponent of a program, which typically includes information about the values of the free variables. This paper also extends and generalisesmodule refinement. Amoduleis a collection of procedures that operate on a common data type; module refinement between a specification moduleAand an implementation moduleCallows calls to the procedures ofAto be systematically replaced with calls to the corresponding procedures ofC. Based on the conditions for module refinement, we present a method forcalculatingan implementation module from a specification module. Both contextual and module refinement within the refinement calculus have been generalised from earlier work and the results are presented in a unified framework.


2007 ◽  
pp. 299-300
Author(s):  
Gordana Senborn ◽  
Bratislav Lazic ◽  
Slobodan Guberinic

Sign in / Sign up

Export Citation Format

Share Document