实例化参数以评估函数定义

时间:2018-03-14 17:16:41

标签: coq

我正在处理单个.v文件,我发现使用这样的参数和定义定义内容非常方便:

Parameter n : nat.
Definition n_plus_1 := n + 1.

而不是Definition n_plus_1 (n : nat) = n + 1.

我的用例比这更复杂,但想法是一样的。虽然用参数定义东西有助于我写一些我感兴趣的证据,但有时我只想用实际值来测试定义,以确保它们实际计算出我想要的东西。例如,通过我刚写的例子,我不能Compute n_plus_1 3。在某种意义上,我想实例化参数n。什么是最好的方法呢?

1 个答案:

答案 0 :(得分:3)

最快捷的方法是使用Section机制[模块也可以工作]:

Section With_N.
Variable n : nat.
Definition n_plus_1 := n + 1.
End With_N.

Compute (n_plus_1 3).