O~(log6n)O~(log4n)O~(n1/7)O(lognO(logloglogn))
O~(log2n)2−80O~(log2n)
এই সমস্ত পরীক্ষার মধ্যে, স্মৃতি কোনও সমস্যা নয়।
তাদের মন্তব্যে, jbapple বাস্তবে কোন প্রাথমিকতা পরীক্ষা করা উচিত তা সিদ্ধান্ত নেওয়ার বিষয়টি উত্থাপন করে। এটি বাস্তবায়ন এবং বেঞ্চমার্কিংয়ের একটি প্রশ্ন: কয়েকটি অ্যালগোরিদম প্রয়োগ এবং অনুকূলিতকরণ এবং পরীক্ষামূলকভাবে নির্ধারণ করুন কোনটি পরিসরে সবচেয়ে দ্রুত। কৌতুহলকারীদের জন্য, প্যারির কোডাররা ঠিক এটি করেছে এবং তারা একটি নির্বোধ কাজ isprime
এবং একটি সম্ভাব্য ফাংশন নিয়ে এসেছিল ispseudoprime
, যার উভয়ই এখানে পাওয়া যায় । ব্যবহৃত সম্ভাব্যতা পরীক্ষা মিলার – রবিন। নিরস্তক একটি বিপিএসডাব্লু।
ডানা জ্যাকবসেনের আরও তথ্য এখানে :
পরী সংস্করণ ২.৩ এর জন্য একটি এপিআর-সিএল প্রিমালিটি প্রুফ ব্যবহার করে isprime(x)
, এবং বিপিএসডাব্লু সম্ভাব্য প্রাইম টেস্ট ("প্রায় অতিরিক্ত শক্তিশালী" লুকাস টেস্ট সহ) এর জন্য ispseudoprime(x)
।
তারা আচরণকে পরিবর্তন করে এমন যুক্তি দেয়:
isprime(x,0)
(ডিফল্ট।) সমন্বয় ব্যবহার করে (বিপিএসডাব্লিউ, দ্রুত পকলিংটন বা বিএলএস 75 উপপাদ্য 5, এপিআর-সিএল)।
isprime(x,1)
n−1
isprime(x,2)
এপিআর-সিএল ব্যবহার করে।
ispseudoprime(x,0)
(ডিফল্ট।) বিপিএসডাব্লু (বেস 2 সহ এমআর, "প্রায় অতিরিক্ত শক্তিশালী" লুকাস) ব্যবহার করে।
ispseudoprime(x,k)
k≥1kmpz_is_probab_prime_p(x,k)
পরী 2.1.7 আরও খারাপ সেটআপ ব্যবহার করেছে। isprime(x)
কেবলমাত্র এমআর পরীক্ষা ছিল (ডিফল্ট 10), যা isprime(9)
প্রায়শই সত্যে ফিরে আসার মতো মজাদার জিনিসগুলির দিকে পরিচালিত করে । ব্যবহার isprime(x,1)
একটি পকলিংটন প্রমাণ করবে, যা প্রায় 80 ডিজিটের জন্য জরিমানা ছিল এবং পরে সাধারণভাবে কার্যকর হতে খুব ধীর হয়ে যায়।
আপনি বাস্তবেও লিখেন , কেউ এই অ্যালগরিদম ব্যবহার করেন না, কারণ এগুলি খুব ধীর। আমি বিশ্বাস করি আপনি কী বলতে চাইছেন তা আমি জানি তবে আমি মনে করি এটি আপনার শ্রোতার উপর নির্ভর করে শক্তিশালী। একেএস অবশ্যই নিঃশব্দে ধীর গতিযুক্ত, তবে এপিআর-সিএল এবং ইসিপিপি এত দ্রুত যে কিছু লোক সেগুলি ব্যবহার করে। এগুলি প্যারানয়েড ক্রিপ্টোর জন্য দরকারী, এবং এমন লোকের পক্ষে দরকারী যেখানে primegaps
বা factordb
যেখানে প্রমাণিত প্রাইমগুলি পাওয়ার জন্য পর্যাপ্ত সময় রয়েছে।
[এ সম্পর্কে আমার মন্তব্য: একটি নির্দিষ্ট পরিসরে কোনও মৌলিক সংখ্যার সন্ধান করার সময়, আমরা কিছু তুলনামূলক পদ্ধতির ব্যবহার করি যার পরে কিছুটা অপেক্ষাকৃত দ্রুত সম্ভাব্যতা পরীক্ষা করা হয়। কেবল তখনই, যদি আমরা নির্বিচারে পরীক্ষা চালাই]]
এই সমস্ত পরীক্ষার মধ্যে, স্মৃতি কোনও সমস্যা নয়। এটি একেএসের জন্য একটি বিষয়। উদাহরণস্বরূপ, এই প্রিন্ট দেখুন । এর কিছু বাস্তবায়নের উপর নির্ভর করে। যদি কোনও নম্বরফিলির ভিডিওকে একেএস কল করে তা বাস্তবায়ন করে (যা আসলে ফার্মের লিটল উপপাদ্যের একটি সাধারণীকরণ), মেমোরির ব্যবহার অত্যন্ত বেশি হবে। রেফারেন্সড পেপারের মতো ভি 1 বা ভি 6 অ্যালগরিদমের কোনও এনটিএল বাস্তবায়ন ব্যবহারের ফলে মূ .় পরিমাণে মেমরির পরিমাণ বাড়বে। একটি ভাল ভি 6 জিএমপি বাস্তবায়ন এখনও 1024-বিট প্রাইমের জন্য 2 গিগাবাইট ব্যবহার করবে, যা অনেকটাযেমন একটি ছোট সংখ্যার জন্য মেমরি। বার্নস্টেইন উন্নতি এবং GMP বাইনারি বিভাজন ব্যবহার করে আরও অনেক ভাল বৃদ্ধি হয় (উদাহরণস্বরূপ 1024-বিটের জন্য 120MB)। এটি অন্যান্য পদ্ধতির প্রয়োজনের তুলনায় এখনও অনেক বড় এবং আশ্চর্যের কিছু নেই, এটি এপিআর-সিএল বা ইসিপিপির চেয়ে কয়েক মিলিয়ন গতি কম হবে।