初学者,无法导入精益
Beginner, cannot import in Lean
我是一个绝对的初学者,不是程序员,正在尝试通过 Logic and Proof 学习形式验证。
我无法在 Lean 中导入任何内容。
我将二进制文件的 tar 文件提取到 /tmp
然后执行
/tmp/lean-3.4.1-linux/bin/./lean /tmp/test.lean
除非我正在导入任何东西,否则它可以正常工作。所以如果我的文件 test.lean
只是说
open classical
example (P : Prop) : P ∨ ¬ P := em P
没有错误。
但是如果同一个文件改为
import data.set
我收到错误消息
/tmp/test.lean:1:0: error: file 'data/set' not found in the LEAN_PATH
/tmp/test.lean:1:0: error: invalid import: data.set
could not resolve import: data.set
import data.nat
.
也会出现类似的错误
我做错了什么,我该怎么办?
我正在使用 Ubuntu 16.04。
请注意,由于我是初学者,所以我从未从源代码编译过任何东西。
这些包隐藏在init
。
import init.classical
import init.data.nat
import init.data.set
但我相信 Lean 默认导入 init
中的所有内容,因此您实际上不需要上面的行。
您也可以跳过 open
并限定调用。
example (P : Prop) : P ∨ ¬ P := classical.em P
我直接联系 Avigad 教授得到了解决方案。
原来这本书不仅使用了标准库,还使用了精益数学组件库,mathlib。
安装它对我有用。我现在可以 import data.set
而不会出错。
我是一个绝对的初学者,不是程序员,正在尝试通过 Logic and Proof 学习形式验证。 我无法在 Lean 中导入任何内容。
我将二进制文件的 tar 文件提取到 /tmp
然后执行
/tmp/lean-3.4.1-linux/bin/./lean /tmp/test.lean
除非我正在导入任何东西,否则它可以正常工作。所以如果我的文件 test.lean
只是说
open classical
example (P : Prop) : P ∨ ¬ P := em P
没有错误。 但是如果同一个文件改为
import data.set
我收到错误消息
/tmp/test.lean:1:0: error: file 'data/set' not found in the LEAN_PATH
/tmp/test.lean:1:0: error: invalid import: data.set
could not resolve import: data.set
import data.nat
.
我做错了什么,我该怎么办? 我正在使用 Ubuntu 16.04。 请注意,由于我是初学者,所以我从未从源代码编译过任何东西。
这些包隐藏在init
。
import init.classical
import init.data.nat
import init.data.set
但我相信 Lean 默认导入 init
中的所有内容,因此您实际上不需要上面的行。
您也可以跳过 open
并限定调用。
example (P : Prop) : P ∨ ¬ P := classical.em P
我直接联系 Avigad 教授得到了解决方案。
原来这本书不仅使用了标准库,还使用了精益数学组件库,mathlib。
安装它对我有用。我现在可以 import data.set
而不会出错。