गणित लिखने के लिए प्रमाण सहायक


12

मैं कुछ प्रमाण सहायक का उपयोग करके गणितीय प्रमाण लिखना चाहूंगा। सब कुछ पहले क्रम तर्क (समानता के साथ) और प्राकृतिक कटौती का उपयोग करके लिखा जाएगा। पृष्ठभूमि सेट सिद्धांत (ZF) है। उदाहरण के लिए, मैं निम्नलिखित प्रमाण कैसे लिख सकता हूं?

Axiom:एक्सy(एक्स=yz(zएक्सzy))

प्रमेय:एक्सy(z(zएक्स)z(zy)एक्स=y)

यानी खाली सेट अनोखा है।

यह मेरे लिए तुच्छ है कि कागज और एक कलम का उपयोग करके, लेकिन मुझे वास्तव में जिस चीज की आवश्यकता है वह एक सॉफ्टवेयर है जो मुझे शुद्धता के लिए प्रमाण की जांच करने में मदद करता है।

धन्यवाद।


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

5
यदि आप सेट सिद्धांत में रुचि रखते हैं, न कि सिद्धांत के रूप में तो इसाबेल शायद सबसे सरल प्रणाली है। कोक अजीब और भ्रमित करने वाला लगेगा।
मार्क रीटब्लाट

2
मुझे लगता है कि आपके द्वारा लिखा गया स्वयंसिद्ध प्रथम-क्रम तर्क नहीं है, बल्कि द्वितीय-क्रम तर्क है। ऐसा इसलिए है क्योंकि पूर्व में, वैरिएबल केवल व्यक्तियों के ऊपर होते हैं, जबकि उत्तरार्द्ध में, वैरिएबल व्यक्तियों और सेटों दोनों पर हो सकते हैं। जाहिर है, दिए गए स्वयंसिद्ध में, और सेट हैं जबकि एक व्यक्ति है। y zएक्सyz
एमएस डौस्ती

9
@Sadeq: ZF में वैसे भी ब्रह्मांड के मूल तत्व सेट नहीं हैं? तो आपको पहले क्रम तर्क में "सभी सेटों के लिए" जैसी चीजों को कहने में सक्षम होना चाहिए, जो कि उस स्वयंसिद्ध में किया जा रहा है।
रॉबिन कोठारी

9
@ सादिक, रॉबिन ने जो कहा वह सही है, एक प्रथम क्रम सिद्धांत है और प्रश्न में लिखा गया स्वयंसिद्ध भी प्रथम क्रम है। में जेड एफ सब कुछ सिर्फ एक सेट, व्यक्तियों सेट बनाम के रूप में कोई बात नहीं है है। (एक साइड नोट के रूप में, किसी को विभिन्न प्रकार के चर के बारे में बात करने के लिए दूसरे या उच्चतर ऑर्डर ऑब्जेक्ट्स पर जाने की आवश्यकता नहीं है, एक को केवल विभिन्न प्रकारों की आवश्यकता है, दूसरे और उच्चतर ऑर्डर लॉजिक कई तरह के लॉजिक्स से काफी अलग हैं)। जेडएफजेडएफ
केवह

जवाबों:


13

Coq और Isabelle दोनों ऐसा कर सकते हैं।

[Coq] यहां CIC में ZFC को कैसे एनकोड किया जाए, इस पर चर्चा करने वाला एक पेपर है, जिस पर Coq आधारित है।

बेंजामिन वर्नर: सेट्स इन टाइप्स, टाइप्स इन सेट्स (1997)। http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.55.1709

[इसाबेल] ZF के लिए एक पुस्तकालय है।

http://www.cl.cam.ac.uk/research/hvg/Isabelle/dist/library/ZF/index.html


3
जबकि यह कागज काफी अच्छा है, मुझे लगता है कि यह सिर्फ प्रजाति (प्रकार चर) को जोड़ने के लिए अधिक व्यावहारिक होगा और एक्सफ़ोम को सीधे जेडएफ के स्वयंसिद्ध सिद्धांत को सांकेतिक शब्दों में बदलना होगा, फिर इन स्वयंसिद्धों से प्रत्यक्ष अपील द्वारा प्रमाण करें। एन्कोडिंग यह दिखाने के लिए अधिक है कि सिद्धांत अभिव्यंजक शक्ति में संबंधित हैं।
कोड़ी

2
मुझे यह जोड़ना चाहिए कि हालांकि, ब्रूनो बारास द्वारा इन विचारों का एक कार्यान्वयन है: lix.polytechnique.fr/~barras/proofs/sets/index.html
cody

9

केव के सुझाव पर टिप्पणी से आगे बढ़े

