如果标题具有误导性,我很抱歉,但我什至不确定我的问题是什么。我有以下练习:
如果 fx==x(即 f 将 x 映射到自身),我们称 xa 为函数 f 的固定点。编写一个函数 fixpoint,它接受函数 f :: Integer -> Integer 并返回最小的非负整数 x,它是 f 的固定点。
到目前为止,我能想到的是:
fixpoint :: (a -> a) -> a
fixpoint f = min [f x | x<-[0..n], f x == x ]
Run Code Online (Sandbox Code Playgroud)
但它显然有缺陷,因为 n 无处不在。
我也尝试过其他事情,但它们是明显的错误。
这个练习的可能解决方案是什么?我是 Haskell 的新手,我什至不知道如何思考这个问题。