我想了解为什么不接受此功能作为终止功能:
val while_items: ni: nat -> ni_max: nat -> nw: nat -> bool
let rec while_items ni ni_max nw =
(if ni < ni_max
then while_items (ni + nw) ni_max nw
else true)
FStar 拒绝它并发送以下消息:
(错误)无法证明此递归调用的终止:求解器找到了一个(部分)反例......
这里的绑定问题可能与我在FStar 函数奇怪行为下的相关问题中的绑定问题不同
FStar 可以举出反例吗?