我正在通过lean tutorial的第4章。如何在精益中证明a = b→a + 1 = b + 1?
我希望能够证明简单的平等性,如a = b → a + 1 = b + 1
而不需要必须使用calc环境。换句话说,我想明确地构建的证明期限:
example (a b : nat) (H1 : a = b) : a + 1 = b + 1 := sorry
我最好的猜测是,我需要使用eq.subst
和有关标准库中的自然数平等一些相关的引理,但我不知所措。最近瘦的例子,我能找到的是这样的:
example (A : Type) (a b : A) (P : A → Prop) (H1 : a = b) (H2 : P a) : P b := eq.subst H1 H2
请注意链接的教程是* Lean 2 *。您可以在http://leanprover.github.io/documentation/上找到当前精益版本的文档。 –
谢谢@Kha,我可以看到,精益3包含一个更新的改进版本的教程: https://leanprover.github.io/theorem_proving_in_lean/ (至少没有未实现的TODO),我会切换并使用它因此。 –
顺便说一句,这个教程的新版本是超酷的,它显示了鼠标悬停的术语类型! –