在coqtop
互动终端中,如何删除我定义的名称?
例如,我可以使用以下内容定义bool类型。
Coq < Inductive my_bool : Type :=
Coq < | my_true : my_bool
Coq < | my_false : my_bool.
这有效,我得到以下输出。
my_bool is defined
my_bool_rect is defined
my_bool_ind is defined
my_bool_rec is defined
但是,如果我想重新定义my_bool
字词,我会Error: my_bool already exists.
> Inductive my_bool : Type :=
> | my_true : my_bool
> | my_false : my_bool
> | neither : my_bool.
Error: my_bool already exists.
我可以在不退出my_bool
会话的情况下删除并重新定义coqtop
字词吗?
答案 0 :(得分:2)
您可以使用Reset my_bool.
将其从环境中删除。
参考:https://coq.inria.fr/refman/proof-engine/vernacular-commands.html#coq:cmd.reset:
Reset
ident 删除自引入 ident 以来环境中的所有对象,包括 ident 。 ident 可以是已定义或声明的对象的名称,也可以是节的名称。不能重设模块或模块内部对象的名称。