Lines 114-120
Link Here
|
114 |
(set! prime:prime-sqr (* nexp nexp)) |
114 |
(set! prime:prime-sqr (* nexp nexp)) |
115 |
(set! prime:sieve (make-bitvector nexp #f)) |
115 |
(set! prime:sieve (make-bitvector nexp #f)) |
116 |
(for-each (lambda (prime) |
116 |
(for-each (lambda (prime) |
117 |
(bitvector-set! prime:sieve prime #t)) |
117 |
(bitvector-set-bit! prime:sieve prime)) |
118 |
primes) |
118 |
primes) |
119 |
(set! prime:products (reverse (cons comp comps)))) |
119 |
(set! prime:products (reverse (cons comp comps)))) |
120 |
(else |
120 |
(else |
Lines 132-138
Link Here
|
132 |
There is a slight chance, @code{(expt 2 (- prime:trials))}, that a |
132 |
There is a slight chance, @code{(expt 2 (- prime:trials))}, that a |
133 |
composite will return @code{#t}." |
133 |
composite will return @code{#t}." |
134 |
(set! n (abs n)) |
134 |
(set! n (abs n)) |
135 |
(cond ((< n (bitvector-length prime:sieve)) (bitvector-ref prime:sieve n)) |
135 |
(cond ((< n (bitvector-length prime:sieve)) (bitvector-bit-set? prime:sieve n)) |
136 |
((even? n) #f) |
136 |
((even? n) #f) |
137 |
((primes-gcd? n prime:products) #f) |
137 |
((primes-gcd? n prime:products) #f) |
138 |
((< n prime:prime-sqr) #t) |
138 |
((< n prime:prime-sqr) #t) |