Wikipedia / Apomorphism
Wikipedia / Apomorphism
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
The term "apomorphism" was introduced in Functional Programming with Apomorphisms (Corecursion).
See also
Morphisms of F-algebras
From an initial algebra to an algebra: Catamorphism
From a coalgebra to a final coalgebra: Anamorphism
An anamorphism followed by an catamorphism: Hylomorphism
Extension of the idea of catamorphisms: Paramorphism