इस Nth प्राइम पुनरावृत्ति की सुवाह्यता (में) साबित करना


18

के रूप में इस प्रकार अपने पिछले प्रश्न से , मैं के साथ खेल रहा है रिएमन्न परिकल्पना मनोरंजन गणित के एक मामले के रूप में। इस प्रक्रिया में, मैं एक दिलचस्प पुनरावृत्ति के लिए आया हूं, और मैं इसके नाम, इसकी कटौती, और अभाज्य संख्याओं के बीच अंतर की सॉल्वेबिलिटी के लिए इसकी संवेदनशीलता के रूप में उत्सुक हूं।

बोलने से पहले, हम प्रत्येक अभाज्य संख्या के बीच के अंतर को पूर्ववर्ती प्रत्याशी अपराधों की पुनरावृत्ति के रूप में परिभाषित कर सकते हैं । उदाहरण के लिए, हमारे आधार के लिए , अगला प्रमुख होगा:पी0=2

पी1=मिनट{एक्स>पी0|-क्योंकि(2π(एक्स+1)/पी0)+1=0)}

या, जैसा कि हम इसे प्लॉट करके देखते हैं : पी1=3

हम प्रत्येक अभ्यर्थी के आगे आवर्ती का मूल्यांकन करके n primes के लिए प्रक्रिया को दोहरा सकते हैं। मान लीजिए कि हम अगला प्रधान प्राप्त करना चाहते हैं, पी2 । हमारे उम्मीदवार समारोह बन जाता है:

पी2=मिनट{एक्स>पी1|पी1(एक्स)+((-क्योंकि(2π(एक्स+1)/पी1)+1)(-क्योंकि(2π(एक्स+2)/पी1)+1))=0}

कहाँ पे:

पी1(एक्स)=-क्योंकि(2π(एक्स+1)/पी0)+1 , जैसा कि ऊपर है।

यह देखना आसान है कि प्रत्येक घटक फ़ंक्शन केवल पूर्णांक मानों पर शून्य हो जाता है, और यह दिखाने के लिए समान रूप से आसान है कि यह हमारे AND- और XOR के आकार के रिश्तों को कैसे चतुराई से, त्रिकोणमितीय प्रणाली के संदर्भ में जोड़ और गुणन के गुणों का शोषण करता है। समीकरण।

पुनरावृत्ति बन जाती है:

पी0=0पी0=2पीn(एक्स)=पीn-1(एक्स)+Π=2पीn-1(-क्योंकि(2π(एक्स+-1)/पीn-1)+1)पीn=मिनट{एक्स>पीn-1|पीn(एक्स)=0}

... जहां पूरी समस्या इस बात पर टिका है कि क्या हम बहुपद समय में इस कार्य पर मिनट ऑपरेटर का मूल्यांकन कर सकते हैं । यह वास्तव में, एराटोस्थनीज की छलनी का एक सामान्यीकरण है ।

कार्य पायथन कोड पुनरावृत्ति को प्रदर्शित करने के लिए:

from math import cos,pi

def cosProduct(x,p):
    """ Handles the cosine product in a handy single function """
    ret = 1.0
    for k in xrange(2,p+1):
        ret *= -cos(2*pi*(x+k-1)/p)+1.0
    return ret

def nthPrime(n):
    """ Generates the nth prime, where n is a zero-based integer """

    # Preconditions: n must be an integer greater than -1
    if not isinstance(n,int) or n < 0:
        raise ValueError("n must be an integer greater than -1")

    # Base case: the 0th prime is 2, 0th function vacuous
    if n == 0:
        return 2,lambda x: 0

    # Get the preceding evaluation
    p_nMinusOne,fn_nMinusOne = nthPrime(n-1)

    # Define the function for the Nth prime
    fn_n = lambda x: fn_nMinusOne(x) + cosProduct(x,p_nMinusOne)

    # Evaluate it (I need a solver here if it's tractable!)
    for k in xrange(p_nMinusOne+1,int(p_nMinusOne**2.718281828)):
        if fn_n(k) == 0:
            p_n = k
            break

    # Return the Nth prime and its function
    return p_n,fn_n

एक त्वरित उदाहरण:

>>> [nthPrime(i)[0] for i in range(20)]
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71]

