作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在学习 lean tutorial 的第 4 章.
我希望能够证明简单的等式,例如 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
最佳答案
您可以使用 congr_arg
引理
lemma congr_arg {α : Sort u} {β : Sort v} {a₁ a₂ : α} (f : α → β) :
a₁ = a₂ → f a₁ = f a₂
example (a b : nat) (H : a = b) : a + 1 = b + 1 :=
congr_arg (λ n, n + 1) H
λ n, n + 1
,所以证明可以简化为
congr_arg _ H
.
关于dependent-type - 如何在精益中证明 a = b → a + 1 = b + 1?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41946310/
我是一名优秀的程序员,十分优秀!