辅酶 + Emacs? ``Check``看不到源文件中定义了什么

Coq + Emacs? ``Check`` can't see what is defined in the source file

所以我正在玩 Coq,使用 Emacs 作为 IDE。 proof-generalcompany-coq 均已正确安装和加载。

然后我打开虚拟 whatever_name.v 文件并使用 Fixpoint 关键字定义递归函数。

然后我 运行 coq-Check 就可以得到:

> Check addnm .

Error: The reference addnm was not found in the current environment.

但是,例如,Inductive unit : Set := tt. 效果非常好。

我做错了什么?

我的印象是您没有要求 Coq 阅读 addnm 定义。尝试在 Coq 缓冲区上按 C-c C-n。这应该指示 Proof General 将下一个命令发送给 Coq 进行处理。随着命令的发送,您应该会看到缓冲区逐渐变成不同的颜色。突出显示 addnm 的定义后,您应该可以检查它 (C-c C-a C-c)。

unit 仍然有效的原因是当您在 Emacs 中启动 Coq 时它的定义会自动加载。)