提出假设的策略,然后立即对其进行另一种策略

时间:2020-06-14 14:41:05

标签: coq ssreflect

当我的证明状态为以下形式时 H -> goal 我经常使用模式 intros H. *some tactic* H. 其中某些策略可能是“倒置”或“应用_ in”,等等。如果有一些策略将这两个步骤结合起来,那就太好了,例如,一些可以引入最高假设的策略,然后对它采取指定的策略。我在ssreflect文档中四处寻找关于move的信息,因为move可以做类似的有用的事情,但是什么也没发现。有这样的战术吗?

谢谢。

1 个答案:

答案 0 :(得分:2)

如前所述,ssreflect可以移动变量,例如,使用ssreflect,即使变量位于堆栈的顶部,您甚至不需要引入变量。

Lemma blah : H -> Goal                  Lemma blah : H -> Goal 
intro H. induction H.           ~       elim.

Lemma blahh : P -> H -> Goal            Lemma blah : P -> H -> Goal 
intros P H. induction H.         ~      move=> P; elim. or shorten intros;elim : H.
intro P H. apply P in H.         ~      apply : P.

我建议An ssreflect tutorial非常适合初学者。