### 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 language | English |
---|---|

Title of host publication | Proceedings - Symposium on Logic in Computer Science |

Publisher | Publ by IEEE |

Pages | 350-361 |

Number of pages | 12 |

ISBN (Print) | 081862230X |

Publication status | Published - 1991 Jul 1 |

Externally published | Yes |

Event | Proceedings of the 6th Annual IEEE Symposium on Logic in Computer Science - Amsterdam, Neth Duration: 1991 Jul 15 → 1991 Jul 18 |

### Publication series

Name | Proceedings - Symposium on Logic in Computer Science |
---|

### Other

Other | Proceedings of the 6th Annual IEEE Symposium on Logic in Computer Science |
---|---|

City | Amsterdam, Neth |

Period | 91/7/15 → 91/7/18 |

### Fingerprint

### ASJC Scopus subject areas

- Software
- Mathematics(all)

### Cite this

*Proceedings - Symposium on Logic in Computer Science*(pp. 350-361). (Proceedings - Symposium on Logic in Computer Science). Publ by IEEE.