【问题标题】:How can I combine rule induction with variable generalization in Isabelle?如何在 Isabelle 中将规则归纳与变量泛化结合起来?
【发布时间】:2018-05-06 13:05:22
【问题描述】:

在 Isabelle 中,我可以使用 arbitrary 关键字概括归纳证明中的变量。这绝对适用于普通归纳,例如apply (induction n arbitrary: m)。我也可以进行规则归纳,例如apply (induction rule: R.induct)。但是在使用规则归纳的时候如何泛化变量呢?

在我的特定用例中,我需要证明R x ⟹ S y ⟹ ⟨…⟩ 形式的定理。谓词R 是归纳定义的,我想对其使用规则归纳。变量y 在证明中不能固定,但必须是任意的。作为一种解决方法,我已经证明了定理 R x ⟹ (∀ y . S y ⟶ ⟨…⟩),但如果不使用大锤我无法证明它,而且我还猜想这里使用 是不规范的。

【问题讨论】:

    标签: isabelle induction


    【解决方案1】:

    您可以毫无问题地组合arbitraryrule。但是,arbitrary 必须出现在 rule 之前。

    【讨论】:

    • 我同时发现了这一点。之前,我曾尝试将arbitrary 放在rule 之后。顺序很重要,这很令人困惑。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-23
    相关资源
    最近更新 更多