是否可以删除/覆盖Coq中的现有强制?
我已经导入了一个定义强制的Coq模块,但它不符合我的需要。有没有办法删除或(本地)覆盖它 具体来说,假设我导入的模块定义了强制是否可以删除/覆盖Coq中的现有强制?,coq,coercion,Coq,Coercion,我已经导入了一个定义强制的Coq模块,但它不符合我的需要。有没有办法删除或(本地)覆盖它 具体来说,假设我导入的模块定义了强制 强制bool\u to_nat(b:bool):=将b与true=>1匹配;false=>0结束。 但我想在代码中使用相反的方法 本地强制bool\u to_nat'(b:bool):=将b与true匹配=>0;false=>1结束。 Coq给出了一个警告不明确的路径:[bool_to_nat']:bool>->nat并忽略了我的定义(可以通过Goal false+1=
强制bool\u to_nat(b:bool):=将b与true=>1匹配;false=>0结束。
但我想在代码中使用相反的方法
本地强制bool\u to_nat'(b:bool):=将b与true匹配=>0;false=>1结束。
Coq给出了一个警告不明确的路径:[bool_to_nat']:bool>->nat
并忽略了我的定义(可以通过Goal false+1=true.reflectivity.Qed检查。
是否有可能说服Coq尊重我的选择,至少在这个文件中是本地的
声明强制后能够显式地操作强制,比如如何操作提示数据库,这将是一个加号。有这样的命令吗?我认为目前不可能。也许你可以打开一个关于这个的窗口?@AntonTrunov I在这里打开了一个问题: