Coq:重写保留输入假设

Coq: rewrite preserving input hypothesis

我想重写一个假设,同时保留旧版本,并将重写的结果以新名称保存。我应该怎么做?

这是我能想到的最短的:

Lemma test T (P : T -> Prop) (x y : T) (heq : x = y) (hp : P x) : False.
Proof.
pose proof hp; rewrite heq in hp.

然而,YMMV,通常在使用 ssreflect 时,我会以一种不必经常诉诸这些技巧的方式来管理我的假设。