Abstract
It is a straightforward exercise to write a program to.add. two bijectionsDresulting in a bijection between two sum types, which runs the first bijection on elements from the left summand and the second bijection on the right. It is much less obvious how to.subtract. one bijection from another. This problem has been studied in the context of combinatorics, with several computational principles known for producing the.difference. of two bijections. We consider the problem from a computational and algebraic perspective, showing how to construct such bijections at a high level, avoiding pointwise reasoning or being forced to construct the forward and backward directions separatelyDwithout sacrificing performance.
Author supplied keywords
Cite
CITATION STYLE
Yorgey, B. A., & Foner, K. (2018). What’s the Difference? a functional pearl on subtracting bijections. Proceedings of the ACM on Programming Languages, 2(ICFP). https://doi.org/10.1145/3236796
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.