青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

CG@CPPBLOG

/*=========================================*/
隨筆 - 76, 文章 - 39, 評論 - 137, 引用 - 0
數據加載中……

我的SICP習題答案(1.24~1.28)

1.24
對于Fermat檢查,因為具有log n 的增長階,所以對于 n^2 和 n 的檢查的時間比 理論上應該是 2:1, 實際上,經過測試也比較接近,當n比較大時。
若與預計不符,可能因為 n 比較小,或者字長發生變化,比如 n > 2^32 (參見下題)

1.25
僅從理論分析,Alyssa 的改動不會引起增長階的變化,但實際上當 Fermat 檢查的 n 稍微大一點,速度就會很慢。主要原因 就是 base^exp 是一個非常大的數,可能遠遠超過 一個32位機字的表示范圍 2^32 ,在 scheme 里可能用若干個 32-bit 靠軟件實現運算,這將導致計算急速增長。無論是傳遞、運算還是求模。
實際上 1.22、1.23、1.24 的幾個題目可能都會遇到字長變化引起的計算速度突變。

1.26
Fermat 檢查正是因為 連續求平方的求冪方法,使得的增長階變為 log n, 而這均來源于 b^(2n) = (b^n)^2,
Louis 的方法讓求冪又變成了連乘,b^(2n) = b^n*b^n = (b*b*...*b)*(b*b*...*b),求冪的增長階變成了 O(n),Fermat 檢查的增長階自然也變成了 O(n)。

1.27
(define (fermat-test n)
  (fermat-iter (- n 
1) n))

