• DocumentCode
    296268
  • Title

    Automating changes of data type in functional programs

  • Author

    Richardson, Julian

  • Author_Institution
    Dept. of Artificial Intelligence, Edinburgh Univ., UK
  • fYear
    1995
  • fDate
    12-15 Nov 1995
  • Firstpage
    166
  • Lastpage
    173
  • Abstract
    I present an automatic technique for transforming a program by changing the data types in that program to ones which are more appropriate for the task. Programs are synthesised by proving modified synthesis theorems in the proofs-as-programs paradigm. The transformation can be verified in the logic of type theory. Transformations are motivated by the presence of subexpressions in the synthesised program. A library of data type changes is maintained, indexed by the motivating subexpressions. These transformations are extended from the motivating expressions to cover as much of the program as possible. I describe the general pattern of the revised synthesis proof, and show how such a proof can be guided by difference matching followed by rippling
  • Keywords
    data structures; functional programming; libraries; program verification; programming theory; software libraries; theorem proving; type theory; automated data type changes; automatic technique; data type change library; difference matching; functional programs; modified synthesis theorem proving; program synthesis; program transformation; proofs-as-programs paradigm; revised synthesis proof; rippling; subexpressions; type theory logic; verification; Artificial intelligence; Computer languages; Data structures; Libraries; Logic programming; Pattern matching; Shape; Writing;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Knowledge-Based Software Engineering Conference, 1995 .Proceedings., 10th
  • Conference_Location
    Boston, MA
  • ISSN
    1068-3062
  • Print_ISBN
    0-8186-7204-8
  • Type

    conf

  • DOI
    10.1109/KBSE.1995.490132
  • Filename
    490132