यह उत्तर गणना के एक अलग मॉडल को मानता है: यूनिट-कॉस्ट रैम मॉडल। इस मॉडल में, मशीन के शब्दों का आकार , और उन पर संचालन ओ ( 1 ) समय लेते हैं । हम यह भी सरलता के लिए मानते हैं कि प्रत्येक सरणी तत्व एक मशीन शब्द में फिट बैठता है (और इसलिए परिमाण में अधिकांश n O ( 1 ) पर है)।O(logn)O(1)nO(1)
हम एक तरफा त्रुटि के साथ एक रेखीय समय यादृच्छिक एल्गोरिदम का निर्माण करेंगे (एल्गोरिथ्म दो सरणियों को एक ही तत्व शामिल करने की घोषणा कर सकता है, भले ही यह मामला न हो) यह निर्धारित करने की अधिक कठिन समस्या के लिए कि क्या दो सरणियां हैं। और b 1 , … , b n में समान तत्व हैं। (हमें उनमें से किसी को क्रमबद्ध करने की आवश्यकता नहीं है।) हमारा एल्गोरिथ्म अधिकतम 1 / n पर प्रायिकता के साथ त्रुटि करेगा।a1,…,anb1,…,bn1/n
विचार यह है कि निम्नलिखित पहचान रखती है iff सरणियों एक ही तत्व होते है:
इन बहुपद की गणना करने में वास्तव में बहुत अधिक समय लगेगा। इसके बजाय, हम एक यादृच्छिक प्रधानमंत्री चुनें पी और एक यादृच्छिक एक्स 0 और परीक्षण है कि क्या
एन Π मैं = 1 ( एक्स 0 - एक मैं ) ≡ एन Π
∏i=1n(x−ai)=∏i=1n(x−bi).
px0
यदि सरणियाँ समान हैं, तो परीक्षण हमेशा पास होगा, तो आइए उन मामलों पर ध्यान केंद्रित करें जिनमें सरणियाँ भिन्न हैं। विशेष रूप से, के कुछ गुणांक
Π n मैं = 1 ( एक्स - एक मैं ) - Π n मैं = 1 ( एक्स - ख मैं ) n ) = n हे ( एन ) , और इसलिए यह अधिक से अधिक है
हे ( एन ) प्रमुख कारकों आकार के
Ω ( एन )∏i=1n(x0−ai)≡∏i=1n(x0−bi)(modp).
∏ni=1(x−ai)−∏ni=1(x−bi) गैर-शून्य है। के बाद से
परिमाण है
n हे ( 1 ) , इस गुणांक परिमाण है
2 एन एन हे (ai,binO(1)2nnO(n)=nO(n)O(n)Ω(n)। इसका मतलब है कि हम कम से कम का एक सेट का चयन करते हैं
अभाज्य
पी आकार के कम से कम
एन 2 (माना), तो एक यादृच्छिक प्रधानमंत्री के लिए
पी इस सेट की यह संभावना के साथ कम से कम का आयोजन करेगा
n2pn2p है कि
n Π मैं = 1 ( x - एक i )1−1/n
एक यादृच्छिक
एक्स 0 सापेक्ष
पी संभावना के साथ इस गवाह होगा
1 - एन / पी ≥ 1 - 1 / n (डिग्री के एक बहुपद के बाद ज्यादा से ज्यादा
n ज्यादा से ज्यादा है
n जड़ों)।
∏i=1n(x−ai)−∏i=1n(x−bi)≢0(modp).
x0p1−n/p≥1−1/nnn
अंत में, अगर हम एक यादृच्छिक चयन आकार मोटे तौर पर की एन 2 कम से कम का एक सेट के बीच एन 2 अलग अभाज्य संख्या है, और एक यादृच्छिक एक्स 0 सापेक्ष पीpn2n2x0p , फिर जब सरणियों एक ही तत्व शामिल नहीं है, हमारे परीक्षण के साथ असफल हो जायेगी संभाव्यता । परीक्षण को चलाने में समय लगता है O ( n ) क्योंकि पी लगातार मशीन शब्दों में फिट बैठता है।1−O(1/n)O(n)p
बहुपद समय primality परीक्षण का उपयोग करना और आकार के अभाज्य संख्या का घनत्व के बाद से मोटे तौर पर है Ω ( 1 / लॉग इन करें n ) , हम एक यादृच्छिक प्रधानमंत्री चुन सकते हैं पी समय में ( लॉग एन ) हे ( 1 ) । रैंडम x 0 मोडुलो पी को चुनना विभिन्न तरीकों से लागू किया जा सकता है, और इसे आसान बनाया गया है क्योंकि हमारे मामले में हमें पूरी तरह से एकसमान रैंडम x 0 की आवश्यकता नहीं है ।n2Ω(1/logn)p(logn)O(1)x0px0
अंत में, हमारा एल्गोरिथ्म में चलता है , हमेशा YES को आउटपुट करता है यदि सरणियों में समान तत्व होते हैं, और यदि कोई समान तत्व नहीं हैं, तो प्रायिकता 1 - O ( 1 / n ) के साथ NO । हम किसी भी निरंतर C के लिए त्रुटि संभावना 1 - O ( 1 / n C ) में सुधार कर सकते हैं ।O(n)1−O(1/n)1−O(1/nC)C