(define (fermat-iter a n)
  (cond ((
= a 0) #t)
        ((
= (expmod a n n) a) (fermat-iter (- a 1) n))
        (else #f)))

1.28
首先來看,Fermat 小定理的一個變形:

p 是素數, 1<a<p, 有 a^p % p = a
==> a^p = kp + a ==> a^p - a = kp ==> a(a^(p-1)-1) = kp ==> a^(p-1) -1 = k'p
==> a^(p-1) % p = 1

這個變形就是題目中提到的,這個形式和費馬小定理是等價的(但是奇怪的是,我沒有發現已知的幾個Carmichael數能夠躲過這個變形的檢查,有待研究

再來看,miller-rabin 素性測試的原理:

p 是素數, 1<a<p, 且 a^2 % p = 1
==> (a^2-1) % p = 0 ==> (a+1)(a-1) % p =0
那么 a+1 % p = 0 或者 a-1 % p =0,
又 a<p 且 p 是素數,所以
a = 1 或者 a = p-1 (這兩個叫做 1模n的平凡平方根)

代碼如下:
(define (check-nontrivial-sqrt-of-one a n)
  (define (check-
1? t)
    (if (and (> a 1
)
             (< a (- n 
1))
             (
= t 1))
        
0 t))
  (check-
1? (remainder (square a) n)))

(define (expmod base exp m)
  (cond ((
= exp 01)
        ((even? exp)
         
;(remainder (square (expmod base (/ exp 2) m)) m))
         (check-nontrivial-sqrt-of-one (expmod base (/ exp 2) m) m))
        (else
         (remainder (* base (expmod base (- exp 
1) m)) m))))

(define (miller-rabin-test n)
  (define (iter x n)
    (cond ((
= x 0) #t)
          ((
= (expmod x (- n 1) n) 1) (iter (- x 1) n))
          (else #f)))
  (iter (- n 
1) n))

① 對于
Carmichael 數 n ,實際上不能完全通過 a^(n-1)%n = 1 的檢查,除非 a 與 n 互素,當 a 為 n 的素因子時,不能通過,比如 Carmichael 第一個 561 = 3*11*17, 而 3^560%561 = 375 ≠ 1 。可以程序驗證這個。 所以我認為,a^(n-1)%n = 1 的檢查比 a^n%n = a 的檢查更嚴格,是不是不存在合數通過完全的 a^(n-1)%n = 1 的檢查呢?我不敢說。但把這個結論暫時記在這里,希望能得到幫助或者反駁。2008-04-02 23:56


posted on 2008-03-31 00:21 cuigang 閱讀(1571) 評論(2)  編輯 收藏 引用 所屬分類: Lisp/Scheme我的SICP答案

評論

# re: 我的SICP習題答案(1.24~1.28)  回復  更多評論   

a^(n-1)%n = 1 跟 a^n%n = a 應該是完全等價的吧?
2009-03-25 21:10 | pgw

# re: 我的SICP習題答案(1.24~1.28)  回復  更多評論   

@pgw

好吧。。 我錯了
2009-03-25 21:42 | pgw
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久综合给合久久狠狠色 | 欧美一区二视频| 亚洲视频1区2区| 99精品久久免费看蜜臀剧情介绍| 亚洲精美视频| 亚洲精品乱码久久久久久久久| 91久久黄色| 亚洲午夜精品一区二区| 欧美在线观看www| 欧美福利在线观看| 欧美小视频在线观看| 国产精品网站在线观看| 韩日精品在线| 一区二区日韩欧美| 欧美在线一区二区| 久久综合久久综合久久综合| 正在播放欧美视频| 国产乱码精品一区二区三区av| 国产一区二区看久久| 在线观看精品| 一区二区三区精品| 久久精品72免费观看| 美女国产一区| 在线视频日本亚洲性| 久久国产精品亚洲77777| 欧美国产精品va在线观看| 国产精品美女久久久久aⅴ国产馆| 国产在线拍偷自揄拍精品| 亚洲精品之草原avav久久| 久久www成人_看片免费不卡| 亚洲国产黄色片| 欧美一区二区视频观看视频| 欧美国产在线观看| 精品999成人| 午夜久久黄色| 亚洲激情自拍| 毛片一区二区| 国产一区二区中文| 亚洲欧美日韩电影| 亚洲高清一区二| 久久er99精品| 国产精品入口| 亚洲欧美精品suv| 亚洲黄色小视频| 久久亚洲一区| 国产情人节一区| 一本色道久久88亚洲综合88 | 日韩一级成人av| 美女主播视频一区| 黄色综合网站| 久久综合电影一区| 久久成人免费视频| 国产日韩欧美在线观看| 亚洲欧美久久久久一区二区三区| 亚洲国产国产亚洲一二三| 玖玖玖国产精品| 伊伊综合在线| 久久婷婷蜜乳一本欲蜜臀| 午夜激情综合网| 国产精品美女久久| 欧美一二三区精品| 亚欧成人在线| 狠狠88综合久久久久综合网| 一区二区三区不卡视频在线观看| 久久夜色精品国产欧美乱| 这里只有精品视频在线| 免费观看在线综合色| 国产偷自视频区视频一区二区| 日韩一区二区高清| 欧美jizz19性欧美| 欧美一区影院| 国产精品女人久久久久久| 亚洲人久久久| 久久精品五月婷婷| 亚洲天堂av图片| 亚洲欧美精品suv| 亚洲视频www| 国产精品欧美一区喷水| 老色鬼久久亚洲一区二区| 久久亚洲春色中文字幕久久久| 国产精品久久777777毛茸茸| 欧美国产成人精品| 亚洲欧洲视频在线| 久久er精品视频| 欧美成人一区在线| 一本到高清视频免费精品| 欧美日本三区| 亚洲欧美激情在线视频| 久久久久久久久久看片| 1000部国产精品成人观看| 免费观看一级特黄欧美大片| 亚洲美女中出| 久久精品日韩| 亚洲一区影院| 黄色在线成人| 国产精品xxx在线观看www| 亚洲尤物在线| 亚洲韩国精品一区| 亚洲欧美日韩精品久久| 在线精品国产欧美| 国产精品视频观看| 欧美在线免费视屏| 一区二区欧美日韩视频| 免费中文日韩| 久久婷婷一区| 久久久综合精品| 午夜影视日本亚洲欧洲精品| 在线一区视频| 亚洲一区二区在| 亚洲一区二区影院| 欧美大片在线影院| 欧美大尺度在线| 欧美大成色www永久网站婷| 亚洲在线一区| 久久黄金**| 久久国产天堂福利天堂| 欧美一区网站| 久久久久久久网站| 免播放器亚洲| 欧美激情黄色片| 日韩一级精品| 午夜免费日韩视频| 西瓜成人精品人成网站| 玖玖在线精品| 欧美精品成人在线| 国产美女扒开尿口久久久| 国产毛片一区二区| 亚洲区一区二| 亚洲欧美国产制服动漫| 午夜日韩在线| 欧美gay视频激情| 国产精品成人va在线观看| 国产日韩在线不卡| 亚洲激情六月丁香| 亚洲视频一二三| 噜噜噜躁狠狠躁狠狠精品视频| 欧美粗暴jizz性欧美20| 99视频日韩| 久久精品国产亚洲一区二区三区| 久久久91精品国产| 欧美国产日本在线| 午夜精品99久久免费| 亚洲一区二区三区高清不卡| 榴莲视频成人在线观看| 亚洲国产婷婷香蕉久久久久久99| 中文一区二区| 欧美日韩喷水| 日韩一级网站| 麻豆精品视频在线| 欧美在线亚洲综合一区| 欧美性开放视频| 久久这里有精品15一区二区三区 | 亚洲一区二区成人| 老牛影视一区二区三区| 欧美一区二区网站| 国产午夜精品久久| 久久综合激情| 久久久91精品| 久久天堂国产精品| 亚洲欧洲另类| 亚洲国产高清一区二区三区| 欧美 日韩 国产精品免费观看| 亚洲国产专区| 亚洲婷婷在线| 国产欧美日韩另类视频免费观看| 欧美一区二区三区免费大片| 亚洲在线观看| 亚洲福利免费| 一本色道久久综合亚洲91| 国产日韩欧美日韩大片| 欧美大片在线观看一区二区| 欧美日韩视频| 另类综合日韩欧美亚洲| 欧美精品一卡| 久久久久久久综合日本| 欧美激情一区在线| 欧美一区二区三区四区在线| 久色成人在线| 欧美在线亚洲在线| 欧美三级网址| 另类综合日韩欧美亚洲| 久久国产视频网站| 亚洲欧美视频| 欧美日韩精品在线播放| 你懂的网址国产 欧美| 国产日韩欧美精品综合| 亚洲欧美日产图| 一区二区高清| 欧美大尺度在线观看| 午夜激情一区| 国产精品电影观看| 亚洲在线国产日韩欧美| 亚洲一区二区视频| 欧美午夜国产| 一二美女精品欧洲| 欧美一级理论片| 亚洲激情专区| 99精品欧美一区二区三区| 欧美激情一区二区三区全黄| 欧美成人69|