क्या 161803398 A 'स्पेशल' नंबर है? मठ के अंदर। आयामी ()


162

मुझे संदेह है कि उत्तर ' मैथ के कारण ' है, लेकिन मुझे उम्मीद थी कि कोई व्यक्ति बुनियादी स्तर पर थोड़ी अधिक जानकारी दे सकता है ...

मैं आज बीसीएल स्रोत कोड में चारों ओर देख रहा था, इस बात पर एक नज़र कि मैंने पहले इस्तेमाल की गई कुछ कक्षाएं कैसे लागू की थीं। मैंने पहले कभी नहीं सोचा था कि कैसे (छद्म) यादृच्छिक संख्याओं को उत्पन्न किया जाए, इसलिए मैंने यह देखने का फैसला किया कि यह कैसे किया गया था।

पूर्ण स्रोत यहां: http://referencesource.microsoft.com/#mscorlib/system/random.cs#29

private const int MSEED = 161803398; 

यह MSEED मान का उपयोग हर बार रैंडम () श्रेणी के बीज के रूप में किया जाता है।

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

मैंने Google में नंबर खोजने की कोशिश की, लेकिन मुझे कुछ नहीं मिला।



6
@ 48klocs: डॉक्स में ऐसा कहते हैं :The current implementation of the Random class is based on Donald E. Knuth's subtractive random number generator algorithm. For more information, see D. E. Knuth. "The Art of Computer Programming, volume 2: Seminumerical Algorithms". Addison-Wesley, Reading, MA, second edition, 1981.
जेसी गुड

4
@ 48klocs हां, पेज 283 यहां: apps.nrbook.com/c/index.html उसका कारण "गणित" होने के कारण लगता है।
इश्स

22
@eshs: दिलचस्प तथ्य: आपके लिंक से पता चलता है कि पृष्ठ २ of३ है inextp = 31;, लेकिन Randomकक्षा के स्रोत कोड में ऐसा है inextp = 21;क्योंकि किसी ने इस बग को गलत समझा ।
जेसी गुड

7
@ इज़काता हमें साइट गुणवत्ता के दीर्घकालिक लक्ष्य के लिए सही व्यवहार पर (गलत तरीके से मतदान नहीं करने के लिए) उपयोगकर्ताओं को शिक्षित करने की आवश्यकता है, न कि केवल अल्पकालिक लक्ष्य के लिए (विशिष्ट प्रश्न बंद नहीं होने के लिए)। और अगर मैंने उपरोक्त टिप्पणियों को इंगित नहीं किया, तो यह एक डुप्लिकेट के रूप में बंद हो सकता है क्योंकि लोग कभी-कभी ऐसा करते हैं।
बर्नहार्ड बार्कर

जवाबों:


141

नहीं, लेकिन यह फी ("सुनहरा अनुपात") पर आधारित है।

161803398 = 1.61803398 * 10^8  φ * 10^8

स्वर्ण अनुपात के बारे में यहाँ और अधिक

और यहाँ आकस्मिक गणितज्ञ के लिए एक बहुत अच्छा पढ़ा

और मुझे यादृच्छिक संख्या जनरेटर पर एक शोध पत्र मिला जो इस दावे से सहमत है। (पेज 53 देखें।)


17
क्या आप जानते हैं कि Phi पर आधारित संख्या एक बीज के रूप में अच्छा विकल्प क्यों बनाती है? क्या यहां इसे संक्षेप में प्रस्तुत करना संभव होगा?
बर्नहार्ड बार्कर

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

7
उक्त पुस्तक के एक उद्धरण के अनुसार किसी बड़े MBIG के अनुसार और किसी भी छोटे (लेकिन अभी भी बड़े) MSEED को उपरोक्त मूल्यों के लिए प्रतिस्थापित किया जा सकता है। तो यह गणितीय मज़ा है, अधिक या कम .. तो सही उत्तर होना चाहिए: नहीं। लेकिन यह फी पर आधारित है।
ताव

14
बस उस यादृच्छिक संख्या के कागज के माध्यम से एक नज़र डालें - यह रेखा थोड़ी बाहर खड़ी थी - "One can’t even fathom the repercussions if security flaws in the implementation (or design) of the SSL protocol are to be found."(पृष्ठ 4)
जेसीडब्ल्यू १६'१४ ०:१०

