在我的项目中,我试图维护小的提示词以加快校样。但是,当我为这种架构编写Ltac支持时,我找不到引用各种提示词的方法。基本上,我想做以下事情:
Tactic Notation "myauto" ???(db) := auto with db.
比这更复杂。但是,Coq解析器似乎急切地将db
解析为提示库的具体名称,因此将抛出这样的错误消息:
Error: No such Hint database: db.
任何方式我都可以参数化auto
系列的提示库选项?
答案 0 :(得分:2)
编辑:
您正在尝试做的事情目前不适用于Ltac。
https://github.com/coq/coq/issues/2417
您可以通过
解决您的问题或
旧(破)回答:
在Coq 8.7.2中,您要查找的是startFabric.sh
参数类型。
根据定义,Hint数据库由ident
引用:
ident
(有关定义,请参阅https://coq.inria.fr/distrib/current/refman/tactics.html#Hints-databases)
把
Create HintDb ident [discriminated]
对我来说很好。
https://coq.inria.fr/distrib/current/refman/syntax-extensions.html#hevea_command236包含允许的修饰符列表。