सबसे पहले आपको एक प्रमाण सहायक का चयन करने की आवश्यकता है। Coq मैं क्या उपयोग है, लेकिन कई अन्य हैं । Coq उच्च-क्रम तर्क (इंडक्टिव कन्सट्रक्शंस के तथाकथित पथरी) पर आधारित है। अन्य सबूत सहायक पहले ऑर्डर लॉजिक पर आधारित हैं, इसलिए आपकी ज़रूरतों के लिए अधिक अनुकूल हो सकते हैं (ऊपर दी गई टिप्पणियों को संशोधित करें)।

फिर आपको प्रमाण सहायक सीखने के लिए प्रतिबद्ध होने की आवश्यकता है। लिंक किए गए दस्तावेज़ कोक के साथ जमीन पाने का एक ट्यूटोरियल है। एक कोक विशेषज्ञ बनने के लिए समर्पण और अभ्यास के वर्षों की आवश्यकता होती है, लेकिन एक दोपहर में सरल प्रमेय साबित हो सकते हैं। Coq या किसी अन्य प्रूफ असिस्टेंट को सीखने की कुंजी है, जैसे कि लिंक्ड पेपर में प्रूफ करना। सिर्फ पेपर पढ़ने से बहुत कम मदद मिलेगी, क्योंकि प्रूफ असिस्टेंट के साथ बातचीत का पूरा अनुभव कागज पर अच्छी तरह से व्यक्त नहीं किया जा सकता है।

कुछ दिनों के भीतर आपको सरल प्रमेयों को एनकोड करने में सक्षम होना चाहिए, जैसे कि ऊपर वाला, और उन्हें साबित करें। उम्मीद न करें कि हम आपके लिए ऐसा करेंगे। आप इस तरह से कुछ नहीं सीखेंगे।

जब आप इन प्रमेयों को सिद्ध करने में सफल हो जाते हैं, तो यहां अपने उत्तर पोस्ट करने के लिए स्वतंत्र महसूस करें और शायद अपने अनुभवों के बारे में कुछ टिप्पणी छोड़ दें।

क्या आप चुनौती के लिए तैयार हैं?


4
Coq एक उचित विकल्प है; हालाँकि, अगर xddz5 वास्तव में ZF सेट सिद्धांत में काम करना चाहता है बजाय सिद्धांत के, तो शायद मिज़ार अधिक उपयुक्त है।
टिमोथी चो


5

डेव क्लार्क Coq का सुझाव देते हैं, लेकिन वास्तव में इसाबेल एक बेहतर विचार की तरह लगता है, क्योंकि यह ZF के लिए एक पुस्तकालय है । इसाबेल भी बहुत परिपक्व है और इसमें कई प्रकार की रणनीति और विस्तार शामिल हैं।

मैंने व्यक्तिगत रूप से मिज़ार का उपयोग नहीं किया है, लेकिन यह अच्छी तरह से अच्छा भी हो सकता है।


2

मैं निम्नलिखित प्रमाण कैसे लिख सकता हूं?

इसाबेल / जेडएफ में आप कुछ इस तरह से लिख सकते हैं

theory csthquestion imports Main

begin

theorem empty_unique:
shows "\<forall> x.\<forall>y.(\<forall>z. (z\<notin>x)) \<and> (\<forall>z.(z\<notin>y)) \<longrightarrow> x=y"
    by auto

end

जैसा कि आप देख सकते हैं कि इसाबेल अपने आप साबित होती है। यदि आप वास्तव में चाहते हैं तो बेशक आप अधिक विस्तृत प्रमाण लिख सकते हैं।


2

यह बहुत प्रमेय मेरे डीसी प्रूफ 2.0 सॉफ्टवेयर के साथ शामिल ट्यूटोरियल में एक काम किया उदाहरण (उदाहरण 11 देखें) है। इसे मेरी वेबसाइट http://www.dcproof.com पर नि: शुल्क डाउनलोड करें


1
इस साइट के लिए यह थोड़ा बिकता है। क्या आप यह बताने के लिए कि आपके सॉफ्टवेयर किस तरह से समस्या के अनुकूल है, में कुछ जानकारी प्रस्तुत कर सकते हैं? शायद एक वीडियो या इस व्युत्पत्ति के स्क्रीनशॉट के लिए एक लिंक किया जा रहा है?
चार्ल्स स्टीवर्ट

1
यहाँ सबूत है: dcproof.com/EmptySetUnique.htm मेरी वेबसाइट पर एक वीडियो है जिसमें दिखाया गया है कि सिस्टम कैसे काम करता है।
डेन क्रिस्टेंसेन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.