An algebraic specification of a transformation tool for prolog programs

  • Authors:
  • Jacob Brunekreef

  • Affiliations:
  • Programming Research Group, University of Amsterdam, Amsterdam, The Netherlands

  • Venue:
  • Algebraic'97 Proceedings of the 2nd international conference on Theory and Practice of Algebraic Specifications
  • Year:
  • 1997

Quantified Score

Hi-index 0.00

Visualization

Abstract

The paper reports about a case study in algebraic specification. It describes TransLog, a transformation tool for pure Prolog programs. TransLog supports the interactive transformation of (a part of) a program. Six transformation steps are supported: unfolding, folding, goal definition, argument permutation (an instance of goal replacement), goal switching and definition elimination. As much as possible, pure Prolog semantics are preserved. The tool is equipped with navigation options, which allow the user to switch from the current program to another program in a transformation sequence. TransLog has been implemented with the ASF+SDF Meta-environment. The paper focuses on the algebraic specification of the tool, not on the underlying theory of (logic) program transformation. The specification is presented at a global level, only the specification of the unfold and fold step is discussed more in depth.