1 package JSci.maths.categories;2 3 /**4 * This interface defines a natural transformation.5 * @version 1.06 * @author Mark Hale7 */8 public interface NaturalTransformation {9 /**10 * Maps one functor to another.11 */12 Functor map(Functor f);13 /**14 * Returns the vertical composition of this transformation with another.15 */16 NaturalTransformation composeVert(NaturalTransformation n);17 /**18 * Returns the horizontal composition of this transformation with another.19 */20 NaturalTransformation composeHorz(NaturalTransformation n);21 }22 23