Coq के साथ झुकाव विज्ञान


12

वर्तमान में मुझे Coq सीखना है और पता नहीं है कि कैसे निपटें or:

एक उदाहरण के रूप में, यह जितना सरल है, मैं यह नहीं देखता कि कैसे साबित किया जाए:

Theorem T0: x \/ ~x.

मैं वास्तव में इसकी सराहना करूंगा, अगर कोई मेरी मदद कर सके।

संदर्भ के लिए मैं इस चीट शीट का उपयोग करता हूं ।

इसके अलावा मेरे मन में एक प्रमाण का एक उदाहरण है: यहाँ डबल नकार के लिए है:

Require Import Classical_Prop.

Parameters x: Prop.

Theorem T7: (~~x) -> x. 
intro H. 
apply NNPP. 
exact H. 
Qed.

NNPPका प्रकार है forall p:Prop, ~ ~ p -> p., इसलिए यह साबित करने के लिए इसका उपयोग करने के लिए धोखा दे रहा है T7। जब आप आयात Classical_Propकरते हैं तो आपको मिलता हैAxiom classic : forall P:Prop, P \/ ~ P.
एंटोन ट्रुनोव

तो, के apply classic.लिए अपने लक्ष्य को हल करती है T0
एंटोन ट्रुनोव

जवाबों:


14

आप इसे "वेनिला" कोक में साबित नहीं कर सकते, क्योंकि यह अंतर्ज्ञानवादी तर्क पर आधारित है :

एक प्रमाण-सिद्धांत के दृष्टिकोण से, अंतर्ज्ञानवादी तर्क शास्त्रीय तर्क का प्रतिबंध है जिसमें बहिष्कृत मध्य और दोहरे निषेध को समाप्त करने का कानून वैध तार्किक नियम नहीं है।

इस तरह की स्थिति से निपटने के कई तरीके हैं।

  • स्वयंसिद्ध के रूप में बहिष्कृत मध्य के कानून का परिचय दें:

    Axiom excluded_middle : forall P:Prop, P \/ ~ P.
    

    इस बिंदु के बाद कुछ भी साबित करने की अधिक आवश्यकता नहीं है।

  • बहिष्कृत मध्य के कानून के समतुल्य कुछ स्वयंसिद्ध का परिचय दें और उनकी समानता को साबित करें। यहाँ सिर्फ कुछ उदाहरण हैं।


बहुत बहुत धन्यवाद अब तक। मैं आपके द्वारा लिखी गई हर बात से परिचित नहीं हूँ, लेकिन फिर भी जाँच करूँगा। मैं coqIde का उपयोग करता हूं और वास्तव में दोहरे नकार के लिए एक प्रमाण भी मिला, मैंने इसे बाद में अधिक स्पष्टता के लिए समस्या वर्णन में जोड़ा। मुझे उम्मीद थी कि ऊपर दी गई समस्या के लिए एक अनुरूप तरीका होगा। शायद मुझे एक उदाहरण शामिल करना चाहिए था।
इमोगो

1
@AntonTrunov आपको अपने लिए कुछ कोष्ठक जोड़ने की आवश्यकता है Axiom peirce: जैसा कि यह खड़ा है कि यह Peirce का नियम नहीं है (और वास्तव trivialमें साबित करने के लिए है)।
गैलिस

@gallais इस बात के लिए धन्यवाद! फिक्स्ड।
एंटोन ट्रुनोव

6

जब तक कि अन्य लोगों ने आपको सूचित किया है, तब तक आपकी तानावस्था एक तर्कशास्त्र नहीं है जब तक आप शास्त्रीय तर्क नहीं मानते हैं। लेकिन जब से आप निर्णायक सत्य मूल्यों पर तमाशा कर रहे हैं, आप boolइसके बजाय उपयोग कर सकते हैं Prop। तब आपकी तनातनी होती है:

Require Import Bool.

Lemma how_about_bool: forall (p : bool), Is_true (p || negb p).
Proof.
  now intros [|].
Qed.
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.