Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Coq 实例化参数以评估函数定义_Coq - Fatal编程技术网

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

Coq 实例化参数以评估函数定义,coq,Coq,我正在处理一个.v文件,我发现用如下参数和定义来定义东西很方便: Parameter n : nat. Definition n_plus_1 := n + 1. 而不是定义n加1(n:nat)=n+1。 我的用例比这更复杂,但想法是一样的。虽然用参数定义东西帮助我写了一些我感兴趣的证明,但有时我只想用实际值测试定义,以确保它们实际计算出我想要的结果。例如,对于我刚刚编写的示例,我无法计算n\u加上3。在某种意义上,我想实例化参数n。最好的方法是什么?最快的方法是使用部分机制[模块也可以工作]

我正在处理一个
.v
文件,我发现用如下参数和定义来定义东西很方便:

Parameter n : nat.
Definition n_plus_1 := n + 1.
而不是定义n加1(n:nat)=n+1。


我的用例比这更复杂,但想法是一样的。虽然用参数定义东西帮助我写了一些我感兴趣的证明,但有时我只想用实际值测试定义,以确保它们实际计算出我想要的结果。例如,对于我刚刚编写的示例,我无法
计算n\u加上3
。在某种意义上,我想实例化参数
n
。最好的方法是什么?

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

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

Compute (n_plus_1 3).

我不知道模块。我试着用模块来做,但在这里卡住了:
模块类型Sig。参数n:nat。定义n加1:=n+1。结束信号。模块持续时间