簡體   English   中英

如果我不導入經典邏輯,你能證明 Coq 中的 Excluded Middle 是錯誤的嗎?

[英]Can you prove Excluded Middle is wrong in Coq if I do not import classical logic

我知道在構造邏輯中排中線是不可能的。 但是,當我嘗試在 Coq 中顯示它時,我被卡住了。

Theorem em: forall P : Prop, ~P \/ P -> False.

我的做法是:

intros P H.
unfold not in H.
intuition.

系統提示如下:

2 subgoals
P : Prop
H0 : P -> False
______________________________________(1/2)
False
______________________________________(2/2)
False

我應該如何進行? 謝謝

你想要構建的不是對LEM的否定,LEM會說“存在某些P使得EM不能保持”,但是聲稱沒有命題是可判定的,這當然會導致一個微不足道的不一致:

Axiom not_lem : forall (P : Prop), ~ (P \/ ~ P).

Goal False.
now apply (not_lem True); left.

不需要使用花哨的雙重否定引理; 因為這顯然不一致[想象它會持有!]

LEM的“經典”否定確實是:

Axiom not_lem : exists (P : Prop), ~ (P \/ ~ P).

並且它不可證明[否則EM不可接受],但你可以安全地假設它; 但是對你來說它不會有多大用處。

人們不能反駁Coq中排除中間(LEM)的定律。 讓我們假設你證明了你對LEM的反駁。 我們通過將其假設為公理來模擬這種情況:

Axiom not_lem : forall (P : Prop), ~ (P \/ ~ P).

但是,我們還有一個較弱的LEM版本(雙重否定):

Lemma not_not_lem (P : Prop) :
  ~ ~ (P \/ ~ P).
Proof.
  intros nlem. apply nlem.
  right. intros p. apply nlem.
  left. exact p.
Qed.

這兩個事實將使Coq的邏輯不一致:

Lemma Coq_would_be_inconsistent :
  False.
Proof.
  apply (not_not_lem True).
  apply not_lem.
Qed.

我來自 mathoverflow,但我無權評論 @Anton Trunov 的回答。 我認為他的回答是不公正的,或者至少是不完整的:他隱藏了以下“民間傳說”:

Coq + Impredicative Set + Weak Excluded-middle -> False

這個民間傳說是以下事實的變體:

證明無關+大消除->假

而 Coq + Impredicative Set 是規范的,穩健的,強歸一化的,所以是一致的。

Coq + Impredicative Set 是 Coq 的舊版本。 我認為這至少表明基於雙重否定翻譯的 LEM 辯護沒有那么令人信服。

如果您想獲取有關解決方案的信息,可以從這里獲取https://github.com/FStarLang/FStar/issues/360

另一方面,你可能對 Coq-HoTT+UA 如何對抗 LEM∞ 的故事感興趣......

================================================== ===

好的,讓我們有一些解決方案。

  1. 使用命令行標志-impredicative-set ,或安裝舊版本(<8.0)的 coq。
  2. 排除中間 -> 證明無關
  3. 證明無關 -> 假

或者你可以使用標准的 coq + coq-hott。

  1. 安裝 coq-hott
  2. Univalence + Global Excluded-middle (LEM∞) -> False

不建議你在沒有掌握具體概念的情況下直接點擊有問題的代碼。

我跳過了很多關於元理論實現的內容,例如 Univalence 在 Coq-HoTT 中不可計算,而只能在 Agda-CuTT 中計算,例如 Coq+Impredicative Set/Coq-HoTT 的一致性證明。

然而,元理論的考慮很重要。 如果我們只是想得到一個 Anti-LEM 模型而不關心元理論,那么我們可以在 coq 中使用“Boolean-valued forcing”來破壞只有 LEM 才能引入的東西,比如各種奇怪的實集,Dedekind無限的...

但這個答案到此為止。

暫無
暫無

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

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