In formal methods of computer science, an apomorphism (from ἀπόGreek for "apart") is the categorical dual of a paramorphism and an extension of the concept of anamorphism (coinduction). Whereas a paramorphism models primitive recursion over an inductive data type, an apomorphism models primitive corecursion over a coinductive data type.

Origins edit

The term "apomorphism" was introduced in Functional Programming with Apomorphisms (Corecursion).[1]

See also edit

References edit

  1. ^ Vene, Varmo; Uustalu, Tarmo (1998), "Functional Programming with Apomorphisms (Corecursion)", Proceedings of the Estonian Academy of Sciences: Physics, Mathematics, 47 (3): 147–161