ocaml - 从 Coq 提取到 Ocaml 生成后使用函数

标签 ocaml coq coq-extraction

我有一个文件夹 tmp这是在我从 coq 提取到 ocaml 之后生成的。

~/tmp/cpf0.ml cpf0.mli cpf0.o cpf0.cmi cpf0.cmx cpf0.cmo
main.ml是我用来调用 cpf0 中的一个函数的文件:
let prf = Cpf0.proof;;

我收到一条错误消息 Cpf0.proof是未绑定(bind)的。
我尝试使用:( proof 存在于 Cpf0 中)。
open Cpf0;;
let prf = proof;;

我得到了同样的错误。

Ocaml 链接:ocamlc -I tmp -c main.ml
我不明白为什么它不接受Cpf0 ?

但是open Cpf0;;单独,链接不会给我任何错误。我用 tmp 中的另一个文件进行了测试,它能够使用该文件的所有功能。

最佳答案

当出现此类问题时,即您有一个模块 X已定义,但 X.x没有定义,你应该启动顶层并尝试module S = X查看 X 中的确切内容.

关于ocaml - 从 Coq 提取到 Ocaml 生成后使用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9848973/

相关文章:

installation - OCaml:安装后无法运行utop

coq - 学习coq,不知道错误是什么意思NNPP

haskell - 从 COQ : Logical or arity value used 生成 Haskell 代码

ocaml - Ocaml 库中的 string_dec 和字符串

coq - Coq 命令 Require Import Ltac 有什么作用?

types - Ocaml : Passing constructor type between modules

使用第三方库编译

error-handling - 如何处理这个错误?

coq - 在 Coq 中提供示例,其中 (A B : Prop), P : Prop -> Type, 使得 A <-> B,但不能用 P B 替换 P A

coq - 在包含局部变量的调用上与 Ltac 匹配