Isabelle Isar中的规则归纳

Isabelle Isar中的规则归纳,isabelle,isar,Isabelle,Isar,我想在Isabelle/Isar中做一个规则归纳。我发现 proof (rule_tac P="λn. f n ≥ n ∧ f n ≥ 1" in f.induct) 或 照我的意思做。但我怎样才能用“新风格”Isar来写这句话呢?如您所见,我只是想告诉Isabelle如何在归纳规则中为我的函数f实例化P变量,我想说您已经在使用Isar样式,因为没有apply 您还可以使用语法f.induct[where p=“λn.f n≥ N∧ f n≥ 1“] 此外,通常不需要手动实例化p,因为统一将为

我想在Isabelle/Isar中做一个规则归纳。我发现

proof (rule_tac P="λn. f n ≥ n ∧ f n ≥ 1" in f.induct)


照我的意思做。但我怎样才能用“新风格”Isar来写这句话呢?如您所见,我只是想告诉Isabelle如何在归纳规则中为我的函数
f

实例化

P
变量,我想说您已经在使用Isar样式,因为没有
apply

您还可以使用语法
f.induct[where p=“λn.f n≥ N∧ f n≥ 1“]

此外,通常不需要手动实例化
p
,因为统一将为您提供
p
。也许你必须重新制定你的目标来实现这一点。在Isar风格中,当您开始一个
节目时,在
证明之后也会发生统一,因此这是避免显式给出的另一个选项

proof (rule f.induct[of "λn. f n ≥ n ∧ f n ≥ 1"])