Make next-odd public again as it's used elsewhere

db4
Aaron Schaefer 2009-05-07 18:33:55 -04:00
parent 6704a1bb3e
commit 7f6998a815
1 changed files with 4 additions and 4 deletions

View File

@ -1,4 +1,4 @@
! Copyright (C) 2008 Doug Coleman.
! Copyright (c) 2008-2009 Doug Coleman.
! See http://factorcode.org/license.txt for BSD license.
USING: combinators kernel locals math math.functions math.ranges
random sequences sets combinators.short-circuit math.bitwise
@ -13,8 +13,6 @@ IN: math.miller-rabin
: next-even ( m -- n ) >even 2 + ;
: next-odd ( m -- n ) dup even? [ 1 + ] [ 2 + ] if ;
TUPLE: positive-even-expected n ;
:: (miller-rabin) ( n trials -- ? )
@ -29,12 +27,14 @@ TUPLE: positive-even-expected n ;
] [
r iota [
2^ s * a swap n ^mod n - -1 =
] any? not
] any? not
] if
] any? not ;
PRIVATE>
: next-odd ( m -- n ) dup even? [ 1 + ] [ 2 + ] if ;
: miller-rabin* ( n numtrials -- ? )
over {
{ [ dup 1 <= ] [ 3drop f ] }