2
मुझे लगता है कि स्वर्ण अनुपात का उपयोग करने के लिए एक अधिक प्रासंगिक तरीका कोड में अंकों के आधार -10 प्रतिनिधित्व का उपयोग करने के बजाय (मापांक / phi) का उपयोग करना होगा जिसका आधार 10 से कोई लेना-देना नहीं है। phi की एक दिलचस्प विशेषता मैंने उस पृष्ठ पर नहीं देखा कि मैं किसी भी पूर्णांक N के लिए क्या बता सकता हूं, मान N / phi-int (N / phi)> = 1 / N / sqrt (5)। इसका मतलब यह होगा कि अगर कोई संख्या N / phi-int (N / phi) का अनुक्रम उत्पन्न करता है, तो निकटतम जोड़ी के बीच की दूरी अंतराल में सबसे बड़ी संभव वर्दी रिक्ति के sqrt (5) के एक कारक के भीतर होगी। 0..1)
सुपरकैट

62

यह संख्या सुनहरे अनुपात 1.61803398 * 10 ^ 8 से ली गई है । मैट ने एक अच्छा जवाब दिया कि यह संख्या क्या है, इसलिए मैं सिर्फ एक एल्गोरिथ्म के बारे में थोड़ा समझाऊंगा।

यह इस एल्गोरिथ्म के लिए एक विशेष संख्या नहीं है। एल्गोरिथ्म नथ का घटिया यादृच्छिक संख्या जनरेटर एल्गोरिथ्म है और इसके मुख्य बिंदु हैं:

  • 56 यादृच्छिक संख्याओं की एक गोलाकार सूची स्टोर करें
  • आरंभीकरण सूची को भरने की प्रक्रिया है, फिर एक विशिष्ट नियतात्मक एल्गोरिथ्म के साथ उन मूल्यों को यादृच्छिक करें
  • दो सूचकांक रखे गए हैं जो 31 अलग हैं
  • नए यादृच्छिक संख्या दो सूचकांकों में दो मूल्यों का अंतर है
  • सूची में नए यादृच्छिक संख्या की दुकान

जनरेटर निम्नलिखित पुनरावर्तन पर आधारित है: X n = (X n-55 - X n-24 ) mod m, जहाँ n where 0. यह लैग्ड फाइबोनैचि जनरेटर का आंशिक मामला है : X n = (X n-j- X n-k) ) मॉड एम, जहां 0 <k <j और @ किसी भी बाइनरी ऑपरेशन (घटाव, जोड़, xor) है।

इस जनरेटर के कई कार्यान्वयन हैं। नूथ अपनी पुस्तक में फोरट्रान में एक कार्यान्वयन प्रदान करता है। मुझे निम्नलिखित टिप्पणी के साथ निम्नलिखित कोड मिला :

PARAMETER (MBIG = 1000000000, MSEED = 161803398, MZ = 0, FAC = 1.E-9)

नुथ के अनुसार, किसी भी बड़े MBIG, और किसी भी छोटे (लेकिन अभी भी बड़े) MSEED को उपरोक्त मूल्यों के लिए प्रतिस्थापित किया जा सकता है।

थोड़ा और अधिक यहाँ पाया जा सकता है ध्यान दें, कि यह वास्तव में एक शोध पत्र नहीं है (जैसा कि मैथ द्वारा बताया गया है), यह सिर्फ एक मास्टर डिग्री थीसिस है।

क्रिप्टोग्राफी (अपरिमेय संख्या का उपयोग करने की तरह में लोग pi, e, sqrt(5)) एक अनुमान यह है कि के अंकों का होता है क्योंकि वहाँ इस तरह की संख्या बराबर आवृत्ति के साथ प्रकट होता है और इस प्रकार उच्च राशि एन्ट्रापी । इस तरह के नंबरों के बारे में अधिक जानने के लिए आप सुरक्षा स्टैकएक्सचेंज पर संबंधित प्रश्न पा सकते हैं । यहाँ एक उद्धरण है:

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


5
उत्तरदाता के रूप में, यह सिर्फ उनके एन्ट्रॉपी के कारण नहीं है, यह इसलिए भी है क्योंकि वे संख्याएँ मेरी आस्तीन संख्याओं के मुकाबले दोगुनी हैं ।
कोल जॉनसन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.