gpt4 book ai didi

Coq 正向推理 : apply with multiple hypotheses

转载 作者:行者123 更新时间:2023-12-05 05:13:51 24 4
gpt4 key购买 nike

我有两个假设,我想使用前向推理来应用一个同时使用这两个假设的定理。

我具体我有假设

H0 : a + b = c + d
H1 : e + f = g + h

我想应用标准库中的定理:

f_equal2_mult
: forall x1 y1 x2 y2 : nat, x1 = y1 -> x2 = y2 -> x1 * x2 = y1 * y2

现在我知道我可以手动给出 x1、y1、x2、y2 的值​​,但我希望 Coq 在与 H0 统一时自动确定这些值和 H1 .我发现我可以让它像这样工作:

eapply f_equal2_mult in H0; try exact H1.

但这感觉就像是一个 hack,对称性被破坏并且 try .我真的很想说 apply f_equals2_mult in H0, H1或类似清楚的东西。有这样的方法吗?

最佳答案

您可以使用pose proof 在上下文中引入引理,并且specialize将其应用于其他假设。

Lemma f (a b c d : nat) : a = b -> c = d -> False.
intros H1 H2.
pose proof f_equal2_mult as pp.
specialize pp with (1 := H1).
specialize pp with (1 := H2).

(* or *)
specialize pp with (1 := H1) (2 := H2).

关于Coq 正向推理 : apply with multiple hypotheses,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53138868/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com