Let us walk on the 3-isogeny graph
Loading...
Searching...
No Matches
fp_sqrt2047m6l194.c
Go to the documentation of this file.
1
// DO NOT EDIT! generated by ./autogen
2
3
#if defined AVX2
4
#include "avx2/fp-avx2.h"
5
#elif defined KARATSUBA
6
#include "
karatsuba/fp-karatsuba.h
"
7
#else
8
#include "mulx/fp.h"
9
#endif
10
11
// 260 mults, 2040 squarings
12
bool
fp_issquare
(
fp
x)
13
{
14
fp
origx;
15
fp_copy
(origx,x);
16
fp
r0;
17
fp_copy
(r0,x);
18
fp
r1;
19
fp_sqr
(r1,r0);
20
fp
r2;
21
fp_mul
(r2,r0,r1);
22
fp_mul
(r2,r2,r1);
23
fp
r3;
24
fp_mul
(r3,r1,r2);
25
fp
r4;
26
fp_mul
(r4,r1,r3);
27
fp_mul
(r4,r4,r1);
28
fp
r5;
29
fp_mul
(r5,r1,r4);
30
fp
r6;
31
fp_mul
(r6,r1,r5);
32
fp
r7;
33
fp_mul
(r7,r1,r6);
34
fp
r8;
35
fp_mul
(r8,r1,r7);
36
fp
r9;
37
fp_mul
(r9,r1,r8);
38
fp
r10;
39
fp_mul
(r10,r1,r9);
40
fp
r11;
41
fp_mul
(r11,r1,r10);
42
fp
r12;
43
fp_mul
(r12,r1,r11);
44
fp
r13;
45
fp_mul
(r13,r1,r12);
46
fp
r14;
47
fp_mul
(r14,r1,r13);
48
fp
r15;
49
fp_mul
(r15,r1,r14);
50
fp
r16;
51
fp_mul
(r16,r1,r15);
52
fp
r17;
53
fp_mul
(r17,r1,r16);
54
fp
r18;
55
fp_mul
(r18,r1,r17);
56
fp
r19;
57
fp_mul
(r19,r1,r18);
58
fp
r20;
59
fp_mul
(r20,r1,r19);
60
fp
r21;
61
fp_mul
(r21,r1,r20);
62
fp
r22;
63
fp_mul
(r22,r1,r21);
64
fp
r23;
65
fp_mul
(r23,r1,r22);
66
fp
r24;
67
fp_mul
(r24,r1,r23);
68
fp
r25;
69
fp_mul
(r25,r1,r24);
70
fp
r26;
71
fp_mul
(r26,r1,r25);
72
fp
r27;
73
fp_mul
(r27,r1,r26);
74
fp
r28;
75
fp_mul
(r28,r1,r27);
76
fp
r29;
77
fp_mul
(r29,r1,r28);
78
fp
r30;
79
fp_mul
(r30,r1,r29);
80
fp
r31;
81
fp_mul
(r31,r1,r30);
82
fp
r32;
83
fp_mul
(r32,r1,r31);
84
fp
r33;
85
fp_mul
(r33,r1,r32);
86
fp
r34;
87
fp_mul
(r34,r1,r33);
88
fp
r35;
89
fp_mul
(r35,r1,r34);
90
fp_mul
(r1,r1,r35);
91
fp
r36;
92
fp_sqr
(r36,r21);
93
fp_mul
(r36,r36,r22);
94
fp_sq1_rep(r36,9);
95
fp_mul
(r36,r36,r11);
96
fp_sq1_rep(r36,6);
97
fp_mul
(r36,r36,r10);
98
fp_sq1_rep(r36,11);
99
fp_mul
(r36,r36,r26);
100
fp_sq1_rep(r36,7);
101
fp_mul
(r36,r36,r33);
102
fp_sq1_rep(r36,6);
103
fp_mul
(r36,r36,r5);
104
fp_sq1_rep(r36,7);
105
fp_mul
(r36,r36,r35);
106
fp_sq1_rep(r36,6);
107
fp_mul
(r36,r36,r16);
108
fp_sq1_rep(r36,16);
109
fp_mul
(r36,r36,r7);
110
fp_sq1_rep(r36,9);
111
fp_mul
(r36,r36,r28);
112
fp_sq1_rep(r36,6);
113
fp_mul
(r36,r36,r25);
114
fp_sq1_rep(r36,9);
115
fp_mul
(r36,r36,r32);
116
fp_sq1_rep(r36,6);
117
fp_mul
(r36,r36,r29);
118
fp_sq1_rep(r36,6);
119
fp_mul
(r36,r36,r24);
120
fp_sq1_rep(r36,7);
121
fp_mul
(r36,r36,r28);
122
fp_sq1_rep(r36,6);
123
fp_mul
(r36,r36,r17);
124
fp_sq1_rep(r36,8);
125
fp_mul
(r36,r36,r26);
126
fp_sq1_rep(r36,7);
127
fp_mul
(r36,r36,r17);
128
fp_sq1_rep(r36,7);
129
fp_mul
(r36,r36,r8);
130
fp_sq1_rep(r36,6);
131
fp_mul
(r36,r36,r28);
132
fp_sq1_rep(r36,9);
133
fp_mul
(r36,r36,r2);
134
fp_sq1_rep(r36,10);
135
fp_mul
(r36,r36,r5);
136
fp_sq1_rep(r36,11);
137
fp_mul
(r36,r36,r18);
138
fp_sq1_rep(r36,7);
139
fp_mul
(r36,r36,r18);
140
fp_sq1_rep(r36,9);
141
fp_mul
(r36,r36,r29);
142
fp_sq1_rep(r36,8);
143
fp_mul
(r36,r36,r32);
144
fp_sq1_rep(r36,6);
145
fp_mul
(r36,r36,r14);
146
fp_sq1_rep(r36,12);
147
fp_mul
(r36,r36,r24);
148
fp_sq1_rep(r36,9);
149
fp_mul
(r36,r36,r1);
150
fp_sq1_rep(r36,7);
151
fp_mul
(r36,r36,r2);
152
fp_sq1_rep(r36,8);
153
fp_mul
(r36,r36,r14);
154
fp_sq1_rep(r36,7);
155
fp_mul
(r36,r36,r7);
156
fp_sq1_rep(r36,7);
157
fp_mul
(r36,r36,r26);
158
fp_sq1_rep(r36,7);
159
fp_mul
(r36,r36,r9);
160
fp_sq1_rep(r36,7);
161
fp_mul
(r3,r3,r36);
162
fp_sq1_rep(r3,10);
163
fp_mul
(r3,r3,r1);
164
fp_sq1_rep(r3,8);
165
fp_mul
(r3,r3,r0);
166
fp_sq1_rep(r3,8);
167
fp_mul
(r3,r3,r12);
168
fp_sq1_rep(r3,7);
169
fp_mul
(r3,r3,r9);
170
fp_sq1_rep(r3,7);
171
fp_mul
(r3,r3,r11);
172
fp_sq1_rep(r3,7);
173
fp_mul
(r3,r3,r10);
174
fp_sq1_rep(r3,6);
175
fp_mul
(r3,r3,r24);
176
fp_sq1_rep(r3,9);
177
fp_mul
(r3,r3,r33);
178
fp_sq1_rep(r3,6);
179
fp_mul
(r3,r3,r15);
180
fp_sq1_rep(r3,6);
181
fp_mul
(r3,r3,r12);
182
fp_sq1_rep(r3,6);
183
fp_mul
(r3,r3,r29);
184
fp_sq1_rep(r3,10);
185
fp_mul
(r3,r3,r19);
186
fp_sq1_rep(r3,8);
187
fp_mul
(r3,r3,r10);
188
fp_sq1_rep(r3,6);
189
fp_mul
(r3,r3,r20);
190
fp_sq1_rep(r3,9);
191
fp_mul
(r3,r3,r27);
192
fp_sq1_rep(r3,6);
193
fp_mul
(r3,r3,r23);
194
fp_sq1_rep(r3,7);
195
fp_mul
(r3,r3,r5);
196
fp_sq1_rep(r3,8);
197
fp_mul
(r3,r3,r30);
198
fp_sq1_rep(r3,9);
199
fp_mul
(r3,r3,r35);
200
fp_sq1_rep(r3,8);
201
fp_mul
(r3,r3,r32);
202
fp_sq1_rep(r3,7);
203
fp_mul
(r3,r3,r29);
204
fp_sq1_rep(r3,13);
205
fp_mul
(r3,r3,r23);
206
fp_sq1_rep(r3,6);
207
fp_mul
(r3,r3,r24);
208
fp_sq1_rep(r3,7);
209
fp_mul
(r3,r3,r35);
210
fp_sq1_rep(r3,7);
211
fp_mul
(r3,r3,r23);
212
fp_sq1_rep(r3,6);
213
fp_mul
(r3,r3,r11);
214
fp_sq1_rep(r3,9);
215
fp_mul
(r3,r3,r5);
216
fp_sq1_rep(r3,7);
217
fp_mul
(r3,r3,r34);
218
fp_sq1_rep(r3,8);
219
fp_mul
(r3,r3,r15);
220
fp_sq1_rep(r3,11);
221
fp_mul
(r3,r3,r13);
222
fp_sq1_rep(r3,6);
223
fp_mul
(r3,r3,r15);
224
fp_sq1_rep(r3,7);
225
fp_mul
(r3,r3,r22);
226
fp_sq1_rep(r3,6);
227
fp_mul
(r3,r3,r10);
228
fp_sq1_rep(r3,7);
229
fp_mul
(r3,r3,r25);
230
fp_sq1_rep(r3,6);
231
fp_mul
(r3,r3,r7);
232
fp_sq1_rep(r3,10);
233
fp_mul
(r3,r3,r22);
234
fp_sq1_rep(r3,6);
235
fp_mul
(r3,r3,r15);
236
fp_sq1_rep(r3,8);
237
fp_mul
(r3,r3,r26);
238
fp_sq1_rep(r3,6);
239
fp_mul
(r3,r3,r10);
240
fp_sq1_rep(r3,6);
241
fp_mul
(r3,r3,r5);
242
fp_sq1_rep(r3,10);
243
fp_mul
(r3,r3,r24);
244
fp_sq1_rep(r3,7);
245
fp_mul
(r3,r3,r5);
246
fp_sq1_rep(r3,6);
247
fp_mul
(r3,r3,r22);
248
fp_sq1_rep(r3,7);
249
fp_mul
(r3,r3,r11);
250
fp_sq1_rep(r3,7);
251
fp_mul
(r3,r3,r28);
252
fp_sq1_rep(r3,8);
253
fp_mul
(r3,r3,r32);
254
fp_sq1_rep(r3,6);
255
fp_mul
(r3,r3,r16);
256
fp_sq1_rep(r3,6);
257
fp_mul
(r3,r3,r23);
258
fp_sq1_rep(r3,7);
259
fp_mul
(r3,r3,r25);
260
fp_sq1_rep(r3,7);
261
fp_mul
(r3,r3,r27);
262
fp_sq1_rep(r3,8);
263
fp_mul
(r3,r3,r34);
264
fp_sq1_rep(r3,8);
265
fp_mul
(r3,r3,r27);
266
fp_sq1_rep(r3,7);
267
fp_mul
(r3,r3,r25);
268
fp_sq1_rep(r3,7);
269
fp_mul
(r3,r3,r20);
270
fp_sq1_rep(r3,9);
271
fp_mul
(r3,r3,r25);
272
fp_sq1_rep(r3,6);
273
fp_mul
(r3,r3,r24);
274
fp_sq1_rep(r3,6);
275
fp_mul
(r3,r3,r28);
276
fp_sq1_rep(r3,7);
277
fp_mul
(r3,r3,r9);
278
fp_sq1_rep(r3,6);
279
fp_mul
(r3,r3,r21);
280
fp_sq1_rep(r3,7);
281
fp_mul
(r3,r3,r5);
282
fp_sq1_rep(r3,9);
283
fp_mul
(r3,r3,r17);
284
fp_sq1_rep(r3,8);
285
fp_mul
(r3,r3,r28);
286
fp_sq1_rep(r3,6);
287
fp_mul
(r3,r3,r11);
288
fp_sq1_rep(r3,7);
289
fp_mul
(r3,r3,r5);
290
fp_sq1_rep(r3,6);
291
fp_mul
(r3,r3,r16);
292
fp_sq1_rep(r3,10);
293
fp_mul
(r3,r3,r2);
294
fp_sq1_rep(r3,6);
295
fp_mul
(r3,r3,r8);
296
fp_sq1_rep(r3,6);
297
fp_mul
(r3,r3,r17);
298
fp_sq1_rep(r3,6);
299
fp_mul
(r3,r3,r23);
300
fp_sq1_rep(r3,6);
301
fp_mul
(r3,r3,r27);
302
fp_sq1_rep(r3,6);
303
fp_mul
(r3,r3,r21);
304
fp_sq1_rep(r3,6);
305
fp_mul
(r3,r3,r28);
306
fp_sq1_rep(r3,6);
307
fp_mul
(r3,r3,r15);
308
fp_sq1_rep(r3,6);
309
fp_mul
(r3,r3,r17);
310
fp_sq1_rep(r3,6);
311
fp_mul
(r3,r3,r23);
312
fp_sq1_rep(r3,10);
313
fp_mul
(r3,r3,r2);
314
fp_sq1_rep(r3,8);
315
fp_mul
(r3,r3,r13);
316
fp_sq1_rep(r3,7);
317
fp_mul
(r3,r3,r28);
318
fp_sq1_rep(r3,6);
319
fp_mul
(r3,r3,r24);
320
fp_sq1_rep(r3,6);
321
fp_mul
(r3,r3,r6);
322
fp_sq1_rep(r3,6);
323
fp_mul
(r3,r3,r18);
324
fp_sq1_rep(r3,6);
325
fp_mul
(r3,r3,r10);
326
fp_sq1_rep(r3,8);
327
fp_mul
(r3,r3,r28);
328
fp_sq1_rep(r3,6);
329
fp_mul
(r3,r3,r27);
330
fp_sq1_rep(r3,6);
331
fp_mul
(r3,r3,r29);
332
fp_sq1_rep(r3,7);
333
fp_mul
(r3,r3,r2);
334
fp_sq1_rep(r3,12);
335
fp_mul
(r3,r3,r22);
336
fp_sq1_rep(r3,7);
337
fp_mul
(r3,r3,r5);
338
fp_sq1_rep(r3,7);
339
fp_mul
(r3,r3,r33);
340
fp_sq1_rep(r3,6);
341
fp_mul
(r3,r3,r23);
342
fp_sq1_rep(r3,6);
343
fp_mul
(r3,r3,r8);
344
fp_sq1_rep(r3,6);
345
fp_mul
(r3,r3,r17);
346
fp_sq1_rep(r3,6);
347
fp_mul
(r3,r3,r21);
348
fp_sq1_rep(r3,6);
349
fp_mul
(r3,r3,r6);
350
fp_sq1_rep(r3,6);
351
fp_mul
(r3,r3,r21);
352
fp_sq1_rep(r3,12);
353
fp_mul
(r3,r3,r32);
354
fp_sq1_rep(r3,11);
355
fp_mul
(r3,r3,r4);
356
fp_sq1_rep(r3,6);
357
fp_mul
(r3,r3,r12);
358
fp_sq1_rep(r3,6);
359
fp_mul
(r3,r3,r23);
360
fp_sq1_rep(r3,12);
361
fp_mul
(r3,r3,r2);
362
fp_sq1_rep(r3,6);
363
fp_mul
(r3,r3,r19);
364
fp_sq1_rep(r3,7);
365
fp_mul
(r3,r3,r0);
366
fp_sq1_rep(r3,8);
367
fp_mul
(r3,r3,r34);
368
fp_sq1_rep(r3,7);
369
fp_mul
(r3,r3,r35);
370
fp_sq1_rep(r3,6);
371
fp_mul
(r3,r3,r28);
372
fp_sq1_rep(r3,6);
373
fp_mul
(r3,r3,r23);
374
fp_sq1_rep(r3,7);
375
fp_mul
(r3,r3,r32);
376
fp_sq1_rep(r3,7);
377
fp_mul
(r3,r3,r15);
378
fp_sq1_rep(r3,6);
379
fp_mul
(r3,r3,r21);
380
fp_sq1_rep(r3,7);
381
fp_mul
(r3,r3,r1);
382
fp_sq1_rep(r3,6);
383
fp_mul
(r3,r3,r14);
384
fp_sq1_rep(r3,8);
385
fp_mul
(r3,r3,r9);
386
fp_sq1_rep(r3,7);
387
fp_mul
(r3,r3,r23);
388
fp_sq1_rep(r3,9);
389
fp_mul
(r3,r3,r21);
390
fp_sq1_rep(r3,6);
391
fp_mul
(r3,r3,r7);
392
fp_sq1_rep(r3,6);
393
fp_mul
(r3,r3,r7);
394
fp_sq1_rep(r3,6);
395
fp_mul
(r3,r3,r14);
396
fp_sq1_rep(r3,8);
397
fp_mul
(r3,r3,r4);
398
fp_sq1_rep(r3,9);
399
fp_mul
(r3,r3,r15);
400
fp_sq1_rep(r3,7);
401
fp_mul
(r3,r3,r22);
402
fp_sq1_rep(r3,8);
403
fp_mul
(r3,r3,r16);
404
fp_sq1_rep(r3,6);
405
fp_mul
(r3,r3,r25);
406
fp_sq1_rep(r3,8);
407
fp_mul
(r3,r3,r27);
408
fp_sq1_rep(r3,8);
409
fp_mul
(r3,r3,r7);
410
fp_sq1_rep(r3,7);
411
fp_mul
(r3,r3,r31);
412
fp_sq1_rep(r3,7);
413
fp_mul
(r3,r3,r18);
414
fp_sq1_rep(r3,6);
415
fp_mul
(r3,r3,r21);
416
fp_sq1_rep(r3,11);
417
fp_mul
(r3,r3,r34);
418
fp_sq1_rep(r3,8);
419
fp_mul
(r3,r3,r10);
420
fp_sq1_rep(r3,7);
421
fp_mul
(r3,r3,r24);
422
fp_sq1_rep(r3,6);
423
fp_mul
(r3,r3,r28);
424
fp_sq1_rep(r3,6);
425
fp_mul
(r3,r3,r24);
426
fp_sq1_rep(r3,7);
427
fp_mul
(r3,r3,r33);
428
fp_sq1_rep(r3,6);
429
fp_mul
(r3,r3,r30);
430
fp_sq1_rep(r3,9);
431
fp_mul
(r3,r3,r29);
432
fp_sq1_rep(r3,7);
433
fp_mul
(r3,r3,r11);
434
fp_sq1_rep(r3,7);
435
fp_mul
(r3,r3,r33);
436
fp_sq1_rep(r3,8);
437
fp_mul
(r3,r3,r28);
438
fp_sq1_rep(r3,6);
439
fp_mul
(r3,r3,r26);
440
fp_sq1_rep(r3,8);
441
fp_mul
(r3,r3,r22);
442
fp_sq1_rep(r3,7);
443
fp_mul
(r3,r3,r30);
444
fp_sq1_rep(r3,6);
445
fp_mul
(r3,r3,r7);
446
fp_sq1_rep(r3,6);
447
fp_mul
(r3,r3,r12);
448
fp_sq1_rep(r3,6);
449
fp_mul
(r3,r3,r9);
450
fp_sq1_rep(r3,8);
451
fp_mul
(r3,r3,r34);
452
fp_sq1_rep(r3,7);
453
fp_mul
(r3,r3,r13);
454
fp_sq1_rep(r3,9);
455
fp_mul
(r1,r1,r3);
456
fp_sq1_rep(r1,6);
457
fp_mul
(r1,r1,r20);
458
fp_sq1_rep(r1,9);
459
fp_mul
(r1,r1,r33);
460
fp_sq1_rep(r1,6);
461
fp_mul
(r1,r1,r24);
462
fp_sq1_rep(r1,6);
463
fp_mul
(r1,r1,r15);
464
fp_sq1_rep(r1,8);
465
fp_mul
(r1,r1,r20);
466
fp_sq1_rep(r1,6);
467
fp_mul
(r1,r1,r24);
468
fp_sq1_rep(r1,12);
469
fp_mul
(r1,r1,r5);
470
fp_sq1_rep(r1,8);
471
fp_mul
(r1,r1,r26);
472
fp_sq1_rep(r1,8);
473
fp_mul
(r1,r1,r12);
474
fp_sq1_rep(r1,7);
475
fp_mul
(r1,r1,r34);
476
fp_sq1_rep(r1,12);
477
fp_mul
(r1,r1,r8);
478
fp_sq1_rep(r1,7);
479
fp_mul
(r1,r1,r28);
480
fp_sq1_rep(r1,7);
481
fp_mul
(r1,r1,r24);
482
fp_sq1_rep(r1,6);
483
fp_mul
(r1,r1,r27);
484
fp_sq1_rep(r1,6);
485
fp_mul
(r1,r1,r21);
486
fp_sq1_rep(r1,12);
487
fp_mul
(r1,r1,r5);
488
fp_sq1_rep(r1,7);
489
fp_mul
(r1,r1,r13);
490
fp_sq1_rep(r1,11);
491
fp_mul
(r1,r1,r22);
492
fp_sq1_rep(r1,6);
493
fp_mul
(r1,r1,r24);
494
fp_sq1_rep(r1,8);
495
fp_mul
(r1,r1,r31);
496
fp_sq1_rep(r1,6);
497
fp_mul
(r1,r1,r27);
498
fp_sq1_rep(r1,11);
499
fp_mul
(r1,r1,r33);
500
fp_sq1_rep(r1,9);
501
fp_mul
(r1,r1,r21);
502
fp_sq1_rep(r1,8);
503
fp_mul
(r1,r1,r17);
504
fp_sq1_rep(r1,7);
505
fp_mul
(r1,r1,r24);
506
fp_sq1_rep(r1,6);
507
fp_mul
(r1,r1,r23);
508
fp_sq1_rep(r1,7);
509
fp_mul
(r1,r1,r31);
510
fp_sq1_rep(r1,8);
511
fp_mul
(r1,r1,r11);
512
fp_sq1_rep(r1,9);
513
fp_mul
(r1,r1,r10);
514
fp_sq1_rep(r1,9);
515
fp_mul
(r1,r1,r31);
516
fp_sq1_rep(r1,7);
517
fp_mul
(r1,r1,r22);
518
fp_sq1_rep(r1,9);
519
fp_mul
(r1,r1,r2);
520
fp_sq1_rep(r1,6);
521
fp_mul
(r1,r1,r28);
522
fp_sq1_rep(r1,6);
523
fp_mul
(r1,r1,r16);
524
fp_sq1_rep(r1,7);
525
fp_mul
(r1,r1,r27);
526
fp_sq1_rep(r1,9);
527
fp_mul
(r1,r1,r7);
528
fp_sq1_rep(r1,7);
529
fp_mul
(r1,r1,r22);
530
fp_sq1_rep(r1,6);
531
fp_mul
(r1,r1,r5);
532
fp_sq1_rep(r1,6);
533
fp_mul
(r1,r1,r29);
534
fp_sq1_rep(r1,15);
535
fp_mul
(r0,r0,r1);
536
fp_sq1_rep(r0,6);
537
fp_mul
(r0,r0,r22);
538
fp_sq1_rep(r0,385);
539
fp_copy
(x,r0);
540
fp
check;
541
fp_sqr
(check,x);
542
return
fp_isequal(check,origx);
543
}
fp_sqr
#define fp_sqr
Definition
fp-gmp.h:73
fp
uint64_t fp[NUMBER_OF_WORDS]
Definition
fp-gmp.h:22
fp_mul
#define fp_mul
Definition
fp-gmp.h:70
fp_issquare
#define fp_issquare
Definition
fp-gmp.h:76
fp_copy
#define fp_copy
Definition
fp-gmp.h:79
fp-karatsuba.h
E:
pqc-engineering-ssec-23
dCTIDH
src
common
fp
fp_sqrt2047m6l194.c
Generated by
1.14.0