• Title of article

    Steps towards mechanizing program transformations using PVS

  • Author/Authors

    Natarajan Shankar، نويسنده ,

  • Issue Information
    دوماهنامه با شماره پیاپی سال 1996
  • Pages
    25
  • From page
    33
  • To page
    57
  • Abstract
    PVS is a highly automated framework for specification and verification. We show how the language and deduction features of PVS can be used to formalize, mechanize, and apply some useful program transformation techniques. We examine two such examples in detail. The first is a fusion theorem due to Bird where the composition of a catamorphism (a recursive operation on the structure of a datatype) and an anamorphism (an operation that constructs instances of the datatype) are fused to eliminate the intermediate data structure. The second example is Wandʹs continuation-based transformation technique for deriving tail-recursive functions from non-tailrecursive ones. These examples illustrate the utility of the language and inference features of PVS in capturing these transformations in a simple, general, and useful form.
  • Journal title
    Science of Computer Programming
  • Serial Year
    1996
  • Journal title
    Science of Computer Programming
  • Record number

    1079434