簡體   English   中英

coq:消除forall量詞

[英]coq: elimination of forall quantifier

我想證明以下定理:

Theorem Frobenius (A: Set) (q: Prop) (p: A -> Prop) :
  (q \/ forall x : A, p x) -> (forall x : A, q \/ p x).

我已經得到了以下證明:

Proof.
intro.
intro.
destruct H.
left.
assumption.

但現在我處於一種我不知道該怎么辦的情況。 我可以使用以下東西:

A : Set
q : Prop
p : A -> Prop
H : forall x : A, p x
x : A

我想證明以下子目標:

q \/ p x

如何在給定的前提下消除forall量詞

forall x : A, p x

那就是:我如何插入我的具體x:A以便我可以演繹:px?

您可以使用specializespecialize (H x) )在H實例化通用量化的x

可能是最簡單的?

Theorem Frobenius (A: Set) (q: Prop) (p: A -> Prop) :
  (q \/ forall x : A, p x) -> (forall x : A, q \/ p x).
intro H.

elim H.
intros Hl x.
left.
exact Hl.

intros Hr x.
right.
apply Hr.

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM