विषय पर बढ़ें

02 · पूर्णांक: प्रतिनिधि और equivalence

पूर्णांक: प्रतिनिधि और equivalence

`a-b` को प्राकृतिक जोड़े `(a,b)` से दिखाएँ और समझें कि अलग जोड़े एक पूर्णांक कैसे हो सकते हैं।

इस अध्याय से पहले

आप प्राकृतिक संख्याओं की recursive समानता और जोड़ पढ़ सकते हैं।

अध्याय के बाद आप
  • “पूर्णांक: प्रतिनिधि और equivalence” की गणितीय परिभाषा अपने शब्दों में समझाना
  • Python डेटा में उसका निरूपण बताना
  • वास्तविक कोड से छोटा execution अनुमानित करना
गणितीय परिभाषा

`(a,b)` और `(c,d)` एक पूर्णांक तभी दिखाते हैं जब `a+d=b+c`; पूर्णांक इस संबंध के अंतर्गत equivalence class है।

डेटा निरूपण

`Integer` दो प्राकृतिक संख्याएँ रखता है। `(3,1)` और `(4,2)` अलग objects होकर भी 2 दिखाते हैं।

Python कार्यान्वयन

`(a,b) ~ (c,d)` → `a + d == b + c` → `Integer.__eq__`

साथ पढ़ने के लिए कार्यान्वयन और test

peano/integer.py · tests/test_integer.py

गणितीय परिभाषा

गणितीय परिभाषा

(a,b) और (c,d) एक पूर्णांक तभी दिखाते हैं जब a+d=b+c; पूर्णांक इस संबंध के अंतर्गत equivalence class है।

डेटा निरूपण

डेटा निरूपण

Integer दो प्राकृतिक संख्याएँ रखता है। (3,1) और (4,2) अलग objects होकर भी 2 दिखाते हैं।

Python कार्यान्वयन

Python कार्यान्वयन

Integer.__eq__ cross sums की तुलना करता है और normalize() साझा भाग हटाकर (2,0) जैसा प्रतिनिधि चुनता है।

पाठ्यक्रम में उपयोग किया गया सटीक संबंध:

`(a,b) ~ (c,d)` → `a + d == b + c` → `Integer.__eq__`

Execution trace

Execution trace

पूर्णांक तुलना प्राकृतिक जोड़ और समानता फिर उपयोग करती है; log पिछले अध्याय पर निर्भरता दिखाता है।

चलाने से पहले अनुमान

जोड़ों की समानता और normalized प्रतिनिधि का अनुमान लगाएँ।

प्रयोग · पूर्णांक: प्रतिनिधि और equivalence अभी नहीं चला
⌘ / Ctrl + Enter
Output
पहले अनुमान लिखें, फिर चलाएँ।

Test से जाँच

Test से जाँच

test अलग प्रतिनिधि, operations का closure और normalization जाँचते हैं।

दायरा और सीमाएँ

दायरा और सीमाएँ

जोड़े int से धीमे हैं, पर quotient construction को दृश्य बनाते हैं।

“पूर्णांक: प्रतिनिधि और equivalence” के कार्यान्वयन का सही वर्णन कौन-सा है?