Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
29
Task/Tonelli-Shanks-algorithm/J/tonelli-shanks-algorithm-1.j
Normal file
29
Task/Tonelli-Shanks-algorithm/J/tonelli-shanks-algorithm-1.j
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
leg=: dyad define
|
||||
x (y&|)@^ (y-1)%2
|
||||
)
|
||||
|
||||
tosh=:dyad define
|
||||
assert. 1=1 p: y [ 'y must be prime'
|
||||
assert. 1=x leg y [ 'x must be square mod y'
|
||||
pow=. y&|@^
|
||||
if. 1=m=. {.1 q: y-1 do.
|
||||
r=. x pow (y+1)%4
|
||||
else.
|
||||
z=. 1x while. 1>: z leg y do. z=.z+1 end.
|
||||
c=. z pow q=. (y-1)%2^m
|
||||
r=. x pow (q+1)%2
|
||||
t=. x pow q
|
||||
while. t~:1 do.
|
||||
n=. t
|
||||
i=. 0
|
||||
whilst. 1~:n do.
|
||||
n=. n pow 2
|
||||
i=. i+1
|
||||
end.
|
||||
r=. y|r*b=. c pow 2^m-i+1
|
||||
m=. i
|
||||
t=. y|t*c=. b pow 2
|
||||
end.
|
||||
end.
|
||||
y|(,-)r
|
||||
)
|
||||
17
Task/Tonelli-Shanks-algorithm/J/tonelli-shanks-algorithm-2.j
Normal file
17
Task/Tonelli-Shanks-algorithm/J/tonelli-shanks-algorithm-2.j
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
10 tosh 13
|
||||
7 6
|
||||
56 tosh 101
|
||||
37 64
|
||||
1030 tosh 10009
|
||||
1632 8377
|
||||
1032 tosh 10009
|
||||
|assertion failure: tosh
|
||||
| 1=x leg y['x must be square mod y'
|
||||
44402 tosh 100049
|
||||
30468 69581
|
||||
665820697x tosh 1000000009x
|
||||
378633312 621366697
|
||||
881398088036 tosh 1000000000039x
|
||||
791399408049 208600591990
|
||||
41660815127637347468140745042827704103445750172002x tosh (10^50x)+577
|
||||
32102985369940620849741983987300038903725266634508 67897014630059379150258016012699961096274733366069
|
||||
Loading…
Add table
Add a link
Reference in a new issue