Gödel का takes फ़ंक्शन तर्कों के रूप में तीन प्राकृतिक संख्या लेता है।
इसे के रूप में परिभाषित किया गया है β(x,y,z) = rem(x, 1 + (z + 1) · y) = rem(x, (z · y + y + 1) )
जहाँ रे (ए, बी) एक बी के पूर्णांक विभाजन के बाद शेष को दर्शाता है।
The लेम्मा अब कहती है कि:
प्राकृतिक संख्याओं के किसी भी क्रम के लिए (k_0, k_1,…, k_n), प्राकृतिक संख्याएँ b और c ऐसी हैं, जो प्रत्येक i, n, β (b, c, i) = k_i के लिए हैं।
गोडेल को किसी भी इनपुट को खोजने b
और उसके c
लिए मदद की आवश्यकता है (k_0, k_1, … , k_n), k_i ∈ ℕ
।
एक फ़ंक्शन लिखें n
, जो प्राकृतिक संख्याओं से भरा, लंबाई की एक सरणी में लेता है , और एक संभावित b,c
आउटपुट देता है जो सरणी के लिए लेम्मा को पूरा करता है।
पाशविक बल से समाधान नहीं मिलता!
(मेरे पूरी तरह से अप्रतिबंधित राय में, जब आप पहले एक संख्या प्राप्त करते हैं और तब गणना करते हैं, तो यह क्रूर बल होता है। यह संख्या का अनुमान लगा रहा है और फिर अनुमान लगाने पर कि क्या अनुमान सही था। मैं यहां कोडित होना चाहता हूं एक समाधान है जो गणना करता है। संख्या और यह जांचने की ज़रूरत नहीं है कि वे लेम्मा को पूरा करते हैं क्योंकि उन्हें ऐसा करने के लिए गणना की गई थी।)
उन्हें दिए गए समीकरणों और जानकारी के साथ निर्माण करें। सबसे छोटा कोड जीतता है, बोनस अंक अगर आप इसे करते हैं Javascript
क्योंकि मैं इसमें बस मिल रहा हूं:)
उदाहरण:
[5, 19, 7, 8] -> (1344595, 19)
1344505 % (1 + (0 + 1) * 19) = 5
1344505 % (1 + (1 + 1) * 19) = 19
1344505 % (1 + (2 + 1) * 19) = 7
1344505 % (1 + (3 + 1) * 19) = 8
(b, c)
करता है जब तक कि यह एक ऐसा नहीं मिलता है जो काम करता है वह क्रूर बल होगा, और एक दृष्टिकोण जो इनपुट की लंबाई में समय रेखीय होता है, लेकिन यह उन लोगों के बीच एक बड़ा अंतर नहीं होगा। रेखा कहां खींची गई है?