Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
|
|
@ -0,0 +1,29 @@
|
|||
Enumeration
|
||||
#Composite
|
||||
#Probably_prime
|
||||
EndEnumeration
|
||||
|
||||
Procedure Miller_Rabin(n, k)
|
||||
Protected d=n-1, s, x, r
|
||||
If n=2
|
||||
ProcedureReturn #Probably_prime
|
||||
ElseIf n%2=0 Or n<2
|
||||
ProcedureReturn #Composite
|
||||
EndIf
|
||||
While d%2=0
|
||||
d/2
|
||||
s+1
|
||||
Wend
|
||||
While k>0
|
||||
k-1
|
||||
x=Int(Pow(2+Random(n-4),d))%n
|
||||
If x=1 Or x=n-1: Continue: EndIf
|
||||
For r=1 To s-1
|
||||
x=(x*x)%n
|
||||
If x=1: ProcedureReturn #Composite: EndIf
|
||||
If x=n-1: Break: EndIf
|
||||
Next
|
||||
If x<>n-1: ProcedureReturn #Composite: EndIf
|
||||
Wend
|
||||
ProcedureReturn #Probably_prime
|
||||
EndProcedure
|
||||
Loading…
Add table
Add a link
Reference in a new issue