Coq 在范围内展开符号
提供了一个简单实用的技巧:Coq 在范围内展开符号,coq,Coq,提供了一个简单实用的技巧:展开“>=”与展开ge相同,但不要求您知道=是ge的符号 您可以对范围内的符号执行相同的操作吗 Require Import NArith. Goal forall x, (x >= x)%N. unfold ">=". 这里的展开“>=”没有任何作用,因为它试图展开ge,而不是N.ge 我找到了以下解决方案: Open Scope N. unfold ">=". 但是是否有语法允许在不首先打开范围的情况下展开此符号?是的,您可以使用模板展开字符串
展开“>=”
与展开ge
相同,但不要求您知道=
是ge
的符号
您可以对范围内的符号执行相同的操作吗
Require Import NArith.
Goal forall x, (x >= x)%N.
unfold ">=".
这里的展开“>=”
没有任何作用,因为它试图展开ge
,而不是N.ge
我找到了以下解决方案:
Open Scope N.
unfold ">=".
但是是否有语法允许在不首先打开范围的情况下展开此符号?是的,您可以使用模板
展开字符串%scope
,如下所示:
Require Import NArith.
Goal forall x, (x >= x)%N.
unfold ">=" % N.
这为我们提供了所有x:N,(x?=x)%N Lt的目标,其中展开的=
(术语)%scope
是本地打开解释范围的标准语法。碰巧Coq在这种情况下也接受了它。它实际上不是范围
,而是键
,我在这里太草率了。