Re: [問題] 檢驗質數?

看板CSSE作者 (亨ちゃんは可愛い>/////<)時間18年前 (2006/05/12 06:21), 編輯推噓3(301)
留言4則, 3人參與, 最新討論串3/3 (看更多)
※ 引述《Azraelx (勝敗乃兵家之常事)》之銘言: : ※ 引述《shane123 (家產有八十七億￾  ￾ﰩ》之銘言: : : 請教各位一下 : : 現今檢驗一個數是否為質數 : : 最快的演算法是什麼? : : 它的 big-o 是多少呢? : : thanks la~~~ : 方法滿多的 : 1. : 要快速否定x是質數可以利用 : if p is prime : a^p-1 = 1 mod p (忘了叫費馬還尤拉了.XD 應該是費馬小) : 如果x是質數,就會滿足 : a^x-1 = 1 mod x, 如果不等,x就不是質數 補充一點 如果=1不一定是質數喔 而且還有Carmichael number這種怪胎.... (Carmichael number就是: 若一個x 對所有小於x的正整數a a^(x-1) = 1 mod x 但x卻不是質數 它就被稱做Carmichael number 印象中最小的是561) 所以此法只用來否定質數性 不能用來肯定質數性 : 2. : 判斷質數比較有名的有 MR-test, (miller-rabin test,不知道有沒有拼錯米勒XD) : 不過印像中是機率式的判斷法 是機率式的沒錯 其他機率式的判斷法還有Pollard-Rho等 (你的米勒沒拼錯 XD) : 3. : 這幾年有幾篇文章,提出一個deterministic的方法可以在你給定一個x時, : 回答你x是否為質數. 不過我沒去看, 只是聽老師上課提過.XD : 能回答你的都只是這些概念性的問題...不好意思了... : 如果有興趣我可以再幫你細查 ^^ 另外如果你不嫌麻煩的話 建質數表也是一個(古老的(?))方法 它的Big-O是O(表的大小) 判斷的數字則最大到表內最大質數的下一個質數的平方減一 -- 'Oh, Harry, dont't you see?' Hermione breathed. 'If she could have done one thing to make absolutely sure that every single person in this school will read your interview, it was banning it!' ---'Harry Potter and the order of the phoenix', P513 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.240.54

05/12 09:01, , 1F
AKS 做的 "PRIMES IN P" 現在不知道 improve 到多好
05/12 09:01, 1F

05/12 09:02, , 2F
一開始 paper 剛出來時印象中是 (logn)^12 ?
05/12 09:02, 2F

05/12 14:23, , 3F
第二版好像已經降到 \tilde{O}((log n)^6) 了
05/12 14:23, 3F

05/13 06:48, , 4F
恩 謝謝各位高手囉!
05/13 06:48, 4F
文章代碼(AID): #14OxZO8E (CSSE)
討論串 (同標題文章)
文章代碼(AID): #14OxZO8E (CSSE)