Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit a86450b

Browse files
Simplify a bunch of math
1 parent 0fab3f2 commit a86450b

File tree

1 file changed

+51
-114
lines changed

1 file changed

+51
-114
lines changed

‎main.py‎

Lines changed: 51 additions & 114 deletions
Original file line numberDiff line numberDiff line change
@@ -12,123 +12,60 @@ def sample_seed(seed):
1212
subtraction = abs(seed)
1313
mj = MSEED - subtraction
1414

15-
# note: coefecents are fibinocci numbers
16-
# a = 5
17-
# b = 3
18-
# for i in range(5, 55):
19-
# v = getvarname(i) # sa0_50, sa0_16,..
20-
# aa = (a * ((-1)**i) * -1) % MBIG
21-
# bb = (b * (-1)**i) % MBIG
22-
# print(f"{v} = ({aa} + {bb}*mj) % MBIG")
23-
# c = a
24-
# a += b
25-
# b = c
26-
sa0_50 = (5 + 2147483644*mj) % MBIG
27-
sa0_16 = (2147483639 + 5*mj) % MBIG
28-
sa0_37 = (13 + 2147483639*mj) % MBIG
29-
sa0__3 = (2147483626 + 13*mj) % MBIG
30-
sa0_24 = (34 + 2147483626*mj) % MBIG
31-
sa0_45 = (2147483592 + 34*mj) % MBIG
32-
sa0_11 = (89 + 2147483592*mj) % MBIG
33-
sa0_32 = (2147483503 + 89*mj) % MBIG
34-
sa0_53 = (233 + 2147483503*mj) % MBIG
35-
sa0_19 = (2147483270 + 233*mj) % MBIG
36-
sa0_40 = (610 + 2147483270*mj) % MBIG
37-
sa0__6 = (2147482660 + 610*mj) % MBIG
38-
sa0_27 = (1597 + 2147482660*mj) % MBIG
39-
sa0_48 = (2147481063 + 1597*mj) % MBIG
40-
sa0_14 = (4181 + 2147481063*mj) % MBIG
41-
sa0_35 = (2147476882 + 4181*mj) % MBIG
42-
sa0__1 = (10946 + 2147476882*mj) % MBIG
43-
sa0_22 = (2147465936 + 10946*mj) % MBIG
44-
sa0_43 = (28657 + 2147465936*mj) % MBIG
45-
sa0__9 = (2147437279 + 28657*mj) % MBIG
46-
sa0_30 = (75025 + 2147437279*mj) % MBIG
47-
sa0_51 = (2147362254 + 75025*mj) % MBIG
48-
sa0_17 = (196418 + 2147362254*mj) % MBIG
49-
sa0_38 = (2147165836 + 196418*mj) % MBIG
50-
sa0__4 = (514229 + 2147165836*mj) % MBIG
51-
sa0_25 = (2146651607 + 514229*mj) % MBIG
52-
sa0_46 = (1346269 + 2146651607*mj) % MBIG
53-
sa0_12 = (2145305338 + 1346269*mj) % MBIG
54-
sa0_33 = (3524578 + 2145305338*mj) % MBIG
55-
sa0_54 = (2141780760 + 3524578*mj) % MBIG
56-
sa0_20 = (9227465 + 2141780760*mj) % MBIG
57-
sa0_41 = (2132553295 + 9227465*mj) % MBIG
58-
sa0__7 = (24157817 + 2132553295*mj) % MBIG
59-
sa0_28 = (2108395478 + 24157817*mj) % MBIG
60-
sa0_49 = (63245986 + 2108395478*mj) % MBIG
61-
sa0_15 = (2045149492 + 63245986*mj) % MBIG
62-
sa0_36 = (165580141 + 2045149492*mj) % MBIG
63-
sa0__2 = (1879569351 + 165580141*mj) % MBIG
64-
sa0_23 = (433494437 + 1879569351*mj) % MBIG
65-
sa0_44 = (1446074914 + 433494437*mj) % MBIG
66-
sa0_10 = (1134903170 + 1446074914*mj) % MBIG
67-
sa0_31 = (311171744 + 1134903170*mj) % MBIG
68-
sa0_52 = (823731426 + 311171744*mj) % MBIG
69-
sa0_18 = (1634923965 + 823731426*mj) % MBIG
70-
sa0_39 = (1336291108 + 1634923965*mj) % MBIG
71-
sa0__5 = (298632857 + 1336291108*mj) % MBIG
72-
sa0_26 = (1037658251 + 298632857*mj) % MBIG
73-
sa0_47 = (1408458253 + 1037658251*mj) % MBIG
74-
sa0_13 = (1776683645 + 1408458253*mj) % MBIG
75-
sa0_34 = (1779258255 + 1776683645*mj) % MBIG
76-
77-
78-
sa1__1 = (sa0__1 - sa0_32) % MBIG
79-
sa1__2 = (sa0__2 - sa0_33) % MBIG
80-
sa1__3 = (sa0__3 - sa0_34) % MBIG
81-
sa1__4 = (sa0__4 - sa0_35) % MBIG
82-
sa1__5 = (sa0__5 - sa0_36) % MBIG
83-
sa1__6 = (sa0__6 - sa0_37) % MBIG
84-
sa1__7 = (sa0__7 - sa0_38) % MBIG
85-
sa1__8 = ((1 - (mj - 1)) - sa0_39) % MBIG
86-
sa1__9 = (sa0__9 - sa0_40) % MBIG
87-
sa1_10 = (sa0_10 - sa0_41) % MBIG
88-
sa1_11 = (sa0_11 - (mj - 1)) % MBIG
89-
sa1_12 = (sa0_12 - sa0_43) % MBIG
90-
sa1_13 = (sa0_13 - sa0_44) % MBIG
91-
sa1_14 = (sa0_14 - sa0_45) % MBIG
92-
sa1_15 = (sa0_15 - sa0_46) % MBIG
93-
sa1_16 = (sa0_16 - sa0_47) % MBIG
94-
sa1_17 = (sa0_17 - sa0_48) % MBIG
95-
sa1_18 = (sa0_18 - sa0_49) % MBIG
96-
sa1_19 = (sa0_19 - (5 - 3*mj)) % MBIG
97-
sa1_20 = (sa0_20 - sa0_51) % MBIG
98-
sa1_21 = (1 - sa0_52) % MBIG
99-
sa1_22 = (sa0_22 - sa0_53) % MBIG
100-
sa1_23 = (sa0_23 - sa0_54) % MBIG
101-
sa1_24 = (sa0_24 - mj) % MBIG
102-
sa1_25 = (sa0_25 - sa1__1) % MBIG
103-
sa1_26 = (sa0_26 - sa1__2) % MBIG
104-
sa1_27 = (sa0_27 - sa1__3) % MBIG
105-
sa1_28 = (sa0_28 - sa1__4) % MBIG
15+
sa1__1 = ((10946 + 2147476882*mj) - (2147483503 + 89*mj)) % MBIG
16+
sa1__2 = ((1879569351 + 165580141*mj) - (3524578 + 2145305338*mj)) % MBIG
17+
sa1__3 = ((2147483626 + 13*mj) - (1779258255 + 1776683645*mj)) % MBIG
18+
sa1__4 = ((514229 + 2147165836*mj) - (2147476882 + 4181*mj)) % MBIG
19+
sa1__5 = ((298632857 + 1336291108*mj) - (165580141 + 2045149492*mj)) % MBIG
20+
sa1__6 = ((2147482660 + 610*mj) - (13 + 2147483639*mj)) % MBIG
21+
sa1__7 = ((24157817 + 2132553295*mj) - (2147165836 + 196418*mj)) % MBIG
22+
sa1__8 = ((1 - (mj - 1)) - (1336291108 + 1634923965*mj)) % MBIG
23+
sa1__9 = ((2147437279 + 28657*mj) - (610 + 2147483270*mj)) % MBIG
24+
sa1_10 = ((1134903170 + 1446074914*mj) - (2132553295 + 9227465*mj)) % MBIG
25+
sa1_11 = ((89 + 2147483592*mj) - (mj - 1)) % MBIG
26+
sa1_12 = ((2145305338 + 1346269*mj) - (28657 + 2147465936*mj)) % MBIG
27+
sa1_13 = ((1776683645 + 1408458253*mj) - (1446074914 + 433494437*mj)) % MBIG
28+
sa1_14 = ((4181 + 2147481063*mj) - (2147483592 + 34*mj)) % MBIG
29+
sa1_15 = ((2045149492 + 63245986*mj) - (1346269 + 2146651607*mj)) % MBIG
30+
sa1_16 = ((2147483639 + 5*mj) - (1408458253 + 1037658251*mj)) % MBIG
31+
sa1_17 = ((196418 + 2147362254*mj) - (2147481063 + 1597*mj)) % MBIG
32+
sa1_18 = ((1634923965 + 823731426*mj) - (63245986 + 2108395478*mj)) % MBIG
33+
sa1_19 = ((2147483270 + 233*mj) - (5 - 3*mj)) % MBIG
34+
sa1_20 = ((9227465 + 2141780760*mj) - (2147362254 + 75025*mj)) % MBIG
35+
sa1_21 = (1 - (823731426 + 311171744*mj)) % MBIG
36+
sa1_22 = ((2147465936 + 10946*mj) - (233 + 2147483503*mj)) % MBIG
37+
sa1_23 = ((433494437 + 1879569351*mj) - (2141780760 + 3524578*mj)) % MBIG
38+
sa1_24 = ((34 + 2147483626*mj) - mj) % MBIG
39+
sa1_25 = ((2146651607 + 514229*mj) - sa1__1) % MBIG
40+
sa1_26 = ((1037658251 + 298632857*mj) - sa1__2) % MBIG
41+
sa1_27 = ((1597 + 2147482660*mj) - sa1__3) % MBIG
42+
sa1_28 = ((2108395478 + 24157817*mj) - sa1__4) % MBIG
10643
sa1_29 = ((2*mj - 3) - sa1__5) % MBIG
107-
sa1_30 = (sa0_30 - sa1__6) % MBIG
108-
sa1_31 = (sa0_31 - sa1__7) % MBIG
109-
sa1_32 = (sa0_32 - sa1__8) % MBIG
110-
sa1_33 = (sa0_33 - sa1__9) % MBIG
111-
sa1_34 = (sa0_34 - sa1_10) % MBIG
112-
sa1_35 = (sa0_35 - sa1_11) % MBIG
113-
sa1_36 = (sa0_36 - sa1_12) % MBIG
114-
sa1_37 = (sa0_37 - sa1_13) % MBIG
115-
sa1_38 = (sa0_38 - sa1_14) % MBIG
116-
sa1_39 = (sa0_39 - sa1_15) % MBIG
117-
sa1_40 = (sa0_40 - sa1_16) % MBIG
118-
sa1_41 = (sa0_41 - sa1_17) % MBIG
44+
sa1_30 = ((75025+2147437279*mj) - sa1__6) % MBIG
45+
sa1_31 = ((311171744+1134903170*mj) - sa1__7) % MBIG
46+
sa1_32 = ((2147483503+89*mj) - sa1__8) % MBIG
47+
sa1_33 = ((3524578+2145305338*mj) - sa1__9) % MBIG
48+
sa1_34 = ((1779258255+1776683645*mj) - sa1_10) % MBIG
49+
sa1_35 = ((2147476882+4181*mj) - sa1_11) % MBIG
50+
sa1_36 = ((165580141+2045149492*mj) - sa1_12) % MBIG
51+
sa1_37 = ((13+2147483639*mj) - sa1_13) % MBIG
52+
sa1_38 = ((2147165836+196418*mj) - sa1_14) % MBIG
53+
sa1_39 = ((1336291108+1634923965*mj) - sa1_15) % MBIG
54+
sa1_40 = ((610+2147483270*mj) - sa1_16) % MBIG
55+
sa1_41 = ((2132553295+9227465*mj) - sa1_17) % MBIG
11956
sa1_42 = ((mj - 1) - sa1_18) % MBIG
120-
sa1_43 = (sa0_43 - sa1_19) % MBIG
121-
sa1_44 = (sa0_44 - sa1_20) % MBIG
122-
sa1_45 = (sa0_45 - sa1_21) % MBIG
123-
sa1_46 = (sa0_46 - sa1_22) % MBIG
124-
sa1_47 = (sa0_47 - sa1_23) % MBIG
125-
sa1_48 = (sa0_48 - sa1_24) % MBIG
126-
sa1_49 = (sa0_49 - sa1_25) % MBIG
57+
sa1_43 = ((28657+2147465936*mj) - sa1_19) % MBIG
58+
sa1_44 = ((1446074914+433494437*mj) - sa1_20) % MBIG
59+
sa1_45 = ((2147483592+34*mj) - sa1_21) % MBIG
60+
sa1_46 = ((1346269+2146651607*mj) - sa1_22) % MBIG
61+
sa1_47 = ((1408458253+1037658251*mj) - sa1_23) % MBIG
62+
sa1_48 = ((2147481063+1597*mj) - sa1_24) % MBIG
63+
sa1_49 = ((63245986+2108395478*mj) - sa1_25) % MBIG
12764
sa1_50 = ((5 - 3*mj) - sa1_26) % MBIG
128-
sa1_51 = (sa0_51 - sa1_27) % MBIG
129-
sa1_52 = (sa0_52 - sa1_28) % MBIG
130-
sa1_53 = (sa0_53 - sa1_29) % MBIG
131-
sa1_54 = (sa0_54 - sa1_30) % MBIG
65+
sa1_51 = ((2147362254+75025*mj) - sa1_27) % MBIG
66+
sa1_52 = ((823731426+311171744*mj) - sa1_28) % MBIG
67+
sa1_53 = ((233+2147483503*mj) - sa1_29) % MBIG
68+
sa1_54 = ((2141780760+3524578*mj) - sa1_30) % MBIG
13269
sa1_55 = (mj - sa1_31) % MBIG
13370

13471
sa2__1 = (sa1__1 - sa1_32) % MBIG

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /