A computation model for executable higher-order algebraic specification languages

Jean Pierre Jouannaud, Mitsuhiro Okada

Research output: Chapter in Book/Report/Conference proceedingConference contribution

80 Citations (Scopus)

Abstract

The combination of (polymorphically) typed lambda-calculi with first-order as well as higher-order rewrite rules is considered. The need of such a combination for exploiting the benefits of algebraically defined data types within functional programming is demonstrated. A general modularity result, which allows as particular cases primitive recursive functionals of higher types, transfinite recursion of higher types, and inheritance for all types, is proved. The class of languages considered is first defined, and it is shown how to reduce the Church-Rosser and termination (also called strong normalization) properties of an algebraic functional language to a so-called principal lemma whose proof depends on the property to be proved and on the language considered. The proof of the principal lemma is then sketched for various languages. The results allows higher order rules defining the higher-order constants by a certain generalization of primitive recursion. A prototype of such primitive recursive definitions is provided by the definition of the map function for lists.

Original languageEnglish
Title of host publicationProceedings - Symposium on Logic in Computer Science
PublisherPubl by IEEE
Pages350-361
Number of pages12
ISBN (Print)081862230X
Publication statusPublished - 1991 Jul 1
Externally publishedYes
EventProceedings of the 6th Annual IEEE Symposium on Logic in Computer Science - Amsterdam, Neth
Duration: 1991 Jul 151991 Jul 18

Publication series

NameProceedings - Symposium on Logic in Computer Science

Other

OtherProceedings of the 6th Annual IEEE Symposium on Logic in Computer Science
CityAmsterdam, Neth
Period91/7/1591/7/18

ASJC Scopus subject areas

  • Software
  • Mathematics(all)

Fingerprint Dive into the research topics of 'A computation model for executable higher-order algebraic specification languages'. Together they form a unique fingerprint.

Cite this