【发布时间】:2019-11-30 20:41:24
【问题描述】:
我正在学习 coq,并试图证明 peano 算术中的等式。
我陷入了一个简单的分数定律。
我们从小学就知道 (n + m) / 2 = n / 2 + m / 2。 在 peano 算术中,这仅在 n 和 m 为偶数时才成立(因为除法会产生正确的结果)。
Compute (3 / 2) + (5 / 2). (*3*)
Compute (3 + 5) / 2. (*4*)
所以我们定义:
Theorem fraction_addition: forall n m: nat ,
even n -> even m -> Nat.div2 n + Nat.div2 m = Nat.div2 (n + m).
据我了解,这是一个正确且可证明的定理。 我尝试了一个归纳证明,例如
intros n m en em.
induction n.
- reflexivity.
- ???
这让我陷入了这样的境地
en = even (S n)
和IHn : even n -> Nat.div2 n + Nat.div2 m = Nat.div2 (n + m),所以我找不到应用归纳假设的方法。
经过对标准库和文档的长期研究,我没有找到答案。
【问题讨论】:
标签: coq theorem-proving peano-numbers