首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何证明(forall x,P x /\ Q x) -> (forall x,P x)

如何证明(forall x,P x /\ Q x) -> (forall x,P x)
EN

Stack Overflow用户
提问于 2009-05-07 14:59:32
回答 5查看 3.2K关注 0票数 7

如何证明( /\ x,P,Q) -> (forall x,P)在Coq中?我尝试了几个小时,但不知道如何将前置条件分解为Coq可以消化的东西。(很明显,我是个新手:)

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-06-04 04:14:40

只需应用H就可以更快地完成此操作,但此脚本应该更清晰。

代码语言:javascript
复制
Lemma foo : forall (A:Type) (P Q: A-> Prop), (forall x, P x /\ Q x) -> (forall x, P x).
intros.
destruct (H x). 
exact H0.
Qed.
票数 6
EN

Stack Overflow用户

发布于 2009-05-07 19:49:38

试一试

代码语言:javascript
复制
elim (H x).
票数 2
EN

Stack Overflow用户

发布于 2009-05-09 17:11:09

实际上,当我发现这个的时候,我发现了这一点:

Mathematics for Computer Scientists 2

在第5课中,他解决了完全相同的问题,并使用"cut (P x /\ Q x)“将目标从"P x”重写为"P x /\ Q x -> P x“。从那里你可以做一些操作,当目标只是"P x /\ Q x“时,你可以应用"forall x:P x /\ Q x”,剩下的就很简单了。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/835183

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档