Hacker News new | past | comments | ask | show | jobs | submit login

Unfortunately in mathematics "application" is often a synonym for "prove a lemma or theorem."

David Spivak told me Peter Freyd once said, “Perhaps the purpose of categorical algebra is to show that which is trivial is trivially trivial.”

This will only work for those who already find category theory trivial (a hard thing, as it is so general) and the target domain novel (so they are not yet confident what is trivial and non-trivial in that domain). If done wrong it can look like the art of making the easy hard.

One good use of category theory is: admitting there are composition patterns other than function composition. For example: in scikit learn the fit_transform interface has composition. When you wire up compatible classes in a pipeline they lash together the fit, transform, and fit_tranform methods in a simultaneously useful and consistent manner. With category theory you can say this is a nice form of composition, even though it is not mere composition of functions.

Another idea that can be made clearer is: separating a function's identity from its action. This lets us claim code optimizations are correct. That is f1 := x -> 2.0 x can be thought of as doubling every real number. Now for real numbers (unfortunately not for mere floating point numbers!) we have an inverse f2 := x -> x/2.0. Under a very narrow view of composition we might force f1(f2(x)) to be realized by code such as 2.0(x/2.0). If we think of composition as different than action, we might say f1(f2(x)) is just x (though again, this is true over the real numbers- not over the floating point numbers).




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: