在像 Haskell 这样的纯函数语言中,是否有一种算法可以在双射时获得函数的逆函数(编辑)?有没有一种特定的方法来对您的函数进行编程?
最佳答案
在某些情况下,是的!有一篇漂亮的论文叫做 Bidirectionalization for Free!其中讨论了几种情况——当你的函数足够多态时——可以完全自动地导出反函数。 (它还讨论了当函数不是多态时,是什么让问题变得困难。)
如果你的函数是可逆的,你得到的是逆函数(带有虚假输入);在其他情况下,您会得到一个尝试“合并”旧输入值和新输出值的函数。
关于functional-programming - 在纯函数式语言中,有没有算法可以得到反函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13404208/