परेशानी यह है, मैं अब अपने सिर के ऊपर, गणितीय रूप से और एक कंप्यूटर वैज्ञानिक के रूप में हूँ। विशेष रूप से, मैं फूरियर विश्लेषण के साथ, समान कवर को परिभाषित करने के साथ , या सामान्य रूप से जटिल विमान के साथ सक्षम नहीं हूं , और मुझे चिंता है कि यह दृष्टिकोण या तो फ्लैट-आउट गलत है या 3SAT समस्या के एक भयावह डर को छुपाता है, इसे ऊपर उठाता है एनपी पूर्णता।

इस प्रकार, मेरे यहाँ तीन प्रश्न हैं:

  1. ऊपर मेरी प्रवृत्ति पुनरावृत्ति को देखते हुए, क्या यह संभव है कि बहुपद समय और स्थान में शून्य के स्थान का निर्धारण या गणना करना संभव है?
  2. यदि ऐसा है या नहीं, तो क्या यह किसी अन्य उपप्रणालियों को छिपा रहा है जो एक पॉलीटाइम या पॉलीस्पेस समाधान को असाध्य बना देगा?
  3. और अगर कुछ चमत्कार (1) और (2) के साथ, उच्च स्तर से, इस पुनरावृत्ति को संतुष्ट करने में आप कौन से गतिशील प्रोग्रामिंग सुधार करेंगे? स्पष्ट रूप से, कई कार्यों के माध्यम से एक ही पूर्णांक पर पुनरावृति असाध्य और काफी बेकार है।

और मेरे पाठ की दीवार के बावजूद यहां उन लोगों के लिए: मैं अनिश्चित हूं अगर यह खुद को रीमैन ज़ेटा तक कम कर देता है, जिससे यह एक ही जटिलता देता है। मुझे विश्वास नहीं है कि यह करता है, हालांकि।
MrGomez

1
1) आप क्या टैग पसंद करेंगे? आप बस उनका उपयोग करके उन्हें स्वयं बना सकते हैं। 2) कृपया लिए एक सामान्य परिभाषा दें , यानी क्या है ? 3) यदि आपको एक या एक सप्ताह के बाद इस पर कोई जवाब नहीं मिलता है, तो आप इसे cstheory.SE में स्थानांतरित करना चाह सकते हैं। (पीn)
राफेल

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

1
संशोधन पूर्ण। अन्य गुप्त मुद्दों का होना निश्चित है, लेकिन मेरा मूल प्रतिनिधित्व निशान से काफी दूर था। मुझे अपने 24 घंटे के युवा से परामर्श करना चाहिए और उसे की उचित परिभाषाओं पर एक रिफ्रेशर देना चाहिए । किसी भी मामले में, आपके धैर्य और आपके संपादन के लिए अब तक धन्यवाद। वर्तमान टैग भी अब मेरी संतुष्टि के लिए हैं। :)(एक्स)
MrGomez

बारे में , क्या सभी छोटी संख्याओं के विपरीत सभी छोटे अपराधों की "जांच" करना पर्याप्त नहीं है?
राफेल

जवाबों:


1

निम्न पत्र से पता चलता है कि PRIMES P में है (इसने 2006 में Gödel पुरस्कार जीता)

http://www.cse.iitk.ac.in/users/manindra/algebra/primality_v6.pdf

AKS PRIMES एल्गोरिथ्म (modulo a घटाव) में Nth प्राइम मिनिमाइजेशन प्रक्रिया का समाधान सेट करके, हम प्रभावी रूप से पुनरावृत्ति संबंध के लिए एक ट्रैक्टेबल समाधान प्राप्त कर सकते हैं (यदि आप साबित कर सकते हैं कि पुनरावृत्ति संबंध द्वारा प्रधान अंतर दिया गया है)।

स्रोत कोड इंटरनेट पर पाए जा सकते हैं। मैं यहां उनकी ओर इशारा नहीं कर रहा हूं क्योंकि मैंने व्यक्तिगत रूप से उनकी जांच नहीं की है।

हालाँकि, सभी नंबरों की जाँच के लिए हमारे पास अभी भी की ऊपरी सीमा है ...n


1
Rosettacode पेज को पूरी तरह से गलत नाम दिया गया है। यह एकेएस प्राणिकता परीक्षण नहीं है, और एन से कम सभी पूर्णांकों द्वारा परीक्षण विभाजन का प्रतिबंध है। दूसरी ओर, यह देखते हुए कि P में Pimality है और यह देखना कि क्या मूल प्रश्न पर कोई प्रकाश डालता है, पूछने योग्य है।
दनाज

अच्छी बात है ... मैं इसे ठीक करूँगा ...
user13675

1
nएलजीn
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.