【发布时间】:2015-12-29 14:30:58
【问题描述】:
我试图在乘法运算中证明自然数的交换性。
--proving comm over *
*comm : ∀ a b → (a * b) ≡ (b * a)
*comm zero b = sym (rightId* b)
*comm (suc a) b = {!!}
当我检查目标时,我发现它是b + a * b ≡ b * suc a。所以我证明了这一点。
lemma*-swap : ∀ a b → a + a * b ≡ a * suc b
现在当我尝试时:
*comm : ∀ a b → (a * b) ≡ (b * a)
*comm zero b = sym (rightId* b)
*comm (suc a) b = lemma*-swap b a
这应该可以满足目标,但为什么这不起作用?请建议我哪里错了。
【问题讨论】:
标签: agda