Formal Aspects of Computing

, Volume 4, Issue 5, pp 413–424


  • Lambert Meertens

DOI: 10.1007/BF01211391

Cite this article as:
Meertens, L. Formal Aspects of Computing (1992) 4: 413. doi:10.1007/BF01211391


“Catamorphisms” are functions on an initial data type (an inductively defined domain) whose inductive definitional pattern mimics that of the type. These functions have powerful calculation properties by which inductive reasoning can be replaced by equational reasoning. This paper introduces a generalisation of catamorphisms, dubbed “paramorphisms”. Paramorphisms correspond to a larger class of inductive definition patterns; in fact, we show that any function defined on an initial type can be expressed as a paramorphism. In spite of this generality, it turns out that paramorphisms have calculation properties very similar to those of catamorphisms. In particular, we prove a Unique Extension Property and a Promotion Theorem for paramorphisms.


Formal program construction Initial data type 

Copyright information

© BCS 1992

Authors and Affiliations

  • Lambert Meertens
    • 1
    • 2
  1. 1.Department of Algorithmics and ArchitectureCWIAmsterdam
  2. 2.Department of Computing ScienceUtrecht UniversityThe Netherlands
  3. 3.CWISJ AmsterdamThe Netherlands

Personalised recommendations