在Isabelle证明中将2个子目标与公共未知变量合并

在Isabelle证明中将2个子目标与公共未知变量合并,isabelle,Isabelle,我现在正试图证明Isabelle中的一个引理,剩下两个子目标,它们都有相同的未知变量?Q11。 是否可以通过“及物性”将两个子目标合并为一个? 也就是说,将第二个子目标中的?Q11替换为第一个子目标中包含?Q11的集合 goal (2 subgoals): 1. ⋀s. ?Q11 s ⊆ {s. s⦇msg_sender := address_this s, address_this := add2 s⦈ ∈ {s. s⦇g := 2⦈ ∈ {t. g t = 2}}} 2. {s. g s

我现在正试图证明Isabelle中的一个引理,剩下两个子目标,它们都有相同的未知变量?Q11。 是否可以通过“及物性”将两个子目标合并为一个? 也就是说,将第二个子目标中的?Q11替换为第一个子目标中包含?Q11的集合

goal (2 subgoals):
 1. ⋀s. ?Q11 s ⊆ {s. s⦇msg_sender := address_this s, address_this := add2 s⦈ ∈ {s. s⦇g := 2⦈ ∈ {t. g t = 2}}}
 2. {s. g s = 0} ⊆ {s. s⦇msg_sender := address_this s, address_this := add1 s⦈ ∈ {sa. sa⦇g := 1⦈ ∈ ?Q11 s}}
我想要达到的目标是

 1. {s. g s = 0} ⊆ {s. s⦇msg_sender := address_this s, address_this := add1 s⦈ ∈ {sa. sa⦇g := 1⦈ ∈ {s. s⦇msg_sender := address_this s, address_this := add2 s⦈ ∈ {s. s⦇g := 2⦈ ∈ {t. g t = 2}}}}}
simp直接证明了这一点

谢谢。

你可以

apply (rule order.refl)
它使用子集关系的自反性来解决第一个目标。这将相应地稳定?Q11

当然,这并不是真正的“合并子目标”,但它达到了预期的效果。

您可以

apply (rule order.refl)
它使用子集关系的自反性来解决第一个目标。这将相应地稳定?Q11


当然,这并不是真正的“合并子目标”,但它达到了预期的效果。

非常感谢!是的,它正是我想要的,不应该用“合并”这个词。非常感谢!是的,它正是我想要的,不应该用“合并”这个词。