我想知道 Coq 中是否存在一种类似倒置的策略,它适用于目标而不是其中一个假设?也就是说,如果有某种策略可以在目标上反转相同的构造函数。
举个愚蠢的例子,
Goal forall x :nat, 2 + x + 3 = x + 5.
intros. simpl.
, 这使
S ( S (x + 3) ) = S ( S ( S ( ... x)...)
我想反转前两个 S,所以剩下要证明的是
x + 3 = 3 + x
我的问题是
构造函数的这种“反转”是否合理?
如果逻辑是合理的,那么 Coq 中是否有这样做的策略?