Let us walk on the 3-isogeny graph
Loading...
Searching...
No Matches
steps_tunemults2047m7l188.c
Go to the documentation of this file.
1
2#include "steps.h"
3
4int steps_guess(int64_t *bs,int64_t *gs,int64_t l)
5{
6 /* l=3: bs=0 gs=0 bench=30 baseline=28 */
7 /* l=5: bs=0 gs=0 bench=36 baseline=36 */
8 /* l=7: bs=0 gs=0 bench=48 baseline=50 */
9 /* l=11: bs=0 gs=0 bench=72 baseline=76 */
10 /* l=13: bs=0 gs=0 bench=84 baseline=88 */
11 /* l=17: bs=0 gs=0 bench=108 baseline=112 */
12 /* l=19: bs=0 gs=0 bench=120 baseline=126 */
13 /* l=23: bs=0 gs=0 bench=144 baseline=152 */
14 /* l=29: bs=0 gs=0 bench=180 baseline=188 */
15 /* l=31: bs=0 gs=0 bench=192 baseline=202 */
16 /* l=37: bs=0 gs=0 bench=228 baseline=236 */
17 /* l=41: bs=0 gs=0 bench=252 baseline=260 */
18 /* l=43: bs=0 gs=0 bench=264 baseline=274 */
19 /* l=47: bs=0 gs=0 bench=288 baseline=300 */
20 /* l=53: bs=0 gs=0 bench=324 baseline=334 */
21 /* l=59: bs=0 gs=0 bench=360 baseline=372 */
22 /* l=61: bs=0 gs=0 bench=372 baseline=384 */
23 /* l=67: bs=0 gs=0 bench=414 baseline=418 */
24 /* l=71: bs=0 gs=0 bench=438 baseline=444 */
25 /* l=73: bs=0 gs=0 bench=450 baseline=454 */
26 /* l=79: bs=0 gs=0 bench=486 baseline=494 */
27 /* l=83: bs=0 gs=0 bench=510 baseline=516 */
28 /* l=89: bs=0 gs=0 bench=546 baseline=552 */
29 if (l <= 89) { *bs = 0; *gs = 0; return 1; }
30 /* l=97: bs=6 gs=4 bench=559 baseline=598 */
31 /* l=101: bs=6 gs=4 bench=577 baseline=624 */
32 /* l=103: bs=6 gs=4 bench=589 baseline=638 */
33 /* l=107: bs=6 gs=4 bench=613 baseline=662 */
34 /* l=109: bs=6 gs=4 bench=619 baseline=674 */
35 /* l=113: bs=6 gs=4 bench=643 baseline=696 */
36 if (l <= 113) { *bs = 6; *gs = 4; return 1; }
37 /* l=127: bs=6 gs=5 bench=698 baseline=786 */
38 if (l <= 127) { *bs = 6; *gs = 5; return 1; }
39 /* l=131: bs=8 gs=4 bench=710 baseline=804 */
40 /* l=137: bs=8 gs=4 bench=746 baseline=840 */
41 /* l=139: bs=8 gs=4 bench=758 baseline=854 */
42 if (l <= 139) { *bs = 8; *gs = 4; return 1; }
43 /* l=149: bs=6 gs=6 bench=785 baseline=914 */
44 /* l=151: bs=6 gs=6 bench=797 baseline=928 */
45 /* l=157: bs=6 gs=6 bench=827 baseline=964 */
46 if (l <= 157) { *bs = 6; *gs = 6; return 1; }
47 /* l=163: bs=8 gs=5 bench=821 baseline=998 */
48 /* l=167: bs=8 gs=5 bench=845 baseline=1024 */
49 /* l=173: bs=8 gs=5 bench=881 baseline=1060 */
50 /* l=179: bs=8 gs=5 bench=911 baseline=1096 */
51 /* l=181: bs=8 gs=5 bench=923 baseline=1108 */
52 /* l=191: bs=8 gs=5 bench=983 baseline=1172 */
53 if (l <= 191) { *bs = 8; *gs = 5; return 1; }
54 /* l=193: bs=8 gs=6 bench=916 baseline=1176 */
55 /* l=197: bs=8 gs=6 bench=934 baseline=1202 */
56 /* l=199: bs=8 gs=6 bench=946 baseline=1216 */
57 /* l=211: bs=8 gs=6 bench=1012 baseline=1288 */
58 /* l=223: bs=8 gs=6 bench=1084 baseline=1364 */
59 if (l <= 223) { *bs = 8; *gs = 6; return 1; }
60 /* l=227: bs=8 gs=7 bench=1073 baseline=1384 */
61 /* l=229: bs=8 gs=7 bench=1085 baseline=1396 */
62 /* l=233: bs=8 gs=7 bench=1109 baseline=1420 */
63 /* l=239: bs=8 gs=7 bench=1145 baseline=1460 */
64 if (l <= 239) { *bs = 8; *gs = 7; return 1; }
65 /* l=241: bs=10 gs=6 bench=1103 baseline=1468 */
66 /* l=251: bs=10 gs=6 bench=1157 baseline=1532 */
67 if (l <= 251) { *bs = 10; *gs = 6; return 1; }
68 /* l=257: bs=8 gs=8 bench=1186 baseline=1560 */
69 /* l=263: bs=8 gs=8 bench=1216 baseline=1600 */
70 /* l=269: bs=8 gs=8 bench=1252 baseline=1636 */
71 /* l=271: bs=8 gs=8 bench=1264 baseline=1650 */
72 /* l=277: bs=8 gs=8 bench=1294 baseline=1684 */
73 if (l <= 277) { *bs = 8; *gs = 8; return 1; }
74 /* l=281: bs=10 gs=7 bench=1260 baseline=1708 */
75 /* l=283: bs=10 gs=7 bench=1266 baseline=1722 */
76 if (l <= 283) { *bs = 10; *gs = 7; return 1; }
77 /* l=293: bs=12 gs=6 bench=1311 baseline=1780 */
78 /* l=307: bs=12 gs=6 bench=1395 baseline=1866 */
79 /* l=311: bs=12 gs=6 bench=1419 baseline=1892 */
80 /* l=313: bs=12 gs=6 bench=1425 baseline=1902 */
81 /* l=317: bs=12 gs=6 bench=1449 baseline=1928 */
82 if (l <= 317) { *bs = 12; *gs = 6; return 1; }
83 /* l=331: bs=10 gs=8 bench=1427 baseline=2010 */
84 if (l <= 331) { *bs = 10; *gs = 8; return 1; }
85 /* l=337: bs=14 gs=6 bench=1434 baseline=2044 */
86 /* l=347: bs=14 gs=6 bench=1488 baseline=2108 */
87 /* l=349: bs=14 gs=6 bench=1500 baseline=2120 */
88 /* l=353: bs=14 gs=6 bench=1524 baseline=2140 */
89 /* l=359: bs=14 gs=6 bench=1560 baseline=2180 */
90 if (l <= 359) { *bs = 14; *gs = 6; return 1; }
91 /* l=367: bs=10 gs=9 bench=1556 baseline=2230 */
92 /* l=373: bs=10 gs=9 bench=1592 baseline=2264 */
93 /* l=379: bs=10 gs=9 bench=1628 baseline=2302 */
94 /* l=383: bs=10 gs=9 bench=1646 baseline=2328 */
95 if (l <= 383) { *bs = 10; *gs = 9; return 1; }
96 /* l=389: bs=12 gs=8 bench=1577 baseline=2356 */
97 if (l <= 389) { *bs = 12; *gs = 8; return 1; }
98 /* l=397: bs=14 gs=7 bench=1569 baseline=2406 */
99 /* l=401: bs=14 gs=7 bench=1593 baseline=2428 */
100 /* l=409: bs=14 gs=7 bench=1641 baseline=2478 */
101 /* l=419: bs=14 gs=7 bench=1701 baseline=2538 */
102 /* l=421: bs=14 gs=7 bench=1707 baseline=2550 */
103 /* l=431: bs=14 gs=7 bench=1767 baseline=2614 */
104 if (l <= 431) { *bs = 14; *gs = 7; return 1; }
105 /* l=433: bs=12 gs=9 bench=1712 baseline=2622 */
106 /* l=439: bs=12 gs=9 bench=1742 baseline=2662 */
107 /* l=443: bs=12 gs=9 bench=1766 baseline=2686 */
108 if (l <= 443) { *bs = 12; *gs = 9; return 1; }
109 /* l=449: bs=14 gs=8 bench=1670 baseline=2716 */
110 /* l=457: bs=14 gs=8 bench=1712 baseline=2766 */
111 /* l=461: bs=14 gs=8 bench=1736 baseline=2792 */
112 /* l=463: bs=14 gs=8 bench=1748 baseline=2806 */
113 /* l=467: bs=14 gs=8 bench=1772 baseline=2828 */
114 /* l=479: bs=14 gs=8 bench=1838 baseline=2904 */
115 if (l <= 479) { *bs = 14; *gs = 8; return 1; }
116 /* l=487: bs=12 gs=10 bench=1874 baseline=2950 */
117 /* l=491: bs=12 gs=10 bench=1898 baseline=2974 */
118 /* l=499: bs=12 gs=10 bench=1946 baseline=3022 */
119 /* l=503: bs=12 gs=10 bench=1970 baseline=3048 */
120 if (l <= 503) { *bs = 12; *gs = 10; return 1; }
121 /* l=509: bs=14 gs=9 bench=1844 baseline=3084 */
122 /* l=521: bs=14 gs=9 bench=1916 baseline=3148 */
123 /* l=523: bs=14 gs=9 bench=1928 baseline=3162 */
124 /* l=541: bs=14 gs=9 bench=2030 baseline=3272 */
125 /* l=547: bs=14 gs=9 bench=2066 baseline=3306 */
126 /* l=557: bs=14 gs=9 bench=2126 baseline=3368 */
127 if (l <= 557) { *bs = 14; *gs = 9; return 1; }
128 /* l=563: bs=14 gs=10 bench=1964 baseline=3404 */
129 /* l=569: bs=14 gs=10 bench=2000 baseline=3440 */
130 /* l=571: bs=14 gs=10 bench=2012 baseline=3454 */
131 /* l=577: bs=14 gs=10 bench=2048 baseline=3484 */
132 /* l=587: bs=14 gs=10 bench=2108 baseline=3548 */
133 /* l=593: bs=14 gs=10 bench=2138 baseline=3582 */
134 /* l=599: bs=14 gs=10 bench=2174 baseline=3622 */
135 /* l=601: bs=14 gs=10 bench=2186 baseline=3632 */
136 /* l=607: bs=14 gs=10 bench=2222 baseline=3672 */
137 /* l=613: bs=14 gs=10 bench=2258 baseline=3704 */
138 if (l <= 613) { *bs = 14; *gs = 10; return 1; }
139 /* l=617: bs=14 gs=11 bench=2112 baseline=3728 */
140 /* l=619: bs=14 gs=11 bench=2118 baseline=3742 */
141 /* l=631: bs=14 gs=11 bench=2190 baseline=3816 */
142 if (l <= 631) { *bs = 14; *gs = 11; return 1; }
143 /* l=641: bs=16 gs=10 bench=2200 baseline=3868 */
144 /* l=643: bs=16 gs=10 bench=2206 baseline=3882 */
145 /* l=647: bs=16 gs=10 bench=2230 baseline=3908 */
146 /* l=653: bs=16 gs=10 bench=2266 baseline=3944 */
147 /* l=659: bs=16 gs=10 bench=2302 baseline=3980 */
148 /* l=661: bs=16 gs=10 bench=2314 baseline=3992 */
149 if (l <= 661) { *bs = 16; *gs = 10; return 1; }
150 /* l=673: bs=14 gs=12 bench=2233 baseline=4062 */
151 /* l=677: bs=14 gs=12 bench=2251 baseline=4088 */
152 /* l=683: bs=14 gs=12 bench=2287 baseline=4126 */
153 /* l=691: bs=14 gs=12 bench=2335 baseline=4174 */
154 /* l=701: bs=14 gs=12 bench=2389 baseline=4236 */
155 if (l <= 701) { *bs = 14; *gs = 12; return 1; }
156 /* l=709: bs=16 gs=11 bench=2374 baseline=4280 */
157 /* l=719: bs=16 gs=11 bench=2434 baseline=4344 */
158 /* l=727: bs=16 gs=11 bench=2482 baseline=4392 */
159 if (l <= 727) { *bs = 16; *gs = 11; return 1; }
160 /* l=733: bs=14 gs=13 bench=2463 baseline=4428 */
161 /* l=739: bs=14 gs=13 bench=2499 baseline=4462 */
162 /* l=743: bs=14 gs=13 bench=2523 baseline=4488 */
163 /* l=751: bs=14 gs=13 bench=2571 baseline=4538 */
164 /* l=757: bs=14 gs=13 bench=2601 baseline=4572 */
165 /* l=761: bs=14 gs=13 bench=2625 baseline=4596 */
166 if (l <= 761) { *bs = 14; *gs = 13; return 1; }
167 /* l=769: bs=16 gs=12 bench=2479 baseline=4636 */
168 /* l=773: bs=16 gs=12 bench=2497 baseline=4662 */
169 /* l=787: bs=16 gs=12 bench=2581 baseline=4748 */
170 /* l=797: bs=16 gs=12 bench=2641 baseline=4810 */
171 /* l=809: bs=16 gs=12 bench=2707 baseline=4880 */
172 /* l=811: bs=16 gs=12 bench=2719 baseline=4894 */
173 /* l=821: bs=16 gs=12 bench=2779 baseline=4954 */
174 /* l=823: bs=16 gs=12 bench=2791 baseline=4968 */
175 /* l=827: bs=16 gs=12 bench=2815 baseline=4992 */
176 /* l=829: bs=16 gs=12 bench=2827 baseline=5004 */
177 if (l <= 829) { *bs = 16; *gs = 12; return 1; }
178 /* l=839: bs=16 gs=13 bench=2722 baseline=5062 */
179 /* l=853: bs=16 gs=13 bench=2806 baseline=5146 */
180 /* l=857: bs=16 gs=13 bench=2830 baseline=5170 */
181 /* l=859: bs=16 gs=13 bench=2842 baseline=5184 */
182 /* l=863: bs=16 gs=13 bench=2866 baseline=5210 */
183 if (l <= 863) { *bs = 16; *gs = 13; return 1; }
184 /* l=877: bs=18 gs=12 bench=2875 baseline=5292 */
185 /* l=881: bs=18 gs=12 bench=2899 baseline=5314 */
186 /* l=883: bs=18 gs=12 bench=2911 baseline=5328 */
187 /* l=887: bs=18 gs=12 bench=2935 baseline=5354 */
188 if (l <= 887) { *bs = 18; *gs = 12; return 1; }
189 /* l=907: bs=16 gs=14 bench=2919 baseline=5470 */
190 /* l=911: bs=16 gs=14 bench=2943 baseline=5496 */
191 /* l=919: bs=16 gs=14 bench=2991 baseline=5544 */
192 /* l=929: bs=16 gs=14 bench=3045 baseline=5600 */
193 if (l <= 929) { *bs = 16; *gs = 14; return 1; }
194 /* l=937: bs=18 gs=13 bench=3022 baseline=5650 */
195 /* l=941: bs=18 gs=13 bench=3040 baseline=5676 */
196 /* l=947: bs=18 gs=13 bench=3076 baseline=5712 */
197 /* l=953: bs=18 gs=13 bench=3112 baseline=5748 */
198 if (l <= 953) { *bs = 18; *gs = 13; return 1; }
199 /* l=967: bs=20 gs=12 bench=3133 baseline=5832 */
200 /* l=971: bs=20 gs=12 bench=3157 baseline=5856 */
201 /* l=977: bs=20 gs=12 bench=3193 baseline=5890 */
202 /* l=983: bs=20 gs=12 bench=3229 baseline=5930 */
203 /* l=991: bs=20 gs=12 bench=3277 baseline=5980 */
204 /* l=997: bs=20 gs=12 bench=3313 baseline=6012 */
205 if (l <= 997) { *bs = 20; *gs = 12; return 1; }
206 /* l=1009: bs=18 gs=14 bench=3195 baseline=6084 */
207 /* l=1013: bs=18 gs=14 bench=3213 baseline=6110 */
208 /* l=1019: bs=18 gs=14 bench=3249 baseline=6148 */
209 /* l=1021: bs=18 gs=14 bench=3261 baseline=6160 */
210 if (l <= 1021) { *bs = 18; *gs = 14; return 1; }
211 /* l=1031: bs=16 gs=16 bench=3295 baseline=6212 */
212 /* l=1033: bs=16 gs=16 bench=3307 baseline=6222 */
213 /* l=1039: bs=16 gs=16 bench=3343 baseline=6262 */
214 if (l <= 1039) { *bs = 16; *gs = 16; return 1; }
215 /* l=1049: bs=20 gs=13 bench=3364 baseline=6320 */
216 /* l=1051: bs=20 gs=13 bench=3376 baseline=6334 */
217 if (l <= 1051) { *bs = 20; *gs = 13; return 1; }
218 /* l=1061: bs=22 gs=12 bench=3350 baseline=6392 */
219 /* l=1063: bs=22 gs=12 bench=3362 baseline=6406 */
220 /* l=1069: bs=22 gs=12 bench=3398 baseline=6442 */
221 if (l <= 1069) { *bs = 22; *gs = 12; return 1; }
222 /* l=1087: bs=18 gs=15 bench=3486 baseline=6554 */
223 /* l=1091: bs=18 gs=15 bench=3510 baseline=6572 */
224 /* l=1093: bs=18 gs=15 bench=3522 baseline=6584 */
225 /* l=1097: bs=18 gs=15 bench=3546 baseline=6608 */
226 /* l=1103: bs=18 gs=15 bench=3582 baseline=6648 */
227 /* l=1109: bs=18 gs=15 bench=3618 baseline=6682 */
228 /* l=1117: bs=18 gs=15 bench=3660 baseline=6732 */
229 if (l <= 1117) { *bs = 18; *gs = 15; return 1; }
230 /* l=1123: bs=20 gs=14 bench=3501 baseline=6766 */
231 /* l=1129: bs=20 gs=14 bench=3537 baseline=6802 */
232 if (l <= 1129) { *bs = 20; *gs = 14; return 1; }
233 /* l=1151: bs=22 gs=13 bench=3577 baseline=6940 */
234 /* l=1153: bs=22 gs=13 bench=3589 baseline=6942 */
235 if (l <= 1153) { *bs = 22; *gs = 13; return 1; }
236 /* l=1163: bs=18 gs=16 bench=3649 baseline=7006 */
237 /* l=1171: bs=18 gs=16 bench=3697 baseline=7054 */
238 /* l=1181: bs=18 gs=16 bench=3757 baseline=7116 */
239 /* l=1187: bs=18 gs=16 bench=3793 baseline=7150 */
240 /* l=1193: bs=18 gs=16 bench=3823 baseline=7186 */
241 if (l <= 1193) { *bs = 18; *gs = 16; return 1; }
242 /* l=1201: bs=20 gs=15 bench=3750 baseline=7234 */
243 /* l=1213: bs=20 gs=15 bench=3816 baseline=7310 */
244 /* l=1217: bs=20 gs=15 bench=3840 baseline=7328 */
245 /* l=1223: bs=20 gs=15 bench=3876 baseline=7368 */
246 if (l <= 1223) { *bs = 20; *gs = 15; return 1; }
247 /* l=1229: bs=18 gs=17 bench=3865 baseline=7404 */
248 /* l=1231: bs=18 gs=17 bench=3877 baseline=7418 */
249 if (l <= 1231) { *bs = 18; *gs = 17; return 1; }
250 /* l=1237: bs=22 gs=14 bench=3738 baseline=7452 */
251 /* l=1249: bs=22 gs=14 bench=3810 baseline=7522 */
252 /* l=1259: bs=22 gs=14 bench=3870 baseline=7586 */
253 /* l=1277: bs=22 gs=14 bench=3972 baseline=7696 */
254 /* l=1279: bs=22 gs=14 bench=3984 baseline=7710 */
255 if (l <= 1279) { *bs = 22; *gs = 14; return 1; }
256 /* l=1283: bs=20 gs=16 bench=3895 baseline=7724 */
257 /* l=1289: bs=20 gs=16 bench=3931 baseline=7760 */
258 /* l=1291: bs=20 gs=16 bench=3943 baseline=7774 */
259 /* l=1297: bs=20 gs=16 bench=3979 baseline=7808 */
260 /* l=1301: bs=20 gs=16 bench=4003 baseline=7834 */
261 /* l=1303: bs=20 gs=16 bench=4015 baseline=7848 */
262 /* l=1307: bs=20 gs=16 bench=4039 baseline=7872 */
263 /* l=1319: bs=20 gs=16 bench=4111 baseline=7944 */
264 if (l <= 1319) { *bs = 20; *gs = 16; return 1; }
265 /* l=1321: bs=22 gs=15 bench=3975 baseline=7954 */
266 /* l=1327: bs=22 gs=15 bench=4005 baseline=7994 */
267 if (l <= 1327) { *bs = 22; *gs = 15; return 1; }
268 /* l=1367: bs=20 gs=17 bench=4171 baseline=8234 */
269 /* l=1373: bs=20 gs=17 bench=4207 baseline=8270 */
270 /* l=1381: bs=20 gs=17 bench=4255 baseline=8316 */
271 /* l=1399: bs=20 gs=17 bench=4363 baseline=8428 */
272 if (l <= 1399) { *bs = 20; *gs = 17; return 1; }
273 /* l=1409: bs=22 gs=16 bench=4114 baseline=8480 */
274 /* l=1423: bs=22 gs=16 bench=4192 baseline=8570 */
275 /* l=1427: bs=22 gs=16 bench=4216 baseline=8592 */
276 /* l=1429: bs=22 gs=16 bench=4228 baseline=8604 */
277 /* l=1433: bs=22 gs=16 bench=4252 baseline=8628 */
278 /* l=1439: bs=22 gs=16 bench=4288 baseline=8668 */
279 if (l <= 1439) { *bs = 22; *gs = 16; return 1; }
280 return 0;
281}
#define steps_guess
Definition steps